]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.scl.db/scl/Simantics/DB.scl
Property following functions value and possibleValue to ontology modules
[simantics/platform.git] / bundles / org.simantics.scl.db / scl / Simantics / DB.scl
index ec9cc2671e3294f5f5335bf1c252f6653d0ffebc..2ff2f51acb11f455459bc64a8663e06961547129 100644 (file)
@@ -108,6 +108,9 @@ importJava "org.simantics.db.ReadGraph" where
     @JavaName getRelatedValue2
     relatedValue2 :: Resource -> Resource -> <ReadGraph> a
 
+    @JavaName getPossibleRelatedValue2
+    possibleRelatedValue2 :: Resource -> Resource -> <ReadGraph> Maybe a
+
     @JavaName getRelatedVariantValue2
     relatedVariantValue2 :: Resource -> Resource -> <ReadGraph> Variant
     
@@ -133,6 +136,8 @@ importJava "org.simantics.db.ReadGraph" where
     
     @JavaName getInverse
     inverseOf :: Resource -> <ReadGraph> Resource
+    @JavaName getPossibleInverse
+    possibleInverseOf :: Resource -> <ReadGraph> Maybe Resource
     
     @JavaName getSingleType
     singleTypeOf :: Resource -> Resource -> <ReadGraph> Resource
@@ -149,6 +154,8 @@ importJava "org.simantics.db.ReadGraph" where
     
     @JavaName getPredicates
     predicatesOf :: Resource -> <ReadGraph> [Resource]
+    
+    isImmutable :: Resource -> <ReadGraph> Boolean
 
 importJava "org.simantics.db.layer0.util.ExtendedUris" where
     "Converts an absolute URI to a resource"
@@ -183,6 +190,9 @@ class Browsable a where
     
     valueOf :: Serializable v => a -> <ReadGraph> v
     
+    genericRelatedValue :: a -> Resource -> <ReadGraph> t
+    genericPossibleRelatedValue :: a -> Resource -> <ReadGraph> Maybe t
+    
     variantValueOf :: a -> <ReadGraph> Variant 
     
     children :: a -> <ReadGraph> [a]
@@ -202,6 +212,9 @@ instance Browsable Resource where
     valueOf r = valueOf_ r binding
     variantValueOf = variantValueOf_
     
+    genericRelatedValue = relatedValue2
+    genericPossibleRelatedValue = possibleRelatedValue2
+    
     children r = r # L0.ConsistsOf
     parent r = singleObject r L0.PartOf
     possibleParent r = possibleObject r L0.PartOf
@@ -217,6 +230,8 @@ importJava "org.simantics.db.WriteGraph" where
     newResource :: () -> <WriteGraph> Resource
     "Adds a statement to the semantic graph."
     claim :: Resource -> Resource -> Resource -> <WriteGraph> ()
+    @JavaName claim
+    claimWithInverse :: Resource -> Resource -> Maybe Resource -> Resource -> <WriteGraph> ()
     @JavaName claimLiteral
     claimRelatedValue_ :: Resource -> Resource -> a -> Binding a -> <WriteGraph> ()
     @JavaName claimLiteral
@@ -327,8 +342,8 @@ importJava "org.simantics.scl.db.SCLFunctions" where
     "Begins a write transaction and immediately returns."
     asyncWrite :: (() -> <Proc,ReadGraph,WriteGraph> a) -> <Proc> ()
     
-    virtualSyncWriteMem :: String -> (() -> <ReadGraph,WriteGraph> a) -> <WriteGraph> a
-    virtualSyncWriteWS :: String -> (() -> <ReadGraph,WriteGraph> a) -> <WriteGraph> a
+    virtualSyncWriteMem :: String -> (() -> <e,WriteGraph> a) -> <e,WriteGraph> a
+    virtualSyncWriteWS :: String -> (() -> <e,WriteGraph> a) -> <e,WriteGraph> a
     
     safeExec :: (() -> <Proc> a) -> <Proc> a
     activateOnce :: Resource -> <Proc> ()