]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.db.procore/src/fi/vtt/simantics/procore/internal/DirectStatementsImpl.java
Utilities for listing of statements in DB
[simantics/platform.git] / bundles / org.simantics.db.procore / src / fi / vtt / simantics / procore / internal / DirectStatementsImpl.java
index 10511979176a64c21dbd90c1c2ab69f9176fba0a..18031603f20ee8464f7829e4d6f92ebd274dbf18 100644 (file)
@@ -15,6 +15,8 @@ import gnu.trove.list.array.TIntArrayList;
 
 import java.util.Collection;
 import java.util.Iterator;
+import java.util.List;
+import java.util.ListIterator;
 
 import org.simantics.db.DirectStatements;
 import org.simantics.db.Resource;
@@ -25,21 +27,19 @@ import org.simantics.db.impl.support.ResourceSupport;
 final public class DirectStatementsImpl implements DirectStatements {
 
     final ResourceSupport support;
-
-    final int             subject;
-
-    final TIntArrayList   statements = new TIntArrayList();
-
+    final int subject;
+    final TIntArrayList statements = new TIntArrayList();
+    
     DirectStatementsImpl(ResourceSupport support, int subject) {
         this.support = support;
         this.subject = subject;
     }
-
+    
     void addStatement(int p, int o) {
         statements.add(p);
         statements.add(o);
     }
-
+    
     @Override
     public Resource getSubject() {
         return new ResourceImpl(support, subject);
@@ -62,14 +62,13 @@ final public class DirectStatementsImpl implements DirectStatements {
 
     @Override
     public boolean contains(Object arg0) {
-        Statement stm = (Statement) arg0;
-        ResourceImpl p = (ResourceImpl) stm.getPredicate();
-        ResourceImpl o = (ResourceImpl) stm.getObject();
-        for (int i = 0; i < statements.size(); i += 2) {
+        Statement stm = (Statement)arg0;
+        ResourceImpl p = (ResourceImpl)stm.getPredicate();
+        ResourceImpl o = (ResourceImpl)stm.getObject();
+        for(int i=0;i<statements.size();i+=2) {
             int pi = statements.getQuick(i);
-            int oi = statements.getQuick(i + 1);
-            if (p.id == pi && o.id == oi)
-                return true;
+            int oi = statements.getQuick(i+1);
+            if(p.id == pi && o.id == oi) return true;
         }
         return false;
     }
@@ -89,25 +88,23 @@ final public class DirectStatementsImpl implements DirectStatements {
         return new Iterator<Statement>() {
 
             int index = 0;
-
-            int max   = statements.size();
-
+            int max = statements.size();
+            
             @Override
             public boolean hasNext() {
-                return index < max;
+                return index < max; 
             }
 
             @Override
             public Statement next() {
-                return new DirectStatementImpl(support, subject, statements.getQuick(index++),
-                        statements.getQuick(index++));
+                return new DirectStatementImpl(support, subject, statements.getQuick(index++), statements.getQuick(index++));
             }
 
             @Override
             public void remove() {
                 throw new Error("Not supported");
             }
-
+            
         };
     }
 
@@ -141,4 +138,55 @@ final public class DirectStatementsImpl implements DirectStatements {
         throw new Error("Not supported");
     }
 
+    @Override
+    public void add(int index, Statement element) {
+        throw new Error("Not supported");
+    }
+
+    @Override
+    public boolean addAll(int index, Collection<? extends Statement> c) {
+        throw new Error("Not supported");
+    }
+
+    @Override
+    public Statement get(int index_) {
+        int index = 2*index_;
+        return new DirectStatementImpl(support, subject, statements.getQuick(index), statements.getQuick(index+1));
+    }
+
+    @Override
+    public int indexOf(Object o) {
+        throw new Error("Not supported");
+    }
+
+    @Override
+    public int lastIndexOf(Object o) {
+        throw new Error("Not supported");
+    }
+
+    @Override
+    public ListIterator<Statement> listIterator() {
+        throw new Error("Not supported");
+    }
+
+    @Override
+    public ListIterator<Statement> listIterator(int index) {
+        throw new Error("Not supported");
+    }
+
+    @Override
+    public Statement remove(int index) {
+        throw new Error("Not supported");
+    }
+
+    @Override
+    public Statement set(int index, Statement element) {
+        throw new Error("Not supported");
+    }
+
+    @Override
+    public List<Statement> subList(int fromIndex, int toIndex) {
+        throw new Error("Not supported");
+    }
+    
 }