Repository: sqoop Updated Branches: refs/heads/sqoop2 933839f0f -> a0cf47053
SQOOP-2556: Sqoop2: Declare default constructor private for singleton classes (Dian Fu via Jarek Jarcec Cecho) Project: http://git-wip-us.apache.org/repos/asf/sqoop/repo Commit: http://git-wip-us.apache.org/repos/asf/sqoop/commit/a0cf4705 Tree: http://git-wip-us.apache.org/repos/asf/sqoop/tree/a0cf4705 Diff: http://git-wip-us.apache.org/repos/asf/sqoop/diff/a0cf4705 Branch: refs/heads/sqoop2 Commit: a0cf47053b9d05bdda1fbae8c05b98259c0c0bac Parents: 933839f Author: Jarek Jarcec Cecho <[email protected]> Authored: Tue Sep 8 12:54:46 2015 +0200 Committer: Jarek Jarcec Cecho <[email protected]> Committed: Tue Sep 8 12:54:46 2015 +0200 ---------------------------------------------------------------------- .../org/apache/sqoop/audit/AuditLoggerManager.java | 7 ++++--- .../org/apache/sqoop/audit/FileAuditLogger.java | 17 +++-------------- .../apache/sqoop/connector/ConnectorManager.java | 5 +++++ .../org/apache/sqoop/core/SqoopConfiguration.java | 5 +++++ .../main/java/org/apache/sqoop/driver/Driver.java | 2 +- .../java/org/apache/sqoop/driver/JobManager.java | 5 +++++ .../apache/sqoop/repository/RepositoryManager.java | 5 +++++ .../sqoop/security/AuthenticationManager.java | 2 +- .../org/apache/sqoop/driver/TestJobManager.java | 2 +- 9 files changed, 30 insertions(+), 20 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/sqoop/blob/a0cf4705/core/src/main/java/org/apache/sqoop/audit/AuditLoggerManager.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/sqoop/audit/AuditLoggerManager.java b/core/src/main/java/org/apache/sqoop/audit/AuditLoggerManager.java index 5e5d7ab..af9282c 100644 --- a/core/src/main/java/org/apache/sqoop/audit/AuditLoggerManager.java +++ b/core/src/main/java/org/apache/sqoop/audit/AuditLoggerManager.java @@ -63,7 +63,7 @@ public class AuditLoggerManager implements Reconfigurable { return instance; } - public AuditLoggerManager() { + private AuditLoggerManager() { loggers = new ArrayList<AuditLogger>(); } @@ -122,10 +122,11 @@ public class AuditLoggerManager implements Reconfigurable { } public synchronized void destroy() { + loggers = null; LOG.trace("Begin audit logger manager destroy"); } - public void logAuditEvent(String username, + public synchronized void logAuditEvent(String username, String ip, String operation, String objectType, String objectId) { for (AuditLogger logger : loggers) { logger.logAuditEvent(username, ip, operation, objectType, objectId); @@ -133,7 +134,7 @@ public class AuditLoggerManager implements Reconfigurable { } @Override - public void configurationChanged() { + public synchronized void configurationChanged() { LOG.info("Begin audit logger manager reconfiguring"); initializeLoggers(); LOG.info("Audit logger manager reconfigured"); http://git-wip-us.apache.org/repos/asf/sqoop/blob/a0cf4705/core/src/main/java/org/apache/sqoop/audit/FileAuditLogger.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/sqoop/audit/FileAuditLogger.java b/core/src/main/java/org/apache/sqoop/audit/FileAuditLogger.java index 42cb330..49a380c 100644 --- a/core/src/main/java/org/apache/sqoop/audit/FileAuditLogger.java +++ b/core/src/main/java/org/apache/sqoop/audit/FileAuditLogger.java @@ -41,22 +41,10 @@ public class FileAuditLogger extends AuditLogger { */ private Logger logger; - /** - * Configurations for this audit logger - */ - private Map<String, String> config; - - /** - * Properties to setup logger - */ - private Properties props; - - public FileAuditLogger() { - this.props = new Properties(); - } + public FileAuditLogger() {} public void initialize() { - config = getLoggerConfig(); + Map<String, String> config = getLoggerConfig(); String outputFile = config.get(FILE); if (outputFile == null) { @@ -66,6 +54,7 @@ public class FileAuditLogger extends AuditLogger { // setup logger String appender = "log4j.appender." + getLoggerName() + APPENDER_SURFIX; LOG.warn("appender: " + appender); + Properties props = new Properties(); props.put(appender, "org.apache.log4j.RollingFileAppender"); props.put(appender + ".File", outputFile); props.put(appender + ".layout", "org.apache.log4j.PatternLayout"); http://git-wip-us.apache.org/repos/asf/sqoop/blob/a0cf4705/core/src/main/java/org/apache/sqoop/connector/ConnectorManager.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/sqoop/connector/ConnectorManager.java b/core/src/main/java/org/apache/sqoop/connector/ConnectorManager.java index b64d6fd..5f269aa 100644 --- a/core/src/main/java/org/apache/sqoop/connector/ConnectorManager.java +++ b/core/src/main/java/org/apache/sqoop/connector/ConnectorManager.java @@ -68,6 +68,11 @@ public class ConnectorManager implements Reconfigurable { } /** + * The private constructor for the singleton class. + */ + private ConnectorManager() {} + + /** * Return current instance. * * @return Current instance http://git-wip-us.apache.org/repos/asf/sqoop/blob/a0cf4705/core/src/main/java/org/apache/sqoop/core/SqoopConfiguration.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/sqoop/core/SqoopConfiguration.java b/core/src/main/java/org/apache/sqoop/core/SqoopConfiguration.java index 04da05f..52e432d 100644 --- a/core/src/main/java/org/apache/sqoop/core/SqoopConfiguration.java +++ b/core/src/main/java/org/apache/sqoop/core/SqoopConfiguration.java @@ -69,6 +69,11 @@ public class SqoopConfiguration implements Reconfigurable { } /** + * The private constructor for the singleton class. + */ + private SqoopConfiguration() {} + + /** * Return current instance. * * @return Current instance http://git-wip-us.apache.org/repos/asf/sqoop/blob/a0cf4705/core/src/main/java/org/apache/sqoop/driver/Driver.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/sqoop/driver/Driver.java b/core/src/main/java/org/apache/sqoop/driver/Driver.java index 8d490dd..cff2bef 100644 --- a/core/src/main/java/org/apache/sqoop/driver/Driver.java +++ b/core/src/main/java/org/apache/sqoop/driver/Driver.java @@ -110,7 +110,7 @@ public class Driver implements Reconfigurable { return JobConfiguration.class; } - public Driver() { + private Driver() { List<MConfig> driverConfig = ConfigUtils.toConfigs(getDriverJobConfigurationClass()); mDriver = new MDriver(new MDriverConfig(driverConfig), DriverBean.CURRENT_DRIVER_VERSION); http://git-wip-us.apache.org/repos/asf/sqoop/blob/a0cf4705/core/src/main/java/org/apache/sqoop/driver/JobManager.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/sqoop/driver/JobManager.java b/core/src/main/java/org/apache/sqoop/driver/JobManager.java index fdd48f1..87c6c74 100644 --- a/core/src/main/java/org/apache/sqoop/driver/JobManager.java +++ b/core/src/main/java/org/apache/sqoop/driver/JobManager.java @@ -73,6 +73,11 @@ public class JobManager implements Reconfigurable { } /** + * The private constructor for the singleton class. + */ + private JobManager() {} + + /** * Return current instance. * * @return Current instance http://git-wip-us.apache.org/repos/asf/sqoop/blob/a0cf4705/core/src/main/java/org/apache/sqoop/repository/RepositoryManager.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/sqoop/repository/RepositoryManager.java b/core/src/main/java/org/apache/sqoop/repository/RepositoryManager.java index 121f388..fd62340 100644 --- a/core/src/main/java/org/apache/sqoop/repository/RepositoryManager.java +++ b/core/src/main/java/org/apache/sqoop/repository/RepositoryManager.java @@ -49,6 +49,11 @@ public class RepositoryManager implements Reconfigurable { } /** + * The private constructor for the singleton class. + */ + private RepositoryManager() {} + + /** * Return current instance. * * @return Current instance http://git-wip-us.apache.org/repos/asf/sqoop/blob/a0cf4705/core/src/main/java/org/apache/sqoop/security/AuthenticationManager.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/sqoop/security/AuthenticationManager.java b/core/src/main/java/org/apache/sqoop/security/AuthenticationManager.java index 6b12e9f..1d6d94d 100644 --- a/core/src/main/java/org/apache/sqoop/security/AuthenticationManager.java +++ b/core/src/main/java/org/apache/sqoop/security/AuthenticationManager.java @@ -46,7 +46,7 @@ public class AuthenticationManager implements Reconfigurable { } /** - * The private constructor for the singleton class, + * The private constructor for the singleton class. */ private AuthenticationManager(){} http://git-wip-us.apache.org/repos/asf/sqoop/blob/a0cf4705/core/src/test/java/org/apache/sqoop/driver/TestJobManager.java ---------------------------------------------------------------------- diff --git a/core/src/test/java/org/apache/sqoop/driver/TestJobManager.java b/core/src/test/java/org/apache/sqoop/driver/TestJobManager.java index 203d8b0..414d3e9 100644 --- a/core/src/test/java/org/apache/sqoop/driver/TestJobManager.java +++ b/core/src/test/java/org/apache/sqoop/driver/TestJobManager.java @@ -51,7 +51,7 @@ public class TestJobManager { @BeforeMethod(alwaysRun = true) public void setUp() { - jobManager = new JobManager(); + jobManager = JobManager.getInstance(); connectorMgrMock = mock(ConnectorManager.class); sqoopConnectorMock = mock(SqoopConnector.class); ConnectorManager.setInstance(connectorMgrMock);
