Class DebeziumResource

java.lang.Object
io.debezium.kcrestextension.DebeziumResource

@Path("/debezium") @Produces("application/json") @Consumes("application/json") public class DebeziumResource extends Object
A JAX-RS Resource class defining endpoints that enable some advanced features over Kafka Connect's REST interface: + report available transformations and their configuration + return if topic auto-creation is available and enabled
  • Field Details

    • BASE_PATH

      public static final String BASE_PATH
      See Also:
    • CONNECTOR_PLUGINS_ENDPOINT

      public static final String CONNECTOR_PLUGINS_ENDPOINT
      See Also:
    • TRANSFORMS_ENDPOINT

      public static final String TRANSFORMS_ENDPOINT
      See Also:
    • PREDICATES_ENDPOINT

      public static final String PREDICATES_ENDPOINT
      See Also:
    • TOPIC_CREATION_ENDPOINT

      public static final String TOPIC_CREATION_ENDPOINT
      See Also:
    • SUPPORTED_CONNECTORS

      public static final Set<String> SUPPORTED_CONNECTORS
    • connectClusterState

      private final org.apache.kafka.connect.health.ConnectClusterState connectClusterState
    • herder

      private org.apache.kafka.connect.runtime.Herder herder
    • isTopicCreationEnabled

      private final Boolean isTopicCreationEnabled
    • transforms

      private List<TransformDefinition> transforms
    • predicates

      private List<PredicateDefinition> predicates
    • availableConnectorPlugins

      private Set<ConnectorDescriptor> availableConnectorPlugins
    • VERSION_PATTERN

      private static final Pattern VERSION_PATTERN
    • TOPIC_CREATION_KAFKA_VERSION

      private static final Runtime.Version TOPIC_CREATION_KAFKA_VERSION
    • context

      @Context private javax.servlet.ServletContext context
  • Constructor Details

    • DebeziumResource

      public DebeziumResource(org.apache.kafka.connect.health.ConnectClusterState connectClusterState, Map<String,?> config)
  • Method Details

    • parseVersion

      public static Runtime.Version parseVersion(String version)
    • addConnectorPlugins

      private static <T> void addConnectorPlugins(Set<ConnectorDescriptor> connectorPlugins, Collection<org.apache.kafka.connect.runtime.isolation.PluginDesc<T>> plugins)
    • initConnectorPlugins

      private void initConnectorPlugins()
    • initTransformsAndPredicates

      private void initTransformsAndPredicates()
    • isTopicCreationEnabled

      private Boolean isTopicCreationEnabled(Map<String,?> config)
    • getHerder

      private org.apache.kafka.connect.runtime.Herder getHerder()
    • availableDebeziumConnectors

      @GET @Path("/connector-plugins") @Produces("application/json") public Set<ConnectorDescriptor> availableDebeziumConnectors()
    • listTransforms

      @GET @Path("/transforms") @Produces("application/json") public List<TransformDefinition> listTransforms()
    • listPredicates

      @GET @Path("/predicates") @Produces("application/json") public List<PredicateDefinition> listPredicates()
    • getTopicCreationEnabled

      @GET @Path("/topic-creation-enabled") @Produces("application/json") public boolean getTopicCreationEnabled()
    • getDebeziumVersion

      @GET @Path("/version") @Produces("application/json") public String getDebeziumVersion()