Added: 
incubator/stanbol/trunk/kres/ontologymanager/store/ext/org.semanticweb.owlapi.owllink/src/main/resources/local-maven-repository/org/semanticweb/owlapi/owllink/maven-metadata-local.xml
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/ontologymanager/store/ext/org.semanticweb.owlapi.owllink/src/main/resources/local-maven-repository/org/semanticweb/owlapi/owllink/maven-metadata-local.xml?rev=1086954&view=auto
==============================================================================
--- 
incubator/stanbol/trunk/kres/ontologymanager/store/ext/org.semanticweb.owlapi.owllink/src/main/resources/local-maven-repository/org/semanticweb/owlapi/owllink/maven-metadata-local.xml
 (added)
+++ 
incubator/stanbol/trunk/kres/ontologymanager/store/ext/org.semanticweb.owlapi.owllink/src/main/resources/local-maven-repository/org/semanticweb/owlapi/owllink/maven-metadata-local.xml
 Wed Mar 30 13:43:53 2011
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<metadata>
+  <groupId>org.semanticweb.owlapi</groupId>
+  <artifactId>owllink</artifactId>
+  <version>1.0.2</version>
+  <versioning>
+    <versions>
+      <version>1.0.2</version>
+    </versions>
+    <lastUpdated>20100826073053</lastUpdated>
+  </versioning>
+</metadata>

Propchange: 
incubator/stanbol/trunk/kres/ontologymanager/store/ext/org.semanticweb.owlapi.owllink/src/main/resources/local-maven-repository/org/semanticweb/owlapi/owllink/maven-metadata-local.xml
------------------------------------------------------------------------------
    svn:executable = *

Added: 
incubator/stanbol/trunk/kres/ontologymanager/store/ext/org.semanticweb.owlapi/pom.xml
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/ontologymanager/store/ext/org.semanticweb.owlapi/pom.xml?rev=1086954&view=auto
==============================================================================
--- 
incubator/stanbol/trunk/kres/ontologymanager/store/ext/org.semanticweb.owlapi/pom.xml
 (added)
+++ 
incubator/stanbol/trunk/kres/ontologymanager/store/ext/org.semanticweb.owlapi/pom.xml
 Wed Mar 30 13:43:53 2011
@@ -0,0 +1,64 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+       xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd";>
+
+       <parent>
+               
<artifactId>org.apache.stanbol.ontologymanager.store.parent</artifactId>
+               <groupId>org.apache.stanbol</groupId>
+               <version>0.9-SNAPSHOT</version>
+               <relativePath>../parent</relativePath>
+       </parent>
+       
+       <modelVersion>4.0.0</modelVersion>
+       <artifactId>org.semanticweb.owlapi</artifactId>
+       <packaging>bundle</packaging>
+       <version>3.0.0-SNAPSHOT</version>
+
+       <name>Apache Stanbol Ontology Manager Store Ext - OWLApi OSGI Bundle  
</name>
+       <description>OWLApi OSGI Bundle</description>
+       
+       <repositories>
+               <repository>
+                       <releases>
+                               <updatePolicy>always</updatePolicy>
+                       </releases>
+                       <snapshots>
+                               <updatePolicy>always</updatePolicy>
+                       </snapshots>
+                       <id>local-owlapi-repo</id>
+                       
<url>file://localhost/${project.basedir}/src/main/resources/local-maven-repository</url>
+               </repository>
+       </repositories>
+               
+       <build>
+               <plugins>
+                       <plugin>
+                               <groupId>org.apache.felix</groupId>
+                               <artifactId>maven-bundle-plugin</artifactId>
+                               <extensions>true</extensions>
+                               <configuration>
+                                       <instructions>
+                                               
<Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
+                                               
<Embed-Dependency>*;artifactId=owlapi</Embed-Dependency>
+                                               
<Embed-Transitive>true</Embed-Transitive>
+                                               <Export-Package>
+                                                       
org.semanticweb.owlapi.*,
+                                                       
com.clarkparsia.owlapi.*,
+                                                       de.uulm.ecs.*,
+                                                       org.coode.*,
+                                                       uk.ac.manchester.cs.*
+                                               </Export-Package>
+                                       </instructions>
+                               </configuration>
+                       </plugin>
+               </plugins>
+       </build>
+       
+       <dependencies>
+               <dependency>
+                       <groupId>org.semanticweb.owlapi</groupId>
+                       <artifactId>owlapi</artifactId>
+                       <scope>compile</scope>
+               </dependency>
+       </dependencies>
+       
+</project>

Propchange: 
incubator/stanbol/trunk/kres/ontologymanager/store/ext/org.semanticweb.owlapi/pom.xml
------------------------------------------------------------------------------
    svn:executable = *

Added: 
incubator/stanbol/trunk/kres/ontologymanager/store/ext/org.semanticweb.owlapi/src/main/resources/local-maven-repository/org/semanticweb/owlapi/owlapi/3.0.0/owlapi-3.0.0.jar
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/ontologymanager/store/ext/org.semanticweb.owlapi/src/main/resources/local-maven-repository/org/semanticweb/owlapi/owlapi/3.0.0/owlapi-3.0.0.jar?rev=1086954&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
incubator/stanbol/trunk/kres/ontologymanager/store/ext/org.semanticweb.owlapi/src/main/resources/local-maven-repository/org/semanticweb/owlapi/owlapi/3.0.0/owlapi-3.0.0.jar
------------------------------------------------------------------------------
    svn:executable = *

Propchange: 
incubator/stanbol/trunk/kres/ontologymanager/store/ext/org.semanticweb.owlapi/src/main/resources/local-maven-repository/org/semanticweb/owlapi/owlapi/3.0.0/owlapi-3.0.0.jar
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
incubator/stanbol/trunk/kres/ontologymanager/store/ext/org.semanticweb.owlapi/src/main/resources/local-maven-repository/org/semanticweb/owlapi/owlapi/3.0.0/owlapi-3.0.0.pom
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/ontologymanager/store/ext/org.semanticweb.owlapi/src/main/resources/local-maven-repository/org/semanticweb/owlapi/owlapi/3.0.0/owlapi-3.0.0.pom?rev=1086954&view=auto
==============================================================================
--- 
incubator/stanbol/trunk/kres/ontologymanager/store/ext/org.semanticweb.owlapi/src/main/resources/local-maven-repository/org/semanticweb/owlapi/owlapi/3.0.0/owlapi-3.0.0.pom
 (added)
+++ 
incubator/stanbol/trunk/kres/ontologymanager/store/ext/org.semanticweb.owlapi/src/main/resources/local-maven-repository/org/semanticweb/owlapi/owlapi/3.0.0/owlapi-3.0.0.pom
 Wed Mar 30 13:43:53 2011
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd"; 
xmlns="http://maven.apache.org/POM/4.0.0";
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";>
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>org.semanticweb.owlapi</groupId>
+  <artifactId>owlapi</artifactId>
+  <version>3.0.0</version>
+  <description>POM was created from install:install-file</description>
+</project>

Propchange: 
incubator/stanbol/trunk/kres/ontologymanager/store/ext/org.semanticweb.owlapi/src/main/resources/local-maven-repository/org/semanticweb/owlapi/owlapi/3.0.0/owlapi-3.0.0.pom
------------------------------------------------------------------------------
    svn:executable = *

Added: 
incubator/stanbol/trunk/kres/ontologymanager/store/ext/org.semanticweb.owlapi/src/main/resources/local-maven-repository/org/semanticweb/owlapi/owlapi/maven-metadata-local.xml
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/ontologymanager/store/ext/org.semanticweb.owlapi/src/main/resources/local-maven-repository/org/semanticweb/owlapi/owlapi/maven-metadata-local.xml?rev=1086954&view=auto
==============================================================================
--- 
incubator/stanbol/trunk/kres/ontologymanager/store/ext/org.semanticweb.owlapi/src/main/resources/local-maven-repository/org/semanticweb/owlapi/owlapi/maven-metadata-local.xml
 (added)
+++ 
incubator/stanbol/trunk/kres/ontologymanager/store/ext/org.semanticweb.owlapi/src/main/resources/local-maven-repository/org/semanticweb/owlapi/owlapi/maven-metadata-local.xml
 Wed Mar 30 13:43:53 2011
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<metadata>
+  <groupId>org.semanticweb.owlapi</groupId>
+  <artifactId>owlapi</artifactId>
+  <version>3.0.0</version>
+  <versioning>
+    <versions>
+      <version>3.0.0</version>
+    </versions>
+    <lastUpdated>20100826084032</lastUpdated>
+  </versioning>
+</metadata>

Propchange: 
incubator/stanbol/trunk/kres/ontologymanager/store/ext/org.semanticweb.owlapi/src/main/resources/local-maven-repository/org/semanticweb/owlapi/owlapi/maven-metadata-local.xml
------------------------------------------------------------------------------
    svn:executable = *

Added: 
incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/README.txt
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/README.txt?rev=1086954&view=auto
==============================================================================
--- incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/README.txt 
(added)
+++ incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/README.txt 
Wed Mar 30 13:43:53 2011
@@ -0,0 +1,19 @@
+IKS FISE Persistence Store Adapter
+==================================
+
+This bundle implements a storage engine for FISE that stores a ContentItem's 
metadata in a persistence store and its content in a file.
+It implements the eu.iksproject.fise.servicesapi.Store interface.
+
+
+How to deploy
+=============
+
+after 
+>mvn clean install
+you can upload the jars in target folder to felix
+
+Run
+===
+see README.txt of eu.iksproject.persistencestore.rest
+
+Remember that all other components that provide the service 
eu.iksproject.fise.servicesapi.Store should be deactivated.
\ No newline at end of file

Propchange: 
incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/README.txt
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/pom.xml
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/pom.xml?rev=1086954&view=auto
==============================================================================
--- incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/pom.xml 
(added)
+++ incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/pom.xml Wed 
Mar 30 13:43:53 2011
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+       xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd";>
+       <modelVersion>4.0.0</modelVersion>
+       
+       <parent>
+               
<artifactId>org.apache.stanbol.ontologymanager.store.parent</artifactId>
+               <groupId>org.apache.stanbol</groupId>
+               <version>0.9-SNAPSHOT</version>
+               <relativePath>../parent</relativePath>
+       </parent>
+       
+       
<artifactId>org.apache.stanbol.ontologymanager.store.adapter</artifactId>
+       <packaging>bundle</packaging>
+
+       <name>Apache Stanbol Ontology Manager Store - Enhancer Store  
Adapter</name>
+       <description>Implementation of the Enhancer Store API.</description>
+       
+       <build>
+               <plugins>
+                       <plugin>
+                               <groupId>org.apache.felix</groupId>
+                               <artifactId>maven-bundle-plugin</artifactId>
+                               <extensions>true</extensions>
+                       </plugin>
+                       <plugin>
+                               <groupId>org.apache.felix</groupId>
+                               <artifactId>maven-scr-plugin</artifactId>
+                       </plugin>
+               </plugins>
+       </build>
+
+       <dependencies>
+               <dependency>
+                       <groupId>org.apache.stanbol</groupId>
+                       
<artifactId>org.apache.stanbol.enhancer.servicesapi</artifactId>
+               </dependency>
+               
+               <dependency>
+                       <groupId>org.apache.stanbol</groupId>
+                       
<artifactId>org.apache.stanbol.ontologymanager.store.api</artifactId>
+               </dependency>
+
+               <dependency>
+                       <groupId>org.apache.clerezza</groupId>
+                       <artifactId>org.apache.clerezza.rdf.core</artifactId>
+                       <version>0.12-incubating-SNAPSHOT</version>
+                       <scope>provided</scope>
+               </dependency>
+               
+               <dependency>
+                       <groupId>org.apache.clerezza</groupId>
+                       
<artifactId>org.apache.clerezza.rdf.simple.storage</artifactId>
+               </dependency>
+               <dependency>
+                       <groupId>org.osgi</groupId>
+                       <artifactId>org.osgi.compendium</artifactId>
+               </dependency>
+               <dependency>
+                       <groupId>org.apache.clerezza</groupId>
+                       
<artifactId>org.apache.clerezza.rdf.jena.parser</artifactId>
+                       <optional>true</optional>
+               </dependency>
+               <dependency>
+                       <groupId>org.apache.clerezza</groupId>
+                       
<artifactId>org.apache.clerezza.rdf.jena.serializer</artifactId>
+                       <optional>true</optional>
+               </dependency>
+       </dependencies>
+</project>
\ No newline at end of file

Propchange: 
incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/pom.xml
------------------------------------------------------------------------------
    svn:executable = *

Added: 
incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/src/main/java/org/apache/stanbol/ontologymanager/store/adapter/ContentManager.java
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/src/main/java/org/apache/stanbol/ontologymanager/store/adapter/ContentManager.java?rev=1086954&view=auto
==============================================================================
--- 
incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/src/main/java/org/apache/stanbol/ontologymanager/store/adapter/ContentManager.java
 (added)
+++ 
incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/src/main/java/org/apache/stanbol/ontologymanager/store/adapter/ContentManager.java
 Wed Mar 30 13:43:53 2011
@@ -0,0 +1,183 @@
+package org.apache.stanbol.ontologymanager.store.adapter;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Properties;
+import java.util.UUID;
+import java.util.Map.Entry;
+
+import org.apache.stanbol.ontologymanager.store.adapter.util.IOUtil;
+import org.apache.stanbol.ontologymanager.store.adapter.util.Triple;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public class ContentManager {
+
+    private static final Logger LOGGER = 
LoggerFactory.getLogger(ContentManager.class.getName());
+
+    private static final String CONTENT_INDEX_FILE = 
"content_index.properties";
+
+    private Map<String,Triple<String,byte[],String>> contentMap = new 
HashMap<String,Triple<String,byte[],String>>();
+
+    private Properties contentIndex = new Properties();
+
+    private File contentFolder;
+
+    public ContentManager(File contentFolder) {
+
+        File indexFile;
+
+        this.contentFolder = contentFolder;
+        Thread.currentThread().getContextClassLoader();
+        checkContentFolder();
+        LOGGER.info("Content folder OK");
+
+        indexFile = getIndexFile();
+        LOGGER.info("Index file OK");
+
+        loadIndexEntries(indexFile);
+        LOGGER.info("Content loaded OK");
+
+        printContentMap();
+
+    }
+
+    public void put(String id, Triple<String,byte[],String> triple) {
+        IOUtil ioUtil = IOUtil.getInstance();
+        UUID contentAlias = UUID.randomUUID();
+        String contentType = triple.getEntry1();
+        byte[] content = triple.getEntry2();
+        String uri = triple.getEntry3();
+        if (contentMap.get(id) != null) {
+            LOGGER.warn("Overriding previous content for: " + id);
+            delete(id);
+        }
+
+        contentIndex.put(id,
+            new Triple<String,String,String>(contentType, 
contentAlias.toString(), uri).toString());
+
+        File f = new File(contentFolder.getAbsolutePath() + "/" + 
contentAlias);
+        try {
+            f.createNewFile();
+            ioUtil.writeBytesToFile(f, content);
+        } catch (IOException e) {
+            LOGGER.error("Unable to create file: " + f.getAbsolutePath());
+            delete(id);
+            return;
+        }
+
+        contentMap.put(id, new Triple<String,byte[],String>(contentType, 
content, uri));
+        store();
+    }
+
+    public void delete(String id) {
+        File contentFile = new File(contentFolder.getAbsolutePath() + "/"
+                                    + 
Triple.createTriple(contentIndex.getProperty(id)).getEntry2());
+        contentFile.delete();
+        contentIndex.remove(id);
+        contentMap.remove(id);
+    }
+
+    public Triple<String,byte[],String> getContent(String id) {
+        return contentMap.get(id);
+    }
+
+    public void store() {
+        IOUtil ioUtil = IOUtil.getInstance();
+        try {
+            contentIndex.store(new 
FileOutputStream(contentFolder.getAbsolutePath() + "/"
+                                                    + CONTENT_INDEX_FILE), 
"Content Index");
+
+            for (Entry<String,Triple<String,byte[],String>> item : 
contentMap.entrySet()) {
+                String fileName = 
contentIndex.getProperty(item.getKey()).split(",")[1];
+
+                File file = new File(contentFolder.getAbsolutePath() + "/" + 
fileName);
+                if (!file.exists()) {
+                    LOGGER.warn("Content file for " + 
item.getValue().getEntry1()
+                                + " does not exist. Sycnhronizing ...");
+                    ioUtil.writeBytesToFile(file, item.getValue().getEntry2());
+                    LOGGER.info(". Sycnhronization Completed ...");
+                }
+            }
+        } catch (FileNotFoundException e) {
+            LOGGER.error("Cannot find file", e);
+        } catch (IOException e) {
+            LOGGER.error("IOException", e);
+        }
+    }
+
+    private void loadIndexEntries(File indexFile) {
+        IOUtil ioUtil = IOUtil.getInstance();
+        List<Object> danglingItems = new ArrayList<Object>();
+
+        // Read index porperties file
+        try {
+            contentIndex.load(new FileInputStream(indexFile));
+        } catch (FileNotFoundException e) {
+            LOGGER.error("Can not get index file");
+        } catch (IOException e) {
+            LOGGER.error("Can not get content of index file: " + 
e.getMessage());
+        }
+
+        // Populate in memory cache with real content-contentType-uri triples
+        for (Entry<Object,Object> item : contentIndex.entrySet()) {
+            Triple<String,String,String> metaTriple = 
Triple.createTriple((String) item.getValue());
+            File contentFile = new File(contentFolder, metaTriple.getEntry2());
+            byte[] content = null;
+            try {
+                content = ioUtil.getBytesFromFile(contentFile);
+            } catch (IOException e) {
+                contentMap.remove(item.getKey());
+                danglingItems.add(item.getKey());
+                continue;
+            }
+            contentMap.put((String) item.getKey(), new 
Triple<String,byte[],String>(metaTriple.getEntry1(),
+                    content, metaTriple.getEntry3()));
+        }
+
+        // Remove dangling content entries
+        for (Object di : danglingItems) {
+            contentIndex.remove(di);
+            LOGGER.info("Dangling Item Removed: " + di);
+        }
+
+    }
+
+    private File getIndexFile() {
+        File indexFile = new File(contentFolder.getAbsolutePath() + "/" + 
CONTENT_INDEX_FILE);
+        if (!indexFile.exists()) {
+            try {
+                indexFile.createNewFile();
+            } catch (IOException e) {
+                LOGGER.error("Can not create index file: " + e.getMessage());
+                return null;
+            }
+        }
+        return indexFile;
+    }
+
+    private void checkContentFolder() {
+        if (!contentFolder.exists()) {
+            contentFolder.mkdir();
+        } else if (contentFolder.exists() && contentFolder.isFile()) {
+            contentFolder.delete();
+            contentFolder.mkdir();
+        }
+    }
+
+    private void printContentMap() {
+        LOGGER.info("Content Items Dump");
+        for (Entry<String,Triple<String,byte[],String>> entry : 
this.contentMap.entrySet()) {
+            LOGGER.info("Item: " + entry.getKey() + "," + 
entry.getValue().getEntry1() + "  "
+                        + entry.getValue().getEntry2().length);
+        }
+
+    }
+}

Propchange: 
incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/src/main/java/org/apache/stanbol/ontologymanager/store/adapter/ContentManager.java
------------------------------------------------------------------------------
    svn:executable = *

Added: 
incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/src/main/java/org/apache/stanbol/ontologymanager/store/adapter/PersistenceStoreAdapter.java
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/src/main/java/org/apache/stanbol/ontologymanager/store/adapter/PersistenceStoreAdapter.java?rev=1086954&view=auto
==============================================================================
--- 
incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/src/main/java/org/apache/stanbol/ontologymanager/store/adapter/PersistenceStoreAdapter.java
 (added)
+++ 
incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/src/main/java/org/apache/stanbol/ontologymanager/store/adapter/PersistenceStoreAdapter.java
 Wed Mar 30 13:43:53 2011
@@ -0,0 +1,173 @@
+package org.apache.stanbol.ontologymanager.store.adapter;
+
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+
+import org.apache.clerezza.rdf.core.Graph;
+import org.apache.clerezza.rdf.core.MGraph;
+import org.apache.clerezza.rdf.core.UriRef;
+import org.apache.clerezza.rdf.core.impl.SimpleMGraph;
+import org.apache.clerezza.rdf.core.serializedform.Parser;
+import org.apache.clerezza.rdf.core.serializedform.Serializer;
+import org.apache.felix.scr.annotations.Activate;
+import org.apache.felix.scr.annotations.Component;
+import org.apache.felix.scr.annotations.Deactivate;
+import org.apache.felix.scr.annotations.Reference;
+import org.apache.felix.scr.annotations.ReferenceCardinality;
+import org.apache.felix.scr.annotations.Service;
+import org.apache.stanbol.enhancer.servicesapi.ContentItem;
+import org.apache.stanbol.enhancer.servicesapi.Store;
+import org.apache.stanbol.enhancer.servicesapi.helper.ContentItemHelper;
+import org.apache.stanbol.ontologymanager.store.adapter.util.IOUtil;
+import org.apache.stanbol.ontologymanager.store.adapter.util.Triple;
+import org.apache.stanbol.ontologymanager.store.api.PersistenceStore;
+import org.apache.stanbol.ontologymanager.store.model.AdministeredOntologies;
+import org.apache.stanbol.ontologymanager.store.model.OntologyMetaInformation;
+import org.osgi.service.component.ComponentContext;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+@Component(immediate = true)
+@Service
+public class PersistenceStoreAdapter implements Store {
+
+    private static final Logger logger = 
LoggerFactory.getLogger(PersistenceStoreAdapter.class.getName());
+
+    @Reference
+    private PersistenceStore pStore;
+
+    private ContentManager cm;
+
+    @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
+    private Parser parser;
+
+    @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
+    private Serializer serializer;
+
+    @Activate
+    public void activate(ComponentContext cc) {
+
+        // FIXME Need to bind Jena Parsing Provider here?
+        // FIXME Need to bind Jena Serializing Provider here?
+
+        this.cm = new 
ContentManager(cc.getBundleContext().getDataFile("Content Items"));
+    }
+
+    @Deactivate
+    public void deactivate(ComponentContext cc) {
+        this.cm.store();
+        logger.info("Persistence Store Adaptor deactivated successfully");
+    }
+
+    public ContentItem create(String id, byte[] content, String contentType) {
+        return SimpleContentItem.create(id, content, contentType);
+    }
+
+    public ContentItem get(String id) {
+        Triple<String,byte[],String> contentEntry = cm.getContent(id);
+        if (contentEntry == null) {
+            logger.warn("Content Item Not Found");
+            return null;
+        }
+        byte[] content = contentEntry.getEntry2();
+        String mimeType = contentEntry.getEntry1();
+        String URI = contentEntry.getEntry3();
+        MGraph mg = readModel(URI);
+        if (mg == null) {
+            logger.warn("Content item not found");
+            return null;
+        }
+
+        if (content == null || mimeType == null) {
+            return null;
+        } else {
+            return assemble(id, mg, contentEntry.getEntry1(), 
contentEntry.getEntry2());
+        }
+    }
+
+    public String put(ContentItem ci) {
+        MGraph mg = ci.getMetadata();
+        IOUtil ioUtil = IOUtil.getInstance();
+        String content;
+        String uri;
+
+        content = writeModel(mg);
+        if (ci.getId() == null || "".equals(ci.getId())) {
+            // FIXME Here assign a new id
+            throw new RuntimeException("How to assign a new id with current 
interface");
+        }
+
+        uri = ContentItemHelper.ensureUri(ci).getUnicodeString();
+        try {
+            Boolean deleted = pStore.deleteOntology(uri);
+            logger.info("Previous ontology deleted:" + deleted.toString());
+        } catch (Exception e1) {
+            // No need to log since it is actually an existence check
+        }
+        try {
+            pStore.saveOntology(content, uri, "UTF-8");
+            cm.put(ci.getId(), new 
Triple<String,byte[],String>(ci.getMimeType(), ioUtil
+                    .convertStreamToString(ci.getStream()).getBytes(), uri));
+
+        } catch (IOException e) {
+            logger.error("Exception in saving the ontology", e);
+        } catch (Exception e) {
+            logger.error("Exception in saving the ontology", e);
+        }
+        return ci.getId();
+    }
+
+    private ContentItem assemble(final String id,
+                                 final MGraph metadata,
+                                 final String contentType,
+                                 final byte[] content) {
+        return new SimpleContentItem(id, metadata, contentType, content);
+    }
+
+    private String writeModel(MGraph mg) {
+        ByteArrayOutputStream bos = new ByteArrayOutputStream();
+        this.serializer.serialize(bos, mg, "application/rdf+xml");
+        return bos.toString();
+    }
+
+    private MGraph readModel(String URI) {
+        // Model model = null;
+        MGraph model = new SimpleMGraph();
+        String ontologyContent = null;
+        try {
+            ontologyContent = pStore.retrieveOntology(URI, "RDF/XML", false);
+        } catch (Exception e1) {
+            logger.error("Exception in retrieving the ontology " + URI, e1);
+            return null;
+        }
+        try {
+            Graph graph = this.parser.parse(new 
ByteArrayInputStream(ontologyContent.getBytes()),
+                "application/rdf+xml", new UriRef(URI));
+            model.addAll(graph);
+            return model;
+        } catch (Exception e) {
+            logger.error("Exception in reading the model", e);
+            return null;
+        }
+    }
+
+    @Override
+    public MGraph getEnhancementGraph() {
+        try {
+            AdministeredOntologies onts = 
pStore.retrieveAdministeredOntologies();
+            MGraph mgraph = new SimpleMGraph();
+            for (OntologyMetaInformation ont : 
onts.getOntologyMetaInformation()) {
+                String content = pStore.retrieveOntology(ont.getURI(), 
"RDF/XML", false);
+                Graph gr = this.parser.parse(new 
ByteArrayInputStream(content.getBytes()),
+                    "application/rdf+xml", new UriRef(ont.getURI()));
+                mgraph.addAll(gr);
+
+            }
+            return mgraph;
+        } catch (Exception e) {
+            logger.error("Exception in retrieveing enhancement graph", e);
+        }
+        return new SimpleMGraph();
+    }
+}

Propchange: 
incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/src/main/java/org/apache/stanbol/ontologymanager/store/adapter/PersistenceStoreAdapter.java
------------------------------------------------------------------------------
    svn:executable = *

Added: 
incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/src/main/java/org/apache/stanbol/ontologymanager/store/adapter/SimpleContentItem.java
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/src/main/java/org/apache/stanbol/ontologymanager/store/adapter/SimpleContentItem.java?rev=1086954&view=auto
==============================================================================
--- 
incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/src/main/java/org/apache/stanbol/ontologymanager/store/adapter/SimpleContentItem.java
 (added)
+++ 
incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/src/main/java/org/apache/stanbol/ontologymanager/store/adapter/SimpleContentItem.java
 Wed Mar 30 13:43:53 2011
@@ -0,0 +1,49 @@
+package org.apache.stanbol.ontologymanager.store.adapter;
+
+import java.io.ByteArrayInputStream;
+import java.io.InputStream;
+
+import org.apache.clerezza.rdf.core.MGraph;
+import org.apache.clerezza.rdf.core.impl.SimpleMGraph;
+import org.apache.stanbol.enhancer.servicesapi.ContentItem;
+
+public class SimpleContentItem implements ContentItem {
+
+    private String id;
+
+    private MGraph metadata;
+
+    private String mimeType;
+
+    private byte[] content;
+
+    public SimpleContentItem(String id, MGraph metadata, String mimeType, 
byte[] content) {
+        this.id = id;
+        this.content = content;
+        this.metadata = metadata;
+        this.mimeType = mimeType;
+
+    }
+
+    public String getId() {
+        return id;
+    }
+
+    public MGraph getMetadata() {
+        return metadata;
+    }
+
+    public String getMimeType() {
+        return mimeType;
+    }
+
+    public InputStream getStream() {
+        return new ByteArrayInputStream(content);
+    }
+
+    public static ContentItem create(String id, byte[] content, String 
contentType) {
+        return new SimpleContentItem(id, new SimpleMGraph(), contentType, 
content);
+
+    }
+
+}

Propchange: 
incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/src/main/java/org/apache/stanbol/ontologymanager/store/adapter/SimpleContentItem.java
------------------------------------------------------------------------------
    svn:executable = *

Added: 
incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/src/main/java/org/apache/stanbol/ontologymanager/store/adapter/util/IOUtil.java
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/src/main/java/org/apache/stanbol/ontologymanager/store/adapter/util/IOUtil.java?rev=1086954&view=auto
==============================================================================
--- 
incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/src/main/java/org/apache/stanbol/ontologymanager/store/adapter/util/IOUtil.java
 (added)
+++ 
incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/src/main/java/org/apache/stanbol/ontologymanager/store/adapter/util/IOUtil.java
 Wed Mar 30 13:43:53 2011
@@ -0,0 +1,74 @@
+package org.apache.stanbol.ontologymanager.store.adapter.util;
+
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public final class IOUtil {
+
+    private IOUtil() {}
+
+    private static class Holder {
+        private static final IOUtil INSTANCE = new IOUtil();
+    }
+
+    public static IOUtil getInstance() {
+        return Holder.INSTANCE;
+    }
+
+    private static final Logger LOGGER = 
LoggerFactory.getLogger(IOUtil.class.getName());
+
+    public byte[] getBytesFromFile(File file) throws IOException {
+        InputStream is = new FileInputStream(file);
+        long length = file.length();
+        if (length > Integer.MAX_VALUE) {
+            LOGGER.warn("Content too long for file: " + 
file.getAbsolutePath());
+        }
+        byte[] bytes = new byte[(int) length];
+        int offset = 0;
+        int numRead = 0;
+        while (offset < bytes.length && (numRead = is.read(bytes, offset, 
bytes.length - offset)) >= 0) {
+            offset += numRead;
+        }
+        if (offset < bytes.length) {
+            throw new IOException("Could not completely read file " + 
file.getName());
+        }
+        is.close();
+        return bytes;
+    }
+
+    public void writeBytesToFile(final File file, final byte[] bytes) throws 
IOException {
+        FileOutputStream fos = new FileOutputStream(file);
+        for (byte b : bytes) {
+            fos.write(b);
+        }
+        fos.flush();
+        fos.close();
+    }
+
+    public String convertStreamToString(final InputStream is) throws 
IOException {
+        if (is != null) {
+            StringBuilder sb = new StringBuilder();
+            String line;
+
+            try {
+                BufferedReader reader = new BufferedReader(new 
InputStreamReader(is, "UTF-8"));
+                while ((line = reader.readLine()) != null) {
+                    sb.append(line).append("\n");
+                }
+            } finally {
+                is.close();
+            }
+            return sb.toString();
+        } else {
+            return "";
+        }
+    }
+}

Propchange: 
incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/src/main/java/org/apache/stanbol/ontologymanager/store/adapter/util/IOUtil.java
------------------------------------------------------------------------------
    svn:executable = *

Added: 
incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/src/main/java/org/apache/stanbol/ontologymanager/store/adapter/util/Triple.java
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/src/main/java/org/apache/stanbol/ontologymanager/store/adapter/util/Triple.java?rev=1086954&view=auto
==============================================================================
--- 
incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/src/main/java/org/apache/stanbol/ontologymanager/store/adapter/util/Triple.java
 (added)
+++ 
incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/src/main/java/org/apache/stanbol/ontologymanager/store/adapter/util/Triple.java
 Wed Mar 30 13:43:53 2011
@@ -0,0 +1,72 @@
+package org.apache.stanbol.ontologymanager.store.adapter.util;
+
+import org.apache.stanbol.enhancer.servicesapi.ContentItem;
+import org.apache.stanbol.ontologymanager.store.adapter.SimpleContentItem;
+
+/*
+ * In this scope this class is used to store contentType-content-storeid
+ */
+public final class Triple<K,V,L> {
+
+    private static final String ELEMENT_SEPARATOR = ",";
+
+    private K entry1;
+
+    private V entry2;
+
+    private L entry3;
+
+    public Triple(final K entry1, final V entry2, final L entry3) {
+        this.entry1 = entry1;
+        this.entry2 = entry2;
+        this.entry3 = entry3;
+
+    }
+
+    public static Triple<String,String,String> createTriple(final String 
string) {
+        String[] field = string.split(ELEMENT_SEPARATOR);
+        String entry1 = field[0];
+        String entry2 = field[1];
+        String entry3 = field[2];
+        return new Triple<String,String,String>(entry1, entry2, entry3);
+    }
+
+    public K getEntry1() {
+        return entry1;
+    }
+
+    public V getEntry2() {
+        return entry2;
+    }
+
+    public L getEntry3() {
+        return entry3;
+    }
+
+    public void setEntry1(final K entry1) {
+        this.entry1 = entry1;
+    }
+
+    public void setEntry2(final V entry2) {
+        this.entry2 = entry2;
+    }
+
+    public void setEntry3(final L entry3) {
+        this.entry3 = entry3;
+    }
+
+    @Override
+    public String toString() {
+        // Return entries in comma separated from
+        StringBuilder sb = new StringBuilder();
+        sb.append(entry1).append(ELEMENT_SEPARATOR);
+        sb.append(entry2).append(ELEMENT_SEPARATOR);
+        sb.append(entry3);
+        return sb.toString();
+    }
+
+    public ContentItem toContentItem() {
+        return new SimpleContentItem((String) entry1, null, (String) entry3, 
(byte[]) entry2);
+    }
+
+}

Propchange: 
incubator/stanbol/trunk/kres/ontologymanager/store/fise-adapter/src/main/java/org/apache/stanbol/ontologymanager/store/adapter/util/Triple.java
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/stanbol/trunk/kres/ontologymanager/store/jena/README.txt
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/ontologymanager/store/jena/README.txt?rev=1086954&view=auto
==============================================================================
--- incubator/stanbol/trunk/kres/ontologymanager/store/jena/README.txt (added)
+++ incubator/stanbol/trunk/kres/ontologymanager/store/jena/README.txt Wed Mar 
30 13:43:53 2011
@@ -0,0 +1,17 @@
+IKS FISE Persistence Store Jena Implementation
+==================
+This bundle implements a persistence store that is defined through 
eu.iksproject.stores.persistencestore.IPersistenceStore interface.
+Although current implementation uses Jena, the persistence store is not bound 
to any specific implementation.   
+
+
+after 
+>mvn clean install -DskipTests=true
+you can upload the jars in target folder to felix
+
+Run
+===
+see README.txt of eu.iksproject.persistencestore.launchers.lite
+ 
+Configuration
+=============
+(Optional)eu.iksproject.fise.stores.persistencestore.reasonerURL.name : URL 
for an OWLlink server to do reasoning tasks

Propchange: incubator/stanbol/trunk/kres/ontologymanager/store/jena/README.txt
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/stanbol/trunk/kres/ontologymanager/store/jena/pom.xml
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/ontologymanager/store/jena/pom.xml?rev=1086954&view=auto
==============================================================================
--- incubator/stanbol/trunk/kres/ontologymanager/store/jena/pom.xml (added)
+++ incubator/stanbol/trunk/kres/ontologymanager/store/jena/pom.xml Wed Mar 30 
13:43:53 2011
@@ -0,0 +1,116 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+       xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd";>
+       
+       <modelVersion>4.0.0</modelVersion>
+
+       <parent>
+               <groupId>org.apache.stanbol</groupId>
+               
<artifactId>org.apache.stanbol.ontologymanager.store.parent</artifactId>
+               <version>0.9-SNAPSHOT</version>
+               <relativePath>../parent</relativePath>          
+       </parent>
+
+       <artifactId>org.apache.stanbol.ontologymanager.store.jena</artifactId>
+       <packaging>bundle</packaging>
+
+       <name>Apache Stanbol Ontology Manager Store - Jena Implementation 
</name>
+       <description>A  store implementation using Jena as 
backend.</description>
+       
+       <build>
+               <plugins>
+                       <plugin>
+                               <groupId>org.apache.felix</groupId>
+                               <artifactId>maven-bundle-plugin</artifactId>
+                               <extensions>true</extensions>
+                       </plugin>
+                       <plugin>
+                               <groupId>org.apache.felix</groupId>
+                               <artifactId>maven-scr-plugin</artifactId>
+                       </plugin>
+               </plugins>
+       </build>
+       
+       <dependencies>
+               <dependency>
+                       <groupId>org.apache.stanbol</groupId>
+                       
<artifactId>org.apache.stanbol.ontologymanager.store.api</artifactId>
+               </dependency>
+               
+               <dependency>
+                       <groupId>org.apache.stanbol</groupId>
+                       <artifactId>org.semanticweb.owlapi</artifactId>
+               </dependency>
+               <dependency>
+                       <groupId>org.apache.stanbol</groupId>
+                       <artifactId>org.semanticweb.owlapi.owllink</artifactId>
+               </dependency>           
+
+               <dependency>
+                       <groupId>org.apache.felix</groupId>
+                       
<artifactId>org.apache.felix.scr.annotations</artifactId>
+               </dependency>
+
+               <dependency>
+                       <groupId>com.hp.hpl.jena</groupId>
+                       <artifactId>jena</artifactId>
+               </dependency>
+               <dependency>
+                       <groupId>com.hp.hpl.jena</groupId>
+                       <artifactId>arq</artifactId>
+               </dependency>
+
+               <dependency>
+                       <groupId>javax.ws.rs</groupId>
+                       <artifactId>jsr311-api</artifactId>
+               </dependency>
+               
+               <dependency>
+                       <groupId>org.apache.commons</groupId>
+                       <artifactId>commons-math</artifactId>
+               </dependency>
+               <dependency>
+                       <groupId>org.osgi</groupId>
+                       <artifactId>org.osgi.compendium</artifactId>
+               </dependency>
+               <dependency>
+                       <groupId>org.osgi</groupId>
+                       <artifactId>org.osgi.core</artifactId>
+               </dependency>           
+
+               <dependency>
+                       <groupId>com.sun.jersey</groupId>
+                       <artifactId>jersey-server</artifactId>
+               </dependency>
+               <dependency>
+                       <groupId>com.sun.jersey</groupId>
+                       <artifactId>jersey-core</artifactId>
+               </dependency>
+               <dependency>
+                       <groupId>com.sun.jersey</groupId>
+                       <artifactId>jersey-json</artifactId>
+               </dependency>
+               <dependency>
+                       <groupId>javax.servlet</groupId>
+                       <artifactId>servlet-api</artifactId>
+               </dependency>
+
+               <dependency>
+                       <groupId>jetty</groupId>
+                       <artifactId>org.mortbay.jetty</artifactId>
+                       <version>5.1.10</version>
+                       <type>jar</type>
+                       <scope>provided</scope>
+               </dependency>   
+               
+               <dependency>
+                       <groupId>commons-logging</groupId>
+                       <artifactId>commons-logging</artifactId>
+                       <scope>test</scope>
+               </dependency>
+               <dependency>
+                       <groupId>org.slf4j</groupId>
+                       <artifactId>slf4j-api</artifactId>
+               </dependency>
+       </dependencies>
+</project>

Propchange: incubator/stanbol/trunk/kres/ontologymanager/store/jena/pom.xml
------------------------------------------------------------------------------
    svn:executable = *

Added: 
incubator/stanbol/trunk/kres/ontologymanager/store/jena/src/main/java/org/apache/stanbol/ontologymanager/store/jena/DbAwareDocumentManager.java
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/ontologymanager/store/jena/src/main/java/org/apache/stanbol/ontologymanager/store/jena/DbAwareDocumentManager.java?rev=1086954&view=auto
==============================================================================
--- 
incubator/stanbol/trunk/kres/ontologymanager/store/jena/src/main/java/org/apache/stanbol/ontologymanager/store/jena/DbAwareDocumentManager.java
 (added)
+++ 
incubator/stanbol/trunk/kres/ontologymanager/store/jena/src/main/java/org/apache/stanbol/ontologymanager/store/jena/DbAwareDocumentManager.java
 Wed Mar 30 13:43:53 2011
@@ -0,0 +1,165 @@
+/*****************************************************************************
+ * Source code metadata
+ *
+ * Author    ijd
+ * Package   Jena2 Tests
+ * Created   Nov 12, 2007
+ * Filename  DbAwareDocumentManager.java
+ *
+ * (c) Copyright 2007 Hewlett-Packard Development Company, LP
+ *****************************************************************************/
+
+// Package
+///////////////
+package org.apache.stanbol.ontologymanager.store.jena;
+
+// Imports
+///////////////
+import java.util.List;
+
+import org.apache.log4j.Logger;
+
+import com.hp.hpl.jena.ontology.OntDocumentManager;
+import com.hp.hpl.jena.ontology.OntModel;
+import com.hp.hpl.jena.ontology.OntModelSpec;
+import com.hp.hpl.jena.rdf.model.Model;
+import com.hp.hpl.jena.rdf.model.ModelMaker;
+import com.hp.hpl.jena.rdf.model.ModelReader;
+
+/**
+ * <p>
+ * An extension to the standard document manager that holds a reference to the 
{@link ModelMaker} for a Jena
+ * database model. That maker is used as a preferential source of stored 
models, indexed by URI.
+ * </p>
+ * 
+ * @author Ian Dickinson, HP Labs (<a 
href="mailto:[email protected]";>email</a>)
+ */
+public class DbAwareDocumentManager extends OntDocumentManager {
+    // Constants
+    // ////////////////////////////////
+
+    // Static variables
+    // ////////////////////////////////
+
+    @SuppressWarnings(value = "unused")
+    private static Logger log = Logger.getLogger(DbAwareDocumentManager.class);
+
+    // Instance variables
+    // ////////////////////////////////
+
+    private ModelMaker m_maker;
+
+    // Constructors
+    // ////////////////////////////////
+
+    public DbAwareDocumentManager(ModelMaker maker) {
+        m_maker = maker;
+    }
+
+    // External signature methods
+    // ////////////////////////////////
+
+    @Override
+    protected void loadImport(OntModel model, String importURI, List 
readQueue) {
+        if (m_processImports) {
+            log.info("OntDocumentManager loading " + importURI);
+
+            // add this model to occurs check list
+            model.addLoadedImport(importURI);
+
+            // check first to see if we have already loaded this model into 
the db
+            Model in = checkExistingDbImport(importURI);
+
+            // otherwise, try to find it
+            if (in == null) {
+                in = fetchPossiblyCachedImportModel(model, importURI);
+            }
+
+            // we trap the case of importing ourself (which may happen via an 
indirect imports chain)
+            if (in != model) {
+                // queue the imports from the input model on the end of the 
read queue
+                queueImports(in, readQueue, model.getProfile());
+
+                // add to the imports union graph, but don't do the rebind yet
+                model.addSubModel(in, false);
+
+                // we also cache the model if we haven't seen it before (and 
caching is on)
+                addModel(importURI, in);
+            }
+        }
+    }
+
+    /**
+     * Given a URI of an ontology, check to see whether that URL is already 
loaded into the database. If so,
+     * use that model.
+     * 
+     * @param importURI
+     *            The URI of an ontology to import
+     * @return The existing DB model for that URI, or null
+     */
+    protected Model checkExistingDbImport(String importURI) {
+        if (m_maker.hasModel(importURI)) {
+            return m_maker.getModel(importURI);
+        } else {
+            return null;
+        }
+    }
+
+    // Internal implementation methods
+    // ////////////////////////////////
+
+    /*
+     * The following two methods have been copied by OntDocumentManager since 
they're marked private. This is
+     * a bug (they should be protected), and will be fixed in the next Jena 
release.
+     */
+
+    /**
+     * if we have a cached version get that, otherwise load from the URI but 
don't do the imports closure
+     * 
+     * @param model
+     * @param importURI
+     * @return
+     */
+    protected Model fetchPossiblyCachedImportModel(OntModel model, String 
importURI) {
+        Model in = getModel(importURI);
+
+        // if not cached, we must load it from source
+        if (in == null) {
+            in = fetchLoadedImportModel(model.getSpecification(), importURI);
+        }
+        return in;
+    }
+
+    /**
+     * @param spec
+     * @param importURI
+     * @return
+     */
+    protected Model fetchLoadedImportModel(OntModelSpec spec, String 
importURI) {
+        ModelMaker maker = spec.getImportModelMaker();
+        if (maker.hasModel(importURI)) {
+            Model m = maker.getModel(importURI);
+            if (!m.isClosed()) {
+                return m;
+            } else {
+                // we don't want to hang on to closed models
+                maker.removeModel(importURI);
+            }
+        }
+
+        // otherwise, we use the model maker to get the model anew
+        Model m = spec.getImportModelGetter().getModel(importURI, new 
ModelReader() {
+            public Model readModel(Model toRead, String URL) {
+                read(toRead, URL, true);
+                return toRead;
+            }
+        });
+
+        return m;
+    }
+
+    // 
==============================================================================
+    // Inner class definitions
+    // 
==============================================================================
+
+}

Propchange: 
incubator/stanbol/trunk/kres/ontologymanager/store/jena/src/main/java/org/apache/stanbol/ontologymanager/store/jena/DbAwareDocumentManager.java
------------------------------------------------------------------------------
    svn:executable = *

Added: 
incubator/stanbol/trunk/kres/ontologymanager/store/jena/src/main/java/org/apache/stanbol/ontologymanager/store/jena/InferenceScope.java
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/ontologymanager/store/jena/src/main/java/org/apache/stanbol/ontologymanager/store/jena/InferenceScope.java?rev=1086954&view=auto
==============================================================================
--- 
incubator/stanbol/trunk/kres/ontologymanager/store/jena/src/main/java/org/apache/stanbol/ontologymanager/store/jena/InferenceScope.java
 (added)
+++ 
incubator/stanbol/trunk/kres/ontologymanager/store/jena/src/main/java/org/apache/stanbol/ontologymanager/store/jena/InferenceScope.java
 Wed Mar 30 13:43:53 2011
@@ -0,0 +1,9 @@
+package org.apache.stanbol.ontologymanager.store.jena;
+
+public enum InferenceScope {
+    All,
+    Class,
+    Individual,
+    DataTypeProperty,
+    ObjectProperty
+}

Propchange: 
incubator/stanbol/trunk/kres/ontologymanager/store/jena/src/main/java/org/apache/stanbol/ontologymanager/store/jena/InferenceScope.java
------------------------------------------------------------------------------
    svn:executable = *


Reply via email to