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 ddc59718029fd88eb6edd71122366dceb130d51e Author: Tony CHEMIT <chemit@codelutin.com> Date: Sun Nov 8 12:18:54 2015 +0100 Certainnes méthodes doivent être en NoDataAccess sur certainnes méthodes de DataSourceService --- .../fr/ird/observe/db/ObserveSwingDataSource.java | 8 ++--- .../controller/v1/DataSourceServiceController.java | 15 +++++---- .../services/service/DataSourceService.java | 26 ++++++---------- .../services/service/DataSourceServiceTopia.java | 36 +++++++++------------- 4 files changed, 35 insertions(+), 50 deletions(-) diff --git a/observe-application-swing/src/main/java/fr/ird/observe/db/ObserveSwingDataSource.java b/observe-application-swing/src/main/java/fr/ird/observe/db/ObserveSwingDataSource.java index ab73cf8..bb15113 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/db/ObserveSwingDataSource.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/db/ObserveSwingDataSource.java @@ -178,22 +178,20 @@ public class ObserveSwingDataSource extends AbstractSerializableBean implements } public Set<ObserveDbUserDto> getUsers() { - Preconditions.checkState(isOpen(), "Connection is not open"); DataSourceService dataSourceService = newService(DataSourceService.class); - Set<ObserveDbUserDto> users = dataSourceService.getUsers(); + Set<ObserveDbUserDto> users = dataSourceService.getUsers(getConfiguration()); return users; } public void applySecurity(Set<ObserveDbUserDto> users) { - Preconditions.checkState(isOpen(), "Connection is not open"); DataSourceService dataSourceService = newService(DataSourceService.class); - dataSourceService.applySecurity(users); + dataSourceService.applySecurity(getConfiguration(), users); } @@ -240,7 +238,7 @@ public class ObserveSwingDataSource extends AbstractSerializableBean implements log.info("Migrate data source " + getLabel() + " in " + dbVersion + " to " + targetVersion); } - dataSourceService.migrateData(); + dataSourceService.migrateData(getConfiguration()); } } } diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/DataSourceServiceController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/DataSourceServiceController.java index 12af1be..2f8b2ca 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/DataSourceServiceController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/DataSourceServiceController.java @@ -117,13 +117,15 @@ public class DataSourceServiceController extends ObserveServiceControllerSupport } @Override - public Set<ObserveDbUserDto> getUsers() { - return getAuthenticatedService().getUsers(); + public Set<ObserveDbUserDto> getUsers(ObserveDataSourceConfiguration dataSourceConfiguration) { + ObserveDataSourceConfiguration dataSourceConfigurationTopia = getTopiaDataSourceConfiguration(dataSourceConfiguration); + return getAnonymousService(dataSourceConfigurationTopia).getUsers(dataSourceConfiguration); } @Override - public void applySecurity(Set<ObserveDbUserDto> users) { - getAuthenticatedService().applySecurity(users); + public void applySecurity(ObserveDataSourceConfiguration dataSourceConfiguration, Set<ObserveDbUserDto> users) { + ObserveDataSourceConfiguration dataSourceConfigurationTopia = getTopiaDataSourceConfiguration(dataSourceConfiguration); + getAnonymousService(dataSourceConfigurationTopia).applySecurity(dataSourceConfiguration, users); } @@ -133,8 +135,9 @@ public class DataSourceServiceController extends ObserveServiceControllerSupport } @Override - public void migrateData() { - getAuthenticatedService().migrateData(); + public void migrateData(ObserveDataSourceConfiguration dataSourceConfiguration) { + ObserveDataSourceConfiguration dataSourceConfigurationTopia = getTopiaDataSourceConfiguration(dataSourceConfiguration); + getAnonymousService(dataSourceConfigurationTopia).migrateData(dataSourceConfiguration); } @Override diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/DataSourceService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/DataSourceService.java index e079f67..5da03c1 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/DataSourceService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/DataSourceService.java @@ -38,7 +38,6 @@ import fr.ird.observe.services.spi.ReadDataPermission; import fr.ird.observe.services.spi.ReadReferentialPermission; import fr.ird.observe.services.spi.Write; import fr.ird.observe.services.spi.WriteDataPermission; -import fr.ird.observe.services.spi.WriteReferentialPermission; import java.util.Set; @@ -58,30 +57,23 @@ public interface DataSourceService extends ObserveService { @NoDataAccess ObserveDataSourceConnection open(ObserveDataSourceConfiguration dataSourceConfiguration) throws DatabaseNotFoundException, DatabaseConnexionNotAuthorizedException, BabModelVersionException; - void close(); + @NoDataAccess + Set<ObserveDbUserDto> getUsers(ObserveDataSourceConfiguration dataSourceConfiguration); - void destroy(); + @NoDataAccess + void applySecurity(ObserveDataSourceConfiguration dataSourceConfiguration, Set<ObserveDbUserDto> users); - @ReadReferentialPermission - @WriteReferentialPermission - @ReadDataPermission - @WriteDataPermission - Set<ObserveDbUserDto> getUsers(); + @NoDataAccess + void migrateData(ObserveDataSourceConfiguration dataSourceConfiguration); - @ReadReferentialPermission - @WriteReferentialPermission - @ReadDataPermission - @WriteDataPermission - @Write - void applySecurity(Set<ObserveDbUserDto> users); + void close(); + + void destroy(); @ReadDataPermission @ReadReferentialPermission <D extends IdDto> D getObserveDto(Class<D> dtoType, String id); - @NoDataAccess - void migrateData(); - @WriteDataPermission @Write @PostRequest 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 d0e9e64..54cf280 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 @@ -310,25 +310,22 @@ public class DataSourceServiceTopia extends ObserveServiceTopia implements DataS } @Override - public Set<ObserveDbUserDto> getUsers() { + public Set<ObserveDbUserDto> getUsers(ObserveDataSourceConfiguration dataSourceConfiguration) { Set<ObserveDbUserDto> users = Sets.newHashSet(); - ObserveDataSourceConfigurationTopiaSupport dataSourceConfiguration = serviceContext.getDataSourceConfiguration(); - // pas d'user pour les bases autres que postgresql if (dataSourceConfiguration instanceof ObserveDataSourceConfigurationTopiaPG) { - Optional<ObserveTopiaApplicationContext> optionalTopiaApplicationContext = ObserveTopiaApplicationContextFactory.getTopiaApplicationContextIfPresent(dataSourceConfiguration); + ObserveDataSourceConfigurationTopiaPG sourceConfiguration = (ObserveDataSourceConfigurationTopiaPG) dataSourceConfiguration; - if (optionalTopiaApplicationContext.isPresent()) { - ObserveTopiaConfiguration topiaConfiguration = optionalTopiaApplicationContext.get().getConfiguration(); + ObserveTopiaApplicationContext topiaApplicationContext = ObserveTopiaApplicationContextFactory.getOrCreateTopiaApplicationContext(sourceConfiguration); - ObserveJdbcHelper observeJdbcHelper = new ObserveJdbcHelper(topiaConfiguration); + ObserveTopiaConfiguration topiaConfiguration = topiaApplicationContext.getConfiguration(); - users.addAll(observeJdbcHelper.getUsers()); + ObserveJdbcHelper observeJdbcHelper = new ObserveJdbcHelper(topiaConfiguration); - } + users.addAll(observeJdbcHelper.getUsers()); } @@ -336,23 +333,20 @@ public class DataSourceServiceTopia extends ObserveServiceTopia implements DataS } @Override - public void applySecurity(Set<ObserveDbUserDto> users) { - ObserveDataSourceConfigurationTopiaSupport dataSourceConfiguration = serviceContext.getDataSourceConfiguration(); + public void applySecurity(ObserveDataSourceConfiguration dataSourceConfiguration, Set<ObserveDbUserDto> users) { // pas de securité pour les bases autres que postgresql if (dataSourceConfiguration instanceof ObserveDataSourceConfigurationTopiaPG) { - Optional<ObserveTopiaApplicationContext> optionalTopiaApplicationContext = ObserveTopiaApplicationContextFactory.getTopiaApplicationContextIfPresent(dataSourceConfiguration); + ObserveDataSourceConfigurationTopiaPG sourceConfiguration = (ObserveDataSourceConfigurationTopiaPG) dataSourceConfiguration; - if (optionalTopiaApplicationContext.isPresent()) { + ObserveTopiaApplicationContext optionalTopiaApplicationContext = ObserveTopiaApplicationContextFactory.getOrCreateTopiaApplicationContext(sourceConfiguration); - ObserveTopiaConfiguration topiaConfiguration = optionalTopiaApplicationContext.get().getConfiguration(); + ObserveTopiaConfiguration topiaConfiguration = optionalTopiaApplicationContext.getConfiguration(); - ObserveSecurityHelper securityHelper = new ObserveSecurityHelper(topiaConfiguration); + ObserveSecurityHelper securityHelper = new ObserveSecurityHelper(topiaConfiguration); - securityHelper.applySecurity(users, dataSourceConfiguration.isShowMigrationSql()); - - } + securityHelper.applySecurity(users, sourceConfiguration.isShowMigrationSql()); } @@ -371,11 +365,9 @@ public class DataSourceServiceTopia extends ObserveServiceTopia implements DataS } @Override - public void migrateData() { - - ObserveDataSourceConfigurationTopiaSupport dataSourceConfiguration = serviceContext.getDataSourceConfiguration(); + public void migrateData(ObserveDataSourceConfiguration dataSourceConfiguration) { - ObserveTopiaApplicationContext topiaApplicationContext = ObserveTopiaApplicationContextFactory.createTopiaApplicationContext(dataSourceConfiguration, false); + ObserveTopiaApplicationContext topiaApplicationContext = ObserveTopiaApplicationContextFactory.getOrCreateTopiaApplicationContext((ObserveDataSourceConfigurationTopiaSupport) dataSourceConfiguration); topiaApplicationContext.getMigrationService().runSchemaMigration(); -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.