@Deprecated
    @Override
    public AlterConfigsResult alterConfigs(Map<ConfigResource, Config> configs, AlterConfigsOptions options) {
        AlterConfigsResult alterConfigsResult = super.alterConfigs(configs, options);
        configs.forEach((configResource, newConfigs) -> alterConfigsResult.values().get(configResource).whenComplete((ignored, error) -> {
            if (error == null) {
                if (configResource.type() == ConfigResource.Type.TOPIC) {
                    FakeLocalMetadataStore.updateTopicConfig(configResource.name(), newConfigs);
                }
            } else {
                log.error("Unable to intercept admin client operation", error);
            }
        }));
        return alterConfigsResult;
    }
Customised ForwardingAdmin for testing only.
The class create/alter topics, partitions and ACLs in Kafka then store metadata in {@link FakeLocalMetadataStore}.
connect/mirror/src/test/java/org/apache/kafka/connect/mirror/clients/admin/FakeForwardingAdminWithLocalMetadata.java