This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository observe. See http://git.codelutin.com/observe.git commit 1c7955d20cec577a1ad011233c26ad0a32a4810d Author: Tony CHEMIT <chemit@codelutin.com> Date: Sat Aug 29 16:07:50 2015 +0200 Rendre fermables les usines de services --- .../java/fr/ird/observe/services/ObserveServiceFactory.java | 6 +++++- .../fr/ird/observe/services/ObserveServiceFactoryRest.java | 5 +++++ .../fr/ird/observe/services/ObserveServiceMainFactory.java | 12 ++++++++++-- .../fr/ird/observe/services/ObserveServiceFactoryTopia.java | 3 +-- 4 files changed, 21 insertions(+), 5 deletions(-) diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/ObserveServiceFactory.java b/observe-services-api/src/main/java/fr/ird/observe/services/ObserveServiceFactory.java index 9ec36b0..b5ab0e5 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/ObserveServiceFactory.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/ObserveServiceFactory.java @@ -2,15 +2,19 @@ package fr.ird.observe.services; import fr.ird.observe.services.configuration.ObserveDataSourceConfiguration; +import java.io.Closeable; + /** * Created on 5/4/15. * * @author Tony Chemit - chemit@codelutin.com */ -public interface ObserveServiceFactory { +public interface ObserveServiceFactory extends Closeable { <S extends ObserveService> boolean accept(ObserveDataSourceConfiguration dataSourceConfiguration, Class<S> serviceType); <S extends ObserveService> S newService(ObserveServiceApplicationContext applicationContext, ObserveDataSourceConfiguration dataSourceConfiguration, Class<S> serviceType); + @Override + void close(); } diff --git a/observe-services-rest/src/main/java/fr/ird/observe/services/ObserveServiceFactoryRest.java b/observe-services-rest/src/main/java/fr/ird/observe/services/ObserveServiceFactoryRest.java index 11fc3d3..292c0c9 100644 --- a/observe-services-rest/src/main/java/fr/ird/observe/services/ObserveServiceFactoryRest.java +++ b/observe-services-rest/src/main/java/fr/ird/observe/services/ObserveServiceFactoryRest.java @@ -58,6 +58,11 @@ public class ObserveServiceFactoryRest extends ObserveServiceFactorySupport { } + @Override + public void close() { + //TODO Voir ce qu'il faut nettoyer, normalement pas grand chose + } + protected <S extends ObserveService> S newRemoteProxyServiceInstance(Class<S> serviceType, ObserveDataSourceConfigurationRest dataSourceConfigurationRest) { String authenticationToken = dataSourceConfigurationRest.getAuthenticationToken(); diff --git a/observe-services-runner/src/main/java/fr/ird/observe/services/ObserveServiceMainFactory.java b/observe-services-runner/src/main/java/fr/ird/observe/services/ObserveServiceMainFactory.java index eb2d31d..3d3c462 100644 --- a/observe-services-runner/src/main/java/fr/ird/observe/services/ObserveServiceMainFactory.java +++ b/observe-services-runner/src/main/java/fr/ird/observe/services/ObserveServiceMainFactory.java @@ -6,6 +6,7 @@ import fr.ird.observe.services.configuration.ObserveDataSourceConfiguration; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import java.io.Closeable; import java.util.ServiceLoader; /** @@ -13,7 +14,7 @@ import java.util.ServiceLoader; * * @author Tony Chemit - chemit@codelutin.com */ -public class ObserveServiceMainFactory implements ObserveServiceFactory { +public class ObserveServiceMainFactory implements ObserveServiceFactory, Closeable { /** Logger. */ private static final Log log = LogFactory.getLog(ObserveServiceMainFactory.class); @@ -58,6 +59,14 @@ public class ObserveServiceMainFactory implements ObserveServiceFactory { } + @Override + public void close() { + + for (ObserveServiceFactory delegateFactory : delegateFactories) { + delegateFactory.close(); + } + } + protected ObserveServiceMainFactory() { if (log.isInfoEnabled()) { log.info("Init MainServiceFactory."); @@ -88,5 +97,4 @@ public class ObserveServiceMainFactory implements ObserveServiceFactory { return result; } - } \ No newline at end of file diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/ObserveServiceFactoryTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/ObserveServiceFactoryTopia.java index 3b015e3..c25033f 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/ObserveServiceFactoryTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/ObserveServiceFactoryTopia.java @@ -13,7 +13,6 @@ import fr.ird.observe.services.spi.Write; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import java.io.Closeable; import java.lang.reflect.InvocationHandler; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; @@ -24,7 +23,7 @@ import java.util.Set; * * @author Tony Chemit - chemit@codelutin.com */ -public class ObserveServiceFactoryTopia extends ObserveServiceFactorySupport implements Closeable { +public class ObserveServiceFactoryTopia extends ObserveServiceFactorySupport { /** Logger. */ private static final Log log = LogFactory.getLog(ObserveServiceFactoryTopia.class); -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.