From fc8a7f12cbb3774998eeb3c9c7dee3d1e3cb4073 Mon Sep 17 00:00:00 2001 From: Ricardo Santos Date: Tue, 14 Oct 2014 17:35:31 +0000 Subject: [PATCH] git-svn-id: https://svn.coded.pt/svn/SIPRP@2008 bb69d46d-e84e-40c8-a05a-06db0d633741 --- .../WebContent/WEB-INF/applicationContext.xml | 16 ++- .../properties/app.properties | 18 +++ .../pt/evolute/data/ProviderSpringBean.java | 104 +++++++++--------- .../fichasclinicas/logic/DocumentosLogic.java | 4 +- .../provider/DocumentosDataProvider.java | 2 +- 5 files changed, 78 insertions(+), 66 deletions(-) diff --git a/trunk/SiprpWebFichasClinicas/WebContent/WEB-INF/applicationContext.xml b/trunk/SiprpWebFichasClinicas/WebContent/WEB-INF/applicationContext.xml index 3651068c..bb2fbae5 100644 --- a/trunk/SiprpWebFichasClinicas/WebContent/WEB-INF/applicationContext.xml +++ b/trunk/SiprpWebFichasClinicas/WebContent/WEB-INF/applicationContext.xml @@ -16,16 +16,14 @@ - + - - db1.evo.pt - 5432 - rsantos - rsEvo2014 - shst_teste - ssl=true&sslfactory=org.postgresql.ssl.NonValidatingFactory - jdbc:postgresql:// + + siprp + + + + siprpdocs diff --git a/trunk/SiprpWebFichasClinicas/properties/app.properties b/trunk/SiprpWebFichasClinicas/properties/app.properties index cd645727..e4417ed5 100644 --- a/trunk/SiprpWebFichasClinicas/properties/app.properties +++ b/trunk/SiprpWebFichasClinicas/properties/app.properties @@ -8,6 +8,24 @@ db.parameters=ssl=true&sslfactory=org.postgresql.ssl.NonValidatingFactory db.password = rsEvo2014 db.url.prefix = jdbc:postgresql:// + +siprp.jnlp.resources.property.server.address = db1.evo.pt +siprp.jnlp.resources.property.server.port = 5432 +siprp.db.name = shst_teste +siprp.db.user = rsantos +siprp.db.parameters=ssl=true&sslfactory=org.postgresql.ssl.NonValidatingFactory +siprp.db.password = rsEvo2014 +siprp.db.url.prefix = jdbc:postgresql:// + +siprpdocs.jnlp.resources.property.server.address = db1.evo.pt +siprpdocs.jnlp.resources.property.server.port = 5432 +siprpdocs.db.name = shst_teste +siprpdocs.db.user = rsantos +siprpdocs.db.parameters=ssl=true&sslfactory=org.postgresql.ssl.NonValidatingFactory +siprpdocs.db.password = rsEvo2014 +siprpdocs.db.url.prefix = jdbc:postgresql:// + + web.ssl.truststore.file=jssecacerts web.ssl.truststore.pass=changeit diff --git a/trunk/SiprpWebFichasClinicas/src/pt/evolute/data/ProviderSpringBean.java b/trunk/SiprpWebFichasClinicas/src/pt/evolute/data/ProviderSpringBean.java index 1c33bac6..78ec7c43 100644 --- a/trunk/SiprpWebFichasClinicas/src/pt/evolute/data/ProviderSpringBean.java +++ b/trunk/SiprpWebFichasClinicas/src/pt/evolute/data/ProviderSpringBean.java @@ -18,6 +18,7 @@ import com.evolute.utils.db.DriverProvider; import com.evolute.utils.db.JDBCManager; import com.evolute.utils.error.ErrorLogger; import com.evolute.utils.sql.SQLQuery; +import com.evolute.utils.sql.Select; import com.evolute.utils.timer.Timer; public class ProviderSpringBean { @@ -33,9 +34,11 @@ public class ProviderSpringBean { private String parameters; private String databasePrefix; private String url; + private SQLQuery[] initQueries; private boolean readDefaults = true ; + private String prefix = ""; public ProviderSpringBean() @@ -47,12 +50,15 @@ public class ProviderSpringBean { if(ENTITY_PROVIDER != null) { + ((EvoDataProvider) ENTITY_PROVIDER).clearCache( ); ENTITY_PROVIDER.close(); + ENTITY_PROVIDER = null; } if(DBMANAGER != null) { DBMANAGER.close(); + DBMANAGER = null; } Timer.stop(); @@ -61,51 +67,29 @@ public class ProviderSpringBean { } - public synchronized ProviderInterface, EvoDataException> getENTITY_PROVIDER() { - if(ENTITY_PROVIDER == null) - { - try - { - init(); - } - catch (Exception e) - { - ErrorLogger.logException(e, Level.SEVERE); - } - } + public ProviderInterface, EvoDataException> getENTITY_PROVIDER() + { return ENTITY_PROVIDER; } - public synchronized DBManager getDBMANAGER() { - if(DBMANAGER == null) - { - try - { - init(); - } - catch (Exception e) - { - ErrorLogger.logException(e, Level.SEVERE); - } - } + public DBManager getDBMANAGER() + { return DBMANAGER; } - - - - - private void init() throws Exception + + public void init() throws Exception { if(readDefaults) { loadProperties(); } setupProperties(); - - DBMANAGER = new JDBCManager( url, username, password, 50,10, new SQLQuery[]{} ); + + DBMANAGER = new JDBCManager( url, username, password, 50,10, initQueries ); ConnectionIdentity conn = new ConnectionIdentity( url, username ); conn.setPassword( password ); + conn.setInitQueries(initQueries); ENTITY_PROVIDER = new EvoDataProvider(conn); } @@ -121,22 +105,29 @@ public class ProviderSpringBean { } catch (PropertiesException e) { - e.printStackTrace(System.out); + ErrorLogger.logException(e,Level.SEVERE); } } - server = EvoDefaultPropertiesLoader.getInstance().findProperty( EvoPropertyKey.DB.CONNECTION.HOSTNAME ); - port = EvoDefaultPropertiesLoader.getInstance().findProperty( EvoPropertyKey.DB.CONNECTION.PORT ); - username = EvoDefaultPropertiesLoader.getInstance().findProperty( EvoPropertyKey.DB.USER ); - password = EvoDefaultPropertiesLoader.getInstance().findProperty( EvoPropertyKey.DB.PASSWORD ); - database = EvoDefaultPropertiesLoader.getInstance().findProperty( EvoPropertyKey.DB.NAME ); - parameters = EvoDefaultPropertiesLoader.getInstance().findProperty( EvoPropertyKey.DB.PARAMETERS, "" ); - databasePrefix = EvoDefaultPropertiesLoader.getInstance().findProperty( EvoPropertyKey.DB.CONNECTION.PREFIX, EvoPropertyKey.DEFAULT_DATABASE_PREFIX ); - url = EvoDefaultPropertiesLoader.getInstance().findProperty( EvoPropertyKey.DB.CONNECTION.DB_URL_FULL ); - if( EvoDefaultPropertiesLoader.getInstance().findProperty( EvoPropertyKey.DB.ALLOW_JNLP_OVERRIDE, false ) ) + server = EvoDefaultPropertiesLoader.getInstance().findProperty( prefix + EvoPropertyKey.DB.CONNECTION.HOSTNAME ); + port = EvoDefaultPropertiesLoader.getInstance().findProperty( prefix + EvoPropertyKey.DB.CONNECTION.PORT ); + username = EvoDefaultPropertiesLoader.getInstance().findProperty( prefix + EvoPropertyKey.DB.USER ); + password = EvoDefaultPropertiesLoader.getInstance().findProperty( prefix + EvoPropertyKey.DB.PASSWORD ); + database = EvoDefaultPropertiesLoader.getInstance().findProperty( prefix + EvoPropertyKey.DB.NAME ); + parameters = EvoDefaultPropertiesLoader.getInstance().findProperty( prefix + EvoPropertyKey.DB.PARAMETERS, "" ); + databasePrefix = EvoDefaultPropertiesLoader.getInstance().findProperty( prefix + EvoPropertyKey.DB.CONNECTION.PREFIX, EvoPropertyKey.DEFAULT_DATABASE_PREFIX ); + url = EvoDefaultPropertiesLoader.getInstance().findProperty( prefix + EvoPropertyKey.DB.CONNECTION.DB_URL_FULL ); + if( EvoDefaultPropertiesLoader.getInstance().findProperty( prefix + EvoPropertyKey.DB.ALLOW_JNLP_OVERRIDE, false ) ) { - url = EvoDefaultPropertiesLoader.getInstance().findProperty( EvoPropertyKey.DB.CONNECTION.DB_URL_JNLP_FULL, url ); + url = EvoDefaultPropertiesLoader.getInstance().findProperty( prefix + EvoPropertyKey.DB.CONNECTION.DB_URL_JNLP_FULL, url ); } + + String initQueriesString = EvoDefaultPropertiesLoader.getInstance().findProperty( prefix + "db.initQueries" ); + if(null != initQueriesString && !initQueriesString.isEmpty()) + { + String[] initQueriesStrings = initQueriesString.split(";"); + setInitQueries(initQueriesStrings); + } } private void setupProperties() @@ -155,19 +146,8 @@ public class ProviderSpringBean { } } - public synchronized void setAsSingletonDefaults() + public void setAsSingletonDefaults() { - if(ENTITY_PROVIDER == null || DBMANAGER == null) - { - try - { - init(); - } - catch (Exception e) - { - ErrorLogger.logException(e, Level.SEVERE); - } - } Singleton.setInstance(Singleton.DEFAULT_EVO_DATA_PROVIDER, ENTITY_PROVIDER); Singleton.setInstance(Singleton.DEFAULT_DBMANAGER, DBMANAGER); Singleton.setInstance(Singleton.DEFAULT_OBJECT_PROVIDER, ENTITY_PROVIDER ); @@ -214,6 +194,22 @@ public class ProviderSpringBean { this.url = url; readDefaults = false ; } + + public void setInitQueries(String[] initQueries) + { + + this.initQueries = new SQLQuery[initQueries.length] ; + for(int i=0;i