@@ -0,0 +1,2031 @@
+/*%0A * Licensed to the Apache Software Foundation (ASF) under one or more%0A * contributor license agreements.  See the NOTICE file distributed with%0A * this work for additional information regarding copyright ownership.%0A * The ASF licenses this file to You under the Apache License, Version 2.0%0A * (the %22License%22); you may not use this file except in compliance with%0A * the License.  You may obtain a copy of the License at%0A *%0A *    http://www.apache.org/licenses/LICENSE-2.0%0A *%0A * Unless required by applicable law or agreed to in writing, software%0A * distributed under the License is distributed on an %22AS IS%22 BASIS,%0A * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.%0A * See the License for the specific language governing permissions and%0A * limitations under the License.%0A */%0A%0Apackage org.apache.flink.api.connector.sink;%0A%0Aimport org.apache.flink.api.common.serialization.SerializationSchema;%0Aimport org.apache.flink.metrics.MetricGroup;%0Aimport org.apache.flink.util.UserCodeClassLoader;%0A%0Aimport java.util.function.Supplier;%0A%0A/**%0A * Adapter between %7B@link Sink.InitContext%7D and %7B@link SerializationSchema.InitializationContext%7D.%0A */%0Apublic class InitContextInitializationContextAdapter%0A        implements SerializationSchema.InitializationContext %7B%0A%0A    private final UserCodeClassLoader userCodeClassLoader;%0A    private final Supplier%3CMetricGroup%3E metricGroupSupplier;%0A    private MetricGroup cachedMetricGroup;%0A%0A    public InitContextInitializationContextAdapter(%0A            UserCodeClassLoader userCodeClassLoader, Supplier%3CMetricGroup%3E metricGroupSupplier) %7B%0A        this.userCodeClassLoader = userCodeClassLoader;%0A        this.metricGroupSupplier = metricGroupSupplier;%0A    %7D%0A%0A    @Override%0A    public MetricGroup getMetricGroup() %7B%0A        if (cachedMetricGroup == null) %7B%0A            cachedMetricGroup = metricGroupSupplier.get();%0A        %7D%0A        return cachedMetricGroup;%0A    %7D%0A%0A    @Override%0A    public UserCodeClassLoader getUserCodeClassLoader() %7B%0A        return userCodeClassLoader;%0A    %7D%0A%7D%0A

Add adapter between Sink.InitContext and SerializationSchema.InitializationContext