MINOR: Move FileConfigProvider to provider subpackage (#5194)

This moves FileConfigProvider to the org.apache.common.config.provider package to more easily isolate provider implementations going forward.

Reviewers: Konstantine Karantasis <konstantine@confluent.io>, Randall Hauch <rhauch@gmail.com>, Ismael Juma <ismael@juma.me.uk>, Jason Gustafson <jason@confluent.io>
This commit is contained in:
Robert Yokota 2018-06-12 12:52:51 -07:00 committed by Jason Gustafson
parent 40f63eb9c1
commit 16190e9bfd
21 changed files with 45 additions and 19 deletions

View File

@ -868,6 +868,7 @@ project(':clients') {
include "**/org/apache/kafka/common/resource/*"
include "**/org/apache/kafka/common/serialization/*"
include "**/org/apache/kafka/common/config/*"
include "**/org/apache/kafka/common/config/provider/*"
include "**/org/apache/kafka/common/security/auth/*"
include "**/org/apache/kafka/common/security/plain/*"
include "**/org/apache/kafka/common/security/scram/*"

View File

@ -16,6 +16,8 @@
*/
package org.apache.kafka.common.config;
import org.apache.kafka.common.config.provider.ConfigProvider;
/**
* A callback passed to {@link ConfigProvider} for subscribing to changes.
*/

View File

@ -16,6 +16,8 @@
*/
package org.apache.kafka.common.config;
import org.apache.kafka.common.config.provider.ConfigProvider;
import java.util.Map;
/**

View File

@ -16,6 +16,9 @@
*/
package org.apache.kafka.common.config;
import org.apache.kafka.common.config.provider.ConfigProvider;
import org.apache.kafka.common.config.provider.FileConfigProvider;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;

View File

@ -16,6 +16,8 @@
*/
package org.apache.kafka.common.config;
import org.apache.kafka.common.config.provider.ConfigProvider;
import java.util.Map;
/**

View File

@ -14,9 +14,11 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.kafka.common.config;
package org.apache.kafka.common.config.provider;
import org.apache.kafka.common.Configurable;
import org.apache.kafka.common.config.ConfigChangeCallback;
import org.apache.kafka.common.config.ConfigData;
import java.io.Closeable;
import java.util.Set;

View File

@ -14,7 +14,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.kafka.common.config;
package org.apache.kafka.common.config.provider;
import org.apache.kafka.common.config.ConfigData;
import org.apache.kafka.common.config.ConfigException;
import java.io.BufferedReader;
import java.io.FileInputStream;

View File

@ -13,4 +13,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
org.apache.kafka.common.config.FileConfigProvider
org.apache.kafka.common.config.provider.FileConfigProvider

View File

@ -16,6 +16,7 @@
*/
package org.apache.kafka.common.config;
import org.apache.kafka.common.config.provider.ConfigProvider;
import org.junit.Before;
import org.junit.Test;

View File

@ -14,8 +14,9 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.kafka.common.config;
package org.apache.kafka.common.config.provider;
import org.apache.kafka.common.config.ConfigData;
import org.junit.Before;
import org.junit.Test;

View File

@ -19,7 +19,7 @@ package org.apache.kafka.connect.runtime;
import org.apache.kafka.clients.producer.KafkaProducer;
import org.apache.kafka.clients.producer.ProducerConfig;
import org.apache.kafka.common.MetricName;
import org.apache.kafka.common.config.ConfigProvider;
import org.apache.kafka.common.config.provider.ConfigProvider;
import org.apache.kafka.common.metrics.Sensor;
import org.apache.kafka.common.metrics.stats.Frequencies;
import org.apache.kafka.common.metrics.stats.Total;

View File

@ -16,7 +16,7 @@
*/
package org.apache.kafka.connect.runtime;
import org.apache.kafka.common.config.ConfigProvider;
import org.apache.kafka.common.config.provider.ConfigProvider;
import org.apache.kafka.common.config.ConfigTransformer;
import org.apache.kafka.common.config.ConfigTransformerResult;

View File

@ -16,6 +16,7 @@
*/
package org.apache.kafka.connect.runtime.distributed;
import org.apache.kafka.common.config.provider.ConfigProvider;
import org.apache.kafka.connect.runtime.WorkerConfigTransformer;
import org.apache.kafka.connect.runtime.TargetState;
import org.apache.kafka.connect.util.ConnectorTaskId;
@ -110,7 +111,7 @@ public class ClusterConfigState {
* Get the configuration for a connector. The configuration will have been transformed by
* {@link org.apache.kafka.common.config.ConfigTransformer} by having all variable
* references replaced with the current values from external instances of
* {@link org.apache.kafka.common.config.ConfigProvider}, and may include secrets.
* {@link ConfigProvider}, and may include secrets.
* @param connector name of the connector
* @return a map containing configuration parameters
*/
@ -135,7 +136,7 @@ public class ClusterConfigState {
* Get the configuration for a task. The configuration will have been transformed by
* {@link org.apache.kafka.common.config.ConfigTransformer} by having all variable
* references replaced with the current values from external instances of
* {@link org.apache.kafka.common.config.ConfigProvider}, and may include secrets.
* {@link ConfigProvider}, and may include secrets.
* @param task id of the task
* @return a map containing configuration parameters
*/

View File

@ -16,7 +16,7 @@
*/
package org.apache.kafka.connect.runtime.isolation;
import org.apache.kafka.common.config.ConfigProvider;
import org.apache.kafka.common.config.provider.ConfigProvider;
import org.apache.kafka.connect.components.Versioned;
import org.apache.kafka.connect.connector.Connector;
import org.apache.kafka.connect.rest.ConnectRestExtension;

View File

@ -16,7 +16,7 @@
*/
package org.apache.kafka.connect.runtime.isolation;
import org.apache.kafka.common.config.ConfigProvider;
import org.apache.kafka.common.config.provider.ConfigProvider;
import org.apache.kafka.connect.connector.Connector;
import org.apache.kafka.connect.rest.ConnectRestExtension;
import org.apache.kafka.connect.storage.Converter;

View File

@ -16,7 +16,7 @@
*/
package org.apache.kafka.connect.runtime.isolation;
import org.apache.kafka.common.config.ConfigProvider;
import org.apache.kafka.common.config.provider.ConfigProvider;
import org.apache.kafka.connect.connector.Connector;
import org.apache.kafka.connect.rest.ConnectRestExtension;
import org.apache.kafka.connect.sink.SinkConnector;

View File

@ -122,14 +122,16 @@ public class PluginUtils {
+ "|org\\.slf4j"
+ ")\\..*$";
private static final String WHITELIST = "^org\\.apache\\.kafka\\.(?:common.config..*ConfigProvider|connect\\.(?:"
private static final String WHITELIST = "^org\\.apache\\.kafka\\.(?:connect\\.(?:"
+ "transforms\\.(?!Transformation$).*"
+ "|json\\..*"
+ "|file\\..*"
+ "|converters\\..*"
+ "|storage\\.StringConverter"
+ "|rest\\.basic\\.auth\\.extension\\.BasicAuthSecurityRestExtension"
+ "))$";
+ ")"
+ "|common\\.config\\.provider\\.(?!ConfigProvider$).*"
+ ")$";
private static final DirectoryStream.Filter<Path> PLUGIN_PATH_FILTER = new DirectoryStream
.Filter<Path>() {

View File

@ -19,7 +19,7 @@ package org.apache.kafka.connect.runtime.isolation;
import org.apache.kafka.common.Configurable;
import org.apache.kafka.common.KafkaException;
import org.apache.kafka.common.config.AbstractConfig;
import org.apache.kafka.common.config.ConfigProvider;
import org.apache.kafka.common.config.provider.ConfigProvider;
import org.apache.kafka.common.utils.Utils;
import org.apache.kafka.connect.components.Versioned;
import org.apache.kafka.connect.connector.ConnectRecord;

View File

@ -18,7 +18,7 @@ package org.apache.kafka.connect.runtime;
import org.apache.kafka.common.config.ConfigChangeCallback;
import org.apache.kafka.common.config.ConfigData;
import org.apache.kafka.common.config.ConfigProvider;
import org.apache.kafka.common.config.provider.ConfigProvider;
import org.easymock.EasyMock;
import org.junit.Before;
import org.junit.Test;

View File

@ -29,7 +29,7 @@ public class DelegatingClassLoaderTest {
assertTrue(
DelegatingClassLoader.serviceLoaderManifestForPlugin("META-INF/services/org.apache.kafka.connect.rest.ConnectRestExtension"));
assertTrue(
DelegatingClassLoader.serviceLoaderManifestForPlugin("META-INF/services/org.apache.kafka.common.config.ConfigProvider"));
DelegatingClassLoader.serviceLoaderManifestForPlugin("META-INF/services/org.apache.kafka.common.config.provider.ConfigProvider"));
}
@Test

View File

@ -114,6 +114,9 @@ public class PluginUtilsTest {
assertFalse(PluginUtils.shouldLoadInIsolation(
"org.apache.kafka.clients.admin.KafkaAdminClient")
);
assertFalse(PluginUtils.shouldLoadInIsolation(
"org.apache.kafka.connect.rest.ConnectRestExtension")
);
}
@Test
@ -153,11 +156,14 @@ public class PluginUtilsTest {
@Test
public void testClientConfigProvider() throws Exception {
assertTrue(PluginUtils.shouldLoadInIsolation(
"org.apache.kafka.common.config.FileConfigProvider")
assertFalse(PluginUtils.shouldLoadInIsolation(
"org.apache.kafka.common.config.provider.ConfigProvider")
);
assertTrue(PluginUtils.shouldLoadInIsolation(
"org.apache.kafka.common.config.FutureConfigProvider")
"org.apache.kafka.common.config.provider.FileConfigProvider")
);
assertTrue(PluginUtils.shouldLoadInIsolation(
"org.apache.kafka.common.config.provider.FutureConfigProvider")
);
}