Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagejava
titleForwardingAdmin.java
public class ForwardingAdminClientForwardingAdmin implements Admin {
    private final Admin delegate;

    public ForwardingAdminClientForwardingAdmin(final Admin delegate) {
        this.del
egatedelegate = delegate;
    }

    @Override
    public CreateTopicsResult createTopics(Collection<NewTopic> newTopics, CreateTopicsOptions options) {
        return delegate.createTopics(newTopics, options);
    }
    
    // override rest of Admin interface to use delegate...
}

...

  • Add configuration forwarding.admin.class  to MirrorConnectorConfig
  • Update All MM2 connectors to use the forwarding.admin.class
    • Add MirrorConnectorConfig.forwardingAdminClient forwardingAdmin that will load forwarding.admin.class and return ForwardingAdminClientForwardingAdmin
    • All Connectors and Tasks will replace AdminClient.create by MirrorConnectorConfig.forwardingAdminClientforwardingAdmin 
      • MirrorCheckpointTask
      • MirrorCheckpointConnector
      • MirrorSourceConnector
    • Use ForwardingAdmin in MirrorUtils instead of TopicAdmin to create internal compacted topics

...