Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.emf.cdo.server.db/src/org/eclipse/emf/cdo/server/internal/db/DBStore.java')
-rw-r--r--plugins/org.eclipse.emf.cdo.server.db/src/org/eclipse/emf/cdo/server/internal/db/DBStore.java16
1 files changed, 16 insertions, 0 deletions
diff --git a/plugins/org.eclipse.emf.cdo.server.db/src/org/eclipse/emf/cdo/server/internal/db/DBStore.java b/plugins/org.eclipse.emf.cdo.server.db/src/org/eclipse/emf/cdo/server/internal/db/DBStore.java
index 48036885cd..f6c6f144f8 100644
--- a/plugins/org.eclipse.emf.cdo.server.db/src/org/eclipse/emf/cdo/server/internal/db/DBStore.java
+++ b/plugins/org.eclipse.emf.cdo.server.db/src/org/eclipse/emf/cdo/server/internal/db/DBStore.java
@@ -27,8 +27,10 @@ import org.eclipse.emf.cdo.server.db.IDBStore;
import org.eclipse.emf.cdo.server.db.IDBStoreAccessor;
import org.eclipse.emf.cdo.server.db.IExternalReferenceManager;
import org.eclipse.emf.cdo.server.db.IMetaDataManager;
+import org.eclipse.emf.cdo.server.db.ITypeMappingRegistry;
import org.eclipse.emf.cdo.server.db.mapping.IMappingStrategy;
import org.eclipse.emf.cdo.server.internal.db.bundle.OM;
+import org.eclipse.emf.cdo.server.internal.db.mapping.TypeMappingRegistry;
import org.eclipse.emf.cdo.server.internal.db.messages.Messages;
import org.eclipse.emf.cdo.spi.server.LongIDStore;
import org.eclipse.emf.cdo.spi.server.StoreAccessorPool;
@@ -91,6 +93,8 @@ public class DBStore extends LongIDStore implements IDBStore, CDOAllRevisionsPro
private IMappingStrategy mappingStrategy;
+ private ITypeMappingRegistry typeMappingRegistry;
+
private IDBSchema dbSchema;
private IDBAdapter dbAdapter;
@@ -135,6 +139,11 @@ public class DBStore extends LongIDStore implements IDBStore, CDOAllRevisionsPro
return mappingStrategy;
}
+ public ITypeMappingRegistry getTypeMappingRegistry()
+ {
+ return typeMappingRegistry;
+ }
+
public void setMappingStrategy(IMappingStrategy mappingStrategy)
{
this.mappingStrategy = mappingStrategy;
@@ -436,6 +445,10 @@ public class DBStore extends LongIDStore implements IDBStore, CDOAllRevisionsPro
Connection connection = getConnection();
LifecycleUtil.activate(mappingStrategy);
+ // XXX Open issue: how to programmatically register typeMappings?
+ typeMappingRegistry = new TypeMappingRegistry();
+ LifecycleUtil.activate(typeMappingRegistry);
+
try
{
Set<IDBTable> createdTables = CDODBSchema.INSTANCE.create(dbAdapter, connection);
@@ -469,6 +482,9 @@ public class DBStore extends LongIDStore implements IDBStore, CDOAllRevisionsPro
LifecycleUtil.deactivate(externalReferenceManager);
externalReferenceManager = null;
+ LifecycleUtil.deactivate(typeMappingRegistry);
+ typeMappingRegistry = null;
+
LifecycleUtil.deactivate(mappingStrategy);
mappingStrategy = null;

Back to the top