This is an automated email from the git hooks/post-receive script. New commit to branch feature/7588-verifEcran in repository tutti. See http://git.codelutin.com/tutti.git commit 7e68ec118db9af3ceba81f0998f1ee29f2a484eb Author: Sylvain Bavencoff <bavencoff@codelutin.com> Date: Tue Mar 1 17:23:37 2016 +0100 Ajout de trace au debut de chaque methode public pour les services communs + ajout d'un toString pour ces traces --- .../services/service/SqlScriptProducerRequest.java | 13 +++++++ .../services/service/DataSourceServiceTopia.java | 33 ++++++++++++++--- .../services/service/ReferentialServiceTopia.java | 42 ++++++++++++++++++++++ .../service/SqlScriptProducerServiceTopia.java | 33 ++++++++++++++++- 4 files changed, 116 insertions(+), 5 deletions(-) diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/SqlScriptProducerRequest.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/SqlScriptProducerRequest.java index 517005c..7603092 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/SqlScriptProducerRequest.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/SqlScriptProducerRequest.java @@ -1,5 +1,7 @@ package fr.ird.observe.services.service; +import com.google.common.base.Joiner; +import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableSet; /** @@ -71,4 +73,15 @@ public class SqlScriptProducerRequest { public boolean isPostgres() { return postgres; } + + @Override + public String toString() { + return MoreObjects.toStringHelper(this) + .add("postgres", postgres) + .add("addSchema", addSchema) + .add("addReferential", addReferential) + .add("addData", addData) + .add("dataIds", "[" + Joiner.on(", ").join(dataIds) + "]") + .toString(); + } } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/DataSourceServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/DataSourceServiceTopia.java index 9dcd5b2..9f91b5d 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/DataSourceServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/DataSourceServiceTopia.java @@ -22,9 +22,11 @@ package fr.ird.observe.services.service; * #L% */ +import com.google.common.base.Joiner; import com.google.common.base.Optional; import com.google.common.base.Preconditions; import com.google.common.collect.ImmutableSet; +import com.google.common.collect.Iterables; import com.google.common.collect.Sets; import fr.ird.observe.ObserveTopiaApplicationContext; import fr.ird.observe.ObserveTopiaConfiguration; @@ -45,6 +47,7 @@ import fr.ird.observe.services.dto.DataSourceCreateWithNoReferentialImportExcept import fr.ird.observe.services.dto.ImportDataDto; import fr.ird.observe.services.dto.IncompatibleDataSourceCreateConfigurationException; import fr.ird.observe.services.dto.ObserveDbUserDto; +import fr.ird.observe.services.dto.ObserveDbUserDtos; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.nuiton.topia.persistence.jdbc.JdbcHelper; @@ -69,6 +72,9 @@ public class DataSourceServiceTopia extends ObserveServiceTopia implements DataS @Override public ObserveDataSourceInformation checkCanConnect(ObserveDataSourceConfiguration dataSourceConfiguration) throws DatabaseNotFoundException, DatabaseConnexionNotAuthorizedException { + if (log.isTraceEnabled()) { + log.trace("checkCanConnect(" + dataSourceConfiguration + ")"); + } Preconditions.checkState(dataSourceConfiguration instanceof ObserveDataSourceConfigurationTopiaSupport); ObserveDataSourceConfigurationTopiaSupport dataSourceConfigurationTopiaSupport = (ObserveDataSourceConfigurationTopiaSupport) dataSourceConfiguration; @@ -149,6 +155,9 @@ public class DataSourceServiceTopia extends ObserveServiceTopia implements DataS @Override public ObserveDataSourceConnectionTopia create(ObserveDataSourceConfiguration dataSourceConfiguration, DataSourceCreateConfigurationDto dataSourceCreateConfiguration) throws IncompatibleDataSourceCreateConfigurationException, DataSourceCreateWithNoReferentialImportException { + if (log.isTraceEnabled()) { + log.trace("create(" + dataSourceConfiguration + ", " + dataSourceCreateConfiguration + ")"); + } dataSourceCreateConfiguration.validateConfiguration(); @@ -253,6 +262,9 @@ public class DataSourceServiceTopia extends ObserveServiceTopia implements DataS @Override public ObserveDataSourceConnectionTopia open(ObserveDataSourceConfiguration dataSourceConfiguration) throws DatabaseNotFoundException, DatabaseConnexionNotAuthorizedException, BabModelVersionException { + if (log.isTraceEnabled()) { + log.trace("open(" + dataSourceConfiguration + ")"); + } ObserveDataSourceInformation dataSourceInformation = checkCanConnect(dataSourceConfiguration); @@ -274,6 +286,9 @@ public class DataSourceServiceTopia extends ObserveServiceTopia implements DataS @Override public void close() { + if (log.isTraceEnabled()) { + log.trace("close()"); + } ObserveDataSourceConfigurationTopiaSupport dataSourceConfiguration = serviceContext.getDataSourceConfiguration(); Optional<ObserveTopiaApplicationContext> optionalTopiaApplicationContext = ObserveTopiaApplicationContextFactory.getTopiaApplicationContextIfPresent(dataSourceConfiguration); @@ -292,13 +307,18 @@ public class DataSourceServiceTopia extends ObserveServiceTopia implements DataS @Override public void destroy() { - + if (log.isTraceEnabled()) { + log.trace("destroy()"); + } //TODO } @Override public Set<ObserveDbUserDto> getUsers(ObserveDataSourceConfiguration dataSourceConfiguration) { + if (log.isTraceEnabled()) { + log.trace("getUsers(" + dataSourceConfiguration + ")"); + } Set<ObserveDbUserDto> users = Sets.newHashSet(); @@ -322,6 +342,9 @@ public class DataSourceServiceTopia extends ObserveServiceTopia implements DataS @Override public void applySecurity(ObserveDataSourceConfiguration dataSourceConfiguration, Set<ObserveDbUserDto> users) { + if (log.isTraceEnabled()) { + log.trace("applySecurity(" + dataSourceConfiguration + ", [" + Joiner.on(", ").join(Iterables.transform(users, ObserveDbUserDtos.getNameFunction())) + "])"); + } // pas de securité pour les bases autres que postgresql if (dataSourceConfiguration instanceof ObserveDataSourceConfigurationTopiaPG) { @@ -342,6 +365,9 @@ public class DataSourceServiceTopia extends ObserveServiceTopia implements DataS @Override public void migrateData(ObserveDataSourceConfiguration dataSourceConfiguration) { + if (log.isTraceEnabled()) { + log.trace("migrateData(" + dataSourceConfiguration + ")"); + } ObserveTopiaApplicationContext topiaApplicationContext = ObserveTopiaApplicationContextFactory.getOrCreateTopiaApplicationContext((ObserveDataSourceConfigurationTopiaSupport) dataSourceConfiguration); @@ -351,9 +377,8 @@ public class DataSourceServiceTopia extends ObserveServiceTopia implements DataS @Override public void importData(ImportDataDto importData) { - - if (log.isInfoEnabled()) { - log.info("Import data."); + if (log.isTraceEnabled()) { + log.trace("importData([" + Joiner.on(", ").join(importData.getImportDataIds()) + "])"); } ObserveTopiaApplicationContext topiaApplicationContext = serviceContext.getTopiaApplicationContext(); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/ReferentialServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/ReferentialServiceTopia.java index 949fe9e..1304147 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/ReferentialServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/ReferentialServiceTopia.java @@ -22,6 +22,7 @@ package fr.ird.observe.services.service; * #L% */ +import com.google.common.base.Joiner; import com.google.common.base.Optional; import com.google.common.base.Preconditions; import com.google.common.collect.ImmutableMap; @@ -45,6 +46,8 @@ import fr.ird.observe.services.dto.referential.ReferentialReference; import fr.ird.observe.services.dto.referential.ReferentialReferenceSet; import fr.ird.observe.services.dto.referential.SpeciesDto; import fr.ird.observe.services.dto.result.SaveResultDto; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; import org.nuiton.topia.persistence.TopiaDao; import org.nuiton.topia.persistence.TopiaEntity; @@ -62,8 +65,13 @@ import java.util.Set; */ public class ReferentialServiceTopia extends ObserveServiceTopia implements ReferentialService { + private static final Log log = LogFactory.getLog(ReferentialServiceTopia.class); + @Override public <D extends ReferentialDto> ReferentialReferenceSet<D> getReferenceSet(Class<D> type, Date lastUpdateDate) { + if (log.isTraceEnabled()) { + log.trace("getReferenceSet(" + type.getName() + ", " + lastUpdateDate + ")" ); + } Class<ObserveReferentialEntity> entityType = BinderEngine.get().getReferentialEntityType(type); @@ -86,6 +94,9 @@ public class ReferentialServiceTopia extends ObserveServiceTopia implements Refe @Override public ImmutableSet<ReferentialReferenceSet<?>> getReferentialReferenceSets(ReferenceSetsRequest request) { + if (log.isTraceEnabled()) { + log.trace("getReferentialReferenceSets(" + request.getRequestName() + ")"); + } String requestName = request.getRequestName(); @@ -113,6 +124,9 @@ public class ReferentialServiceTopia extends ObserveServiceTopia implements Refe @Override public SpeciesDto loadSpecies(String id) { + if (log.isTraceEnabled()) { + log.trace("loadSpecies(" + id + ")"); + } Species speciesEntity = loadEntity(SpeciesDto.class, id); ReferentialBinderSupport<Species, SpeciesDto> binder = getReferentialBinder(SpeciesDto.class); @@ -123,6 +137,9 @@ public class ReferentialServiceTopia extends ObserveServiceTopia implements Refe @Override public <D extends ReferentialDto> Form<D> loadForm(Class<D> dtoType, String id) { + if (log.isTraceEnabled()) { + log.trace("loadForm(" + dtoType.getName() + ", " + id + ")"); + } ObserveReferentialEntity entity = loadEntity(dtoType, id); //FIXME Definir une definition pour chaque formulaire de référentiel @@ -141,6 +158,9 @@ public class ReferentialServiceTopia extends ObserveServiceTopia implements Refe @Override public <D extends ReferentialDto> ReferentialReference<D> loadReference(Class<D> type, String id) throws DataNotFoundException { + if (log.isTraceEnabled()) { + log.trace("loadReference(" + type.getName() + ", " + id + ")"); + } ObserveReferentialEntity entity = loadEntity(type, id); ReferentialBinderSupport<ObserveReferentialEntity, D> referentialBinder = getReferentialBinder(type); @@ -151,6 +171,10 @@ public class ReferentialServiceTopia extends ObserveServiceTopia implements Refe @Override public <D extends ReferentialDto> Form<D> preCreate(Class<D> dtoType) { + if (log.isTraceEnabled()) { + log.trace("preCreate(" + dtoType.getName() + ")"); + } + Class<ObserveReferentialEntity> entityType = getReferentialEntityType(dtoType); ObserveReferentialEntity entity = newEntity(entityType); //TODO Voir selon le type d'entité si il y a des valeurs par défaut à utiliser @@ -160,6 +184,9 @@ public class ReferentialServiceTopia extends ObserveServiceTopia implements Refe } public <D extends ReferentialDto> SaveResultDto save(D dto) { + if (log.isTraceEnabled()) { + log.trace("save(" + dto.getId() + ")"); + } ObserveReferentialEntity entity = loadOrCreateEntityFromReferentialDto(dto); copyReferentialDtoToEntity(dto, entity); @@ -169,18 +196,29 @@ public class ReferentialServiceTopia extends ObserveServiceTopia implements Refe @Override public <D extends ReferentialDto> void delete(Class<D> dtoType, String id) { + if (log.isTraceEnabled()) { + log.trace("delete(" + dtoType.getName() + ", " + id + ")"); + } + Class<? extends ObserveReferentialEntity> entityType = getReferentialEntityType(dtoType); deleteEntity(dtoType, entityType, Collections.singleton(id)); } @Override public <D extends ReferentialDto> void delete(Class<D> dtoType, Collection<String> ids) { + if (log.isTraceEnabled()) { + log.trace("delete(" + dtoType.getName() + ", [" + Joiner.on(", ").join(ids) + "])"); + } + Class<? extends ObserveReferentialEntity> entityType = getReferentialEntityType(dtoType); deleteEntity(dtoType, entityType, ids); } @Override public <R extends ReferentialDto> DtoMap findAllUsages(R bean) throws DataNotFoundException { + if (log.isTraceEnabled()) { + log.trace("findAllUsages(" + bean.getId() + ")"); + } Class<R> referentialDtoType = (Class<R>) bean.getClass(); Class<ObserveReferentialEntity> entityType = getReferentialEntityType(referentialDtoType); @@ -218,6 +256,10 @@ public class ReferentialServiceTopia extends ObserveServiceTopia implements Refe @Override public <D extends ReferentialDto> boolean exists(Class<D> dtoType, String id) { + if (log.isTraceEnabled()) { + log.trace("exists(" + dtoType.getName() + ", " + id + ")"); + } + Class<? extends ObserveReferentialEntity> entityType = getReferentialEntityType(dtoType); return existsEntity(entityType, id); } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/SqlScriptProducerServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/SqlScriptProducerServiceTopia.java index eadd30f..73ebe38 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/SqlScriptProducerServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/SqlScriptProducerServiceTopia.java @@ -1,11 +1,14 @@ package fr.ird.observe.services.service; +import com.google.common.base.Joiner; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Iterables; import com.google.common.collect.Sets; import fr.ird.observe.ObserveTopiaApplicationContext; import fr.ird.observe.entities.Entities; import fr.ird.observe.services.ObserveServiceTopia; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; import org.nuiton.topia.service.sql.batch.SqlRequests; import org.nuiton.topia.service.sql.batch.TopiaSqlBatchService; import org.nuiton.topia.service.sql.batch.actions.TopiaSqlTableSelectArgument; @@ -24,9 +27,13 @@ import java.util.zip.GZIPOutputStream; */ public class SqlScriptProducerServiceTopia extends ObserveServiceTopia implements SqlScriptProducerService { + private static final Log log = LogFactory.getLog(SqlScriptProducerServiceTopia.class); + @Override public byte[] produceSqlScript(SqlScriptProducerRequest request) { - + if (log.isTraceEnabled()) { + log.trace("produceSqlScript(" + request + ")"); + } try (ByteArrayOutputStream out = new ByteArrayOutputStream()) { try (Writer writer = new OutputStreamWriter(new GZIPOutputStream(out))) { @@ -49,36 +56,60 @@ public class SqlScriptProducerServiceTopia extends ObserveServiceTopia implement @Override public byte[] getH2Schema() { + if (log.isTraceEnabled()) { + log.trace("getH2Schema()"); + } + SqlScriptProducerRequest request = SqlScriptProducerRequest.forH2().addSchema(); return produceSqlScript(request); } @Override public byte[] getPostgresSchema() { + if (log.isTraceEnabled()) { + log.trace("getPostgresSchema()"); + } + SqlScriptProducerRequest request = SqlScriptProducerRequest.forPostgres().addSchema(); return produceSqlScript(request); } @Override public byte[] getReferentialDump() { + if (log.isTraceEnabled()) { + log.trace("getReferentialDump()"); + } + SqlScriptProducerRequest request = SqlScriptProducerRequest.forH2().addReferential(); return produceSqlScript(request); } @Override public byte[] getDataDump(ImmutableSet<String> dataIds) { + if (log.isTraceEnabled()) { + log.trace("getDataDump([" + Joiner.on(", ").join(dataIds) + "])"); + } + SqlScriptProducerRequest request = SqlScriptProducerRequest.forH2().addDataIds(dataIds); return produceSqlScript(request); } @Override public byte[] getAllDataDump() { + if (log.isTraceEnabled()) { + log.trace("getAllDataDump()"); + } + SqlScriptProducerRequest request = SqlScriptProducerRequest.forH2().addAllData(); return produceSqlScript(request); } @Override public byte[] getDump() { + if (log.isTraceEnabled()) { + log.trace("getDump()"); + } + SqlScriptProducerRequest request = SqlScriptProducerRequest.forH2().addSchema().addReferential().addAllData(); return produceSqlScript(request); } -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.