Eco Schema Catalog REST

RESTful interface for interaction of third-party services and applications with the Schema Catalog

License

License

GroupId

GroupId

com.epam.eco.schemacatalog
ArtifactId

ArtifactId

schema-catalog-rest
Last Version

Last Version

1.2.1
Release Date

Release Date

Type

Type

jar
Description

Description

Eco Schema Catalog REST
RESTful interface for interaction of third-party services and applications with the Schema Catalog

Download schema-catalog-rest

How to add to project

<!-- https://jarcasting.com/artifacts/com.epam.eco.schemacatalog/schema-catalog-rest/ -->
<dependency>
    <groupId>com.epam.eco.schemacatalog</groupId>
    <artifactId>schema-catalog-rest</artifactId>
    <version>1.2.1</version>
</dependency>
// https://jarcasting.com/artifacts/com.epam.eco.schemacatalog/schema-catalog-rest/
implementation 'com.epam.eco.schemacatalog:schema-catalog-rest:1.2.1'
// https://jarcasting.com/artifacts/com.epam.eco.schemacatalog/schema-catalog-rest/
implementation ("com.epam.eco.schemacatalog:schema-catalog-rest:1.2.1")
'com.epam.eco.schemacatalog:schema-catalog-rest:jar:1.2.1'
<dependency org="com.epam.eco.schemacatalog" name="schema-catalog-rest" rev="1.2.1">
  <artifact name="schema-catalog-rest" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.epam.eco.schemacatalog', module='schema-catalog-rest', version='1.2.1')
)
libraryDependencies += "com.epam.eco.schemacatalog" % "schema-catalog-rest" % "1.2.1"
[com.epam.eco.schemacatalog/schema-catalog-rest "1.2.1"]

Dependencies

compile (8)

Group / Artifact Type Version
com.epam.eco.schemacatalog : schema-catalog-fts jar 1.2.1
org.springframework.boot : spring-boot-starter-web jar 2.0.9.RELEASE
org.springframework.boot : spring-boot-starter-log4j2 jar 2.0.9.RELEASE
org.springframework.boot : spring-boot-starter-actuator jar 2.0.9.RELEASE
org.springframework.boot : spring-boot-starter-security jar 2.0.9.RELEASE
org.slf4j : slf4j-api jar 1.7.26
io.springfox : springfox-swagger-ui jar 2.9.2
io.springfox : springfox-swagger2 jar 2.9.2

test (2)

Group / Artifact Type Version
org.springframework.boot : spring-boot-starter-test jar 2.0.9.RELEASE
junit : junit jar 4.12

Project Modules

There are no modules declared in this project.

Eco Schema Catalog

Eco Schema Catalog is a set of services, components, and utilities aimed at providing additional features on top of the Schema Registry.

With Eco Schema Catalog you can use:

  • Web UI to search, view, evolve, and configure schemas.
  • Various services to work with schemas.
  • Utilities, helpers, and other classes that extend and augment the Schema Registry library.

The currently supported version of Confluent is 5.3.1

Project structure

The repository contains the following packages:

  • rest - RESTful interface (backend)
  • ui - web UI (frontend)
  • commons - common models, utilities, extensions, etc
  • store - service to access data in the Schema Registry store, manage metadata, etc
  • fts - service that enables Full-Text Search (FTS) capabilities against the store
  • client - REST client

Building artifacts

To build artifacts, run the following command sequence:

git clone [email protected]:epam/eco-schema-catalog.git
cd eco-schema-catalog
mvn clean package

To skip tests, JavaDocs, and static code analysis, run:

mvn clean package -PpackageOnly

Quick start

The prerequisites for the quick start include:

Installation to connect to an existing Confluent Platform

The installation consists of two services:

  • Schema Catalog REST
  • Schema Catalog UI

Note: Specify suitable values for SCHEMA_REGISTRY_URL and KAFKA_SERVERS_URL.

For Linux, run the following command sequence:

git clone [email protected]:epam/eco-schema-catalog.git
cd eco-schema-catalog
export SCHEMA_REGISTRY_URL="http://schema-registry:8081"
export KAFKA_SERVERS_URL="kafka:9092"
docker-compose -f docker/docker-compose.yaml up

For Windows (Powershell), run the following command sequence:

git clone [email protected]:epam/eco-schema-catalog.git
cd eco-schema-catalog
$env:SCHEMA_REGISTRY_URL="http://schema-registry:8081"
$env:KAFKA_SERVERS_URL="kafka:9092"
docker-compose -f docker/docker-compose.yaml up

To open Schema Catalog web interface, go to http://localhost:8282

To stop all services, run:

docker-compose -f docker/docker-compose.yaml down

All-in-one installation

The installation consists of:

  • Zookeeper
  • Kafka
  • Schema Registry
  • Schema Catalog REST
  • Schema Catalog UI

Run the following command sequence:

git clone [email protected]:epam/eco-schema-catalog.git
cd eco-schema-catalog
docker-compose -f docker/docker-compose-all.yaml up

To open Schema Catalog web interface, go to http://localhost:8282

To stop all services, run:

docker-compose -f docker/docker-compose-all.yaml down

Compatibility matrix

Eco Schema Catalog Confluent Platform Kafka
1.3.x 5.3.x 2.3.x
1.2.x 5.2.x 2.2.x
1.1.x 5.1.x 2.1.x
1.0.x 5.0.x 2.0.x
0.1.x 4.0.x 1.0.x

License

Eco Schema Catalog is licensed under the Apache License, Version 2.0

com.epam.eco.schemacatalog

EPAM Systems

We are creating software platforms and frameworks across the industries and technologies. Visit https://epam.github.io/ for more projects information.

Versions

Version
1.2.1
1.2.0
1.1.0
1.0.0
0.1.1
0.1.0