diff options
author | Roberto E. Escobar | 2012-07-17 19:32:07 +0000 |
---|---|---|
committer | Roberto E. Escobar | 2012-07-20 21:26:07 +0000 |
commit | 790167a8b2a5ffa9e062e636c8c1da4400d06879 (patch) | |
tree | fa8b78ada6b1778d15460c50c82b4062d30f0105 /plugins/org.eclipse.osee.database | |
parent | 52c15b64dfac77388bf65a7d281b75ff2880d406 (diff) | |
download | org.eclipse.osee-790167a8b2a5ffa9e062e636c8c1da4400d06879.tar.gz org.eclipse.osee-790167a8b2a5ffa9e062e636c8c1da4400d06879.tar.xz org.eclipse.osee-790167a8b2a5ffa9e062e636c8c1da4400d06879.zip |
feature[ats_M5LLE]: Cleanup database service dependencies
Fix database service exceptions on stop bundle
Clean-up service dependencies and circular references
Diffstat (limited to 'plugins/org.eclipse.osee.database')
3 files changed, 16 insertions, 5 deletions
diff --git a/plugins/org.eclipse.osee.database/META-INF/MANIFEST.MF b/plugins/org.eclipse.osee.database/META-INF/MANIFEST.MF index 905558cd4d0..ea8de7b398d 100644 --- a/plugins/org.eclipse.osee.database/META-INF/MANIFEST.MF +++ b/plugins/org.eclipse.osee.database/META-INF/MANIFEST.MF @@ -10,4 +10,6 @@ Import-Package: org.eclipse.osee.framework.core.data, org.eclipse.osee.framework.core.exception, org.eclipse.osee.framework.database.core, org.eclipse.osee.logger -Require-Bundle: org.eclipse.core.runtime +Require-Bundle: org.eclipse.core.runtime, + org.eclipse.osee.framework.database +Bundle-ActivationPolicy: lazy diff --git a/plugins/org.eclipse.osee.database/OSGI-INF/default.database.info.provider.xml b/plugins/org.eclipse.osee.database/OSGI-INF/default.database.info.provider.xml index a04c4644205..d7b0d20a9fb 100644 --- a/plugins/org.eclipse.osee.database/OSGI-INF/default.database.info.provider.xml +++ b/plugins/org.eclipse.osee.database/OSGI-INF/default.database.info.provider.xml @@ -1,8 +1,9 @@ <?xml version="1.0" encoding="UTF-8"?> -<scr:component xmlns:scr="http://www.osgi.org/xmlns/scr/v1.1.0" name="org.eclipse.osee.database"> +<scr:component xmlns:scr="http://www.osgi.org/xmlns/scr/v1.1.0" immediate="true" name="org.eclipse.osee.database"> <implementation class="org.eclipse.osee.database.internal.DefaultDatabaseInfoProvider"/> <service> <provide interface="org.eclipse.osee.framework.database.core.IDatabaseInfoProvider"/> </service> <reference bind="setLogger" cardinality="1..1" interface="org.eclipse.osee.logger.Log" name="Log" policy="static"/> + <reference bind="setDatabaseInfoRegistry" cardinality="1..1" interface="org.eclipse.osee.framework.database.DatabaseInfoRegistry" name="DatabaseInfoRegistry" policy="static"/> </scr:component> diff --git a/plugins/org.eclipse.osee.database/src/org/eclipse/osee/database/internal/DefaultDatabaseInfoProvider.java b/plugins/org.eclipse.osee.database/src/org/eclipse/osee/database/internal/DefaultDatabaseInfoProvider.java index 4f6a3271c4d..f23f5c099b8 100644 --- a/plugins/org.eclipse.osee.database/src/org/eclipse/osee/database/internal/DefaultDatabaseInfoProvider.java +++ b/plugins/org.eclipse.osee.database/src/org/eclipse/osee/database/internal/DefaultDatabaseInfoProvider.java @@ -12,7 +12,7 @@ package org.eclipse.osee.database.internal; import org.eclipse.osee.framework.core.data.IDatabaseInfo; import org.eclipse.osee.framework.core.exception.OseeDataStoreException; -import org.eclipse.osee.framework.database.core.DatabaseInfoManager; +import org.eclipse.osee.framework.database.DatabaseInfoRegistry; import org.eclipse.osee.framework.database.core.IDatabaseInfoProvider; import org.eclipse.osee.logger.Log; @@ -22,19 +22,27 @@ import org.eclipse.osee.logger.Log; public class DefaultDatabaseInfoProvider implements IDatabaseInfoProvider { private Log logger; + private DatabaseInfoRegistry registry; public void setLogger(Log logger) { this.logger = logger; } + public void setDatabaseInfoRegistry(DatabaseInfoRegistry registry) { + this.registry = registry; + } + + private DatabaseInfoRegistry getDatabaseInfoRegistry() { + return registry; + } + private Log getLogger() { return logger; } @Override public IDatabaseInfo getDatabaseInfo() throws OseeDataStoreException { - IDatabaseInfo databaseInfo = null; - databaseInfo = DatabaseInfoManager.getDefault(); + IDatabaseInfo databaseInfo = getDatabaseInfoRegistry().getSelectedDatabaseInfo(); getLogger().info("%s [%s as %s]", databaseInfo.getDriver(), databaseInfo.getDatabaseName(), databaseInfo.getDatabaseLoginName()); return databaseInfo; |