Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--plugins/org.eclipse.emf.teneo.jpox/plugin.xml25
-rw-r--r--plugins/org.eclipse.emf.teneo.jpox/src/org/eclipse/emf/teneo/jpox/JpoxDataStore.java39
-rw-r--r--plugins/org.eclipse.emf.teneo.jpox/src/plugin.xml10
3 files changed, 33 insertions, 41 deletions
diff --git a/plugins/org.eclipse.emf.teneo.jpox/plugin.xml b/plugins/org.eclipse.emf.teneo.jpox/plugin.xml
deleted file mode 100644
index 4f4c69ce2..000000000
--- a/plugins/org.eclipse.emf.teneo.jpox/plugin.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0"?>
-<?eclipse version="3.2"?>
-<plugin id="teneo.jpox" name="JPOX plug-ins" provider-name="Eclipse.EMFT.Teneo">
- <extension point="org.jpox.cache_level1">
- <cache name="org.eclipse.emf.teneo.jpox.cache.EMFWeakRefCache" class-name="org.eclipse.emf.teneo.jpox.cache.EMFWeakRefCache"/>
- <cache name="org.eclipse.emf.teneo.jpox.cache.EMFHardRefCache" class-name="org.eclipse.emf.teneo.jpox.cache.EMFHardRefCache"/>
- <cache name="org.eclipse.emf.teneo.jpox.cache.EMFNullCache" class-name="org.eclipse.emf.teneo.jpox.cache.EMFNullCache"/>
- <cache name="org.eclipse.emf.teneo.jpox.cache.EMFSoftRefCache" class-name="org.eclipse.emf.teneo.jpox.cache.EMFSoftRefCache"/>
- </extension>
- <extension point="org.jpox.store_mapping">
- <mapping java-type="java.util.List" mapping-class="org.eclipse.emf.teneo.jpox.elist.EListMapping"
- sco-wrapper="org.eclipse.emf.teneo.jpox.elist.EListWrapper"/>
- <mapping java-type="org.eclipse.emf.common.util.EList" mapping-class="org.eclipse.emf.teneo.jpox.elist.EListMapping"
- sco-wrapper="org.eclipse.emf.teneo.jpox.elist.EListWrapper"/>
- <mapping java-type="org.eclipse.emf.common.util.EMap" mapping-class="org.eclipse.emf.teneo.jpox.elist.EListMapping"
- sco-wrapper="org.eclipse.emf.teneo.jpox.elist.EListWrapper"/>
- <mapping java-type="org.eclipse.emf.ecore.util.FeatureMap" mapping-class="org.eclipse.emf.teneo.jpox.elist.FeatureMapMapping"
- sco-wrapper="org.eclipse.emf.teneo.jpox.elist.FeatureMapWrapper"/>
- <mapping java-type="org.eclipse.emf.ecore.EObject" mapping-class="org.eclipse.emf.teneo.jpox.mapping.EObjectMapping"/>
-
- <mapping java-type="org.eclipse.emf.common.util.AbstractEnumerator"
- mapping-class="org.eclipse.emf.teneo.jpox.mapping.ENumMapping"/>
-
- </extension>
-</plugin>
diff --git a/plugins/org.eclipse.emf.teneo.jpox/src/org/eclipse/emf/teneo/jpox/JpoxDataStore.java b/plugins/org.eclipse.emf.teneo.jpox/src/org/eclipse/emf/teneo/jpox/JpoxDataStore.java
index 97716b79a..778d78cfd 100644
--- a/plugins/org.eclipse.emf.teneo.jpox/src/org/eclipse/emf/teneo/jpox/JpoxDataStore.java
+++ b/plugins/org.eclipse.emf.teneo.jpox/src/org/eclipse/emf/teneo/jpox/JpoxDataStore.java
@@ -11,7 +11,7 @@
* Martin Taal
* </copyright>
*
- * $Id: JpoxDataStore.java,v 1.6 2006/10/26 17:01:08 mtaal Exp $
+ * $Id: JpoxDataStore.java,v 1.7 2006/10/26 17:34:47 mtaal Exp $
*/
package org.eclipse.emf.teneo.jpox;
@@ -57,6 +57,10 @@ import org.eclipse.emf.teneo.ERuntime;
import org.eclipse.emf.teneo.PersistenceOptions;
import org.eclipse.emf.teneo.annotations.pannotation.InheritanceType;
import org.eclipse.emf.teneo.classloader.ClassLoaderResolver;
+import org.eclipse.emf.teneo.jpox.cache.EMFHardRefCache;
+import org.eclipse.emf.teneo.jpox.cache.EMFNullCache;
+import org.eclipse.emf.teneo.jpox.cache.EMFSoftRefCache;
+import org.eclipse.emf.teneo.jpox.cache.EMFWeakRefCache;
import org.eclipse.emf.teneo.jpox.elist.AnyFeatureMapEntry;
import org.eclipse.emf.teneo.jpox.elist.EListMapping;
import org.eclipse.emf.teneo.jpox.elist.EListWrapper;
@@ -82,6 +86,9 @@ import org.jpox.metadata.AbstractPropertyMetaData;
import org.jpox.metadata.ExtensionMetaData;
import org.jpox.metadata.JDOEntityResolver;
import org.jpox.metadata.MetaDataManager;
+import org.jpox.plugin.ConfigurationElement;
+import org.jpox.plugin.Extension;
+import org.jpox.plugin.ExtensionPoint;
import org.jpox.store.StoreManager;
import org.jpox.util.ClassUtils;
import org.w3c.dom.Element;
@@ -93,7 +100,7 @@ import org.w3c.dom.NodeList;
* contained in other classes.
*
* @author <a href="mailto:mtaal@elver.org">Martin Taal</a>
- * @version $Revision: 1.6 $ $Date: 2006/10/26 17:01:08 $
+ * @version $Revision: 1.7 $ $Date: 2006/10/26 17:34:47 $
*/
public class JpoxDataStore {
@@ -259,10 +266,30 @@ public class JpoxDataStore {
final ClassLoader contextLoader = ClassLoaderResolver.getClassLoader();
final org.jpox.ClassLoaderResolver clr = initPmf.getPMFContext().getClassLoaderResolver(contextLoader);
- //initPmf.getPMFContext().getPluginManager().getExtensionPoint("org.jpox.cache_level1").
-
-// Extension extension = new Extension();
-
+ log.debug("Registering level 1 Cache Implementations");
+ final ExtensionPoint ep = initPmf.getPMFContext().getPluginManager().getExtensionPoint("org.jpox.cache_level1");
+ final Extension extension = new Extension(ep, ep.getPlugin());
+ ep.addExtension(extension);
+ final ConfigurationElement ce1 = new ConfigurationElement(extension, "cache", null);
+ ce1.putAttribute("name", EMFWeakRefCache.class.getName());
+ ce1.putAttribute("class-name", EMFWeakRefCache.class.getName());
+ extension.addConfigurationElement(ce1);
+ log.debug("Registered " + EMFWeakRefCache.class.getName());
+ final ConfigurationElement ce2 = new ConfigurationElement(extension, "cache", null);
+ ce2.putAttribute("name", EMFHardRefCache.class.getName());
+ ce2.putAttribute("class-name", EMFHardRefCache.class.getName());
+ extension.addConfigurationElement(ce2);
+ log.debug("Registered " + EMFHardRefCache.class.getName());
+ final ConfigurationElement ce3 = new ConfigurationElement(extension, "cache", null);
+ ce3.putAttribute("name", EMFNullCache.class.getName());
+ ce3.putAttribute("class-name", EMFNullCache.class.getName());
+ extension.addConfigurationElement(ce3);
+ log.debug("Registered " + EMFNullCache.class.getName());
+ final ConfigurationElement ce4 = new ConfigurationElement(extension, "cache", null);
+ ce4.putAttribute("name", EMFSoftRefCache.class.getName());
+ ce4.putAttribute("class-name", EMFSoftRefCache.class.getName());
+ extension.addConfigurationElement(ce4);
+ log.debug("Registered " + EMFSoftRefCache.class.getName());
tm.addType(initPmf.getPMFContext().getPluginManager(),
"org.jpox.store_mapping", List.class.getName(), EListMapping.class.getName(),
diff --git a/plugins/org.eclipse.emf.teneo.jpox/src/plugin.xml b/plugins/org.eclipse.emf.teneo.jpox/src/plugin.xml
deleted file mode 100644
index 22dc57370..000000000
--- a/plugins/org.eclipse.emf.teneo.jpox/src/plugin.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0"?>
-<?eclipse version="3.2"?>
-<plugin id="teneo.jpox" name="JPOX plug-ins" provider-name="Eclipse.EMFT.Teneo">
- <extension point="org.jpox.cache_level1">
- <cache name="org.eclipse.emf.teneo.jpox.cache.EMFWeakRefCache" class-name="org.eclipse.emf.teneo.jpox.cache.EMFWeakRefCache"/>
- <cache name="org.eclipse.emf.teneo.jpox.cache.EMFHardRefCache" class-name="org.eclipse.emf.teneo.jpox.cache.EMFHardRefCache"/>
- <cache name="org.eclipse.emf.teneo.jpox.cache.EMFNullCache" class-name="org.eclipse.emf.teneo.jpox.cache.EMFNullCache"/>
- <cache name="org.eclipse.emf.teneo.jpox.cache.EMFSoftRefCache" class-name="org.eclipse.emf.teneo.jpox.cache.EMFSoftRefCache"/>
- </extension>
-</plugin>

Back to the top