X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.scl.db%2Fscl%2FSimantics%2FDB.scl;h=adc72bb943e1cd0a788eaa4369be8deb10b36861;hp=a35092bd9612651f16af7502df165a34a79e6e7b;hb=1dfc44ff89362fb4500ee9427432541b92d1953f;hpb=5887fe12f827ef474590d61c86d0de32fca8550e diff --git a/bundles/org.simantics.scl.db/scl/Simantics/DB.scl b/bundles/org.simantics.scl.db/scl/Simantics/DB.scl index a35092bd9..adc72bb94 100644 --- a/bundles/org.simantics.scl.db/scl/Simantics/DB.scl +++ b/bundles/org.simantics.scl.db/scl/Simantics/DB.scl @@ -20,6 +20,8 @@ importJava "org.simantics.db.Resource" where @JavaName getResourceId resourceId :: Resource -> Long + isPersistent :: Resource -> Boolean + importJava "org.simantics.db.ReadGraph" where data ReadGraphX @@ -106,6 +108,9 @@ importJava "org.simantics.db.ReadGraph" where @JavaName getRelatedValue2 relatedValue2 :: Resource -> Resource -> a + @JavaName getPossibleRelatedValue2 + possibleRelatedValue2 :: Resource -> Resource -> Maybe a + @JavaName getRelatedVariantValue2 relatedVariantValue2 :: Resource -> Resource -> Variant @@ -131,6 +136,8 @@ importJava "org.simantics.db.ReadGraph" where @JavaName getInverse inverseOf :: Resource -> Resource + @JavaName getPossibleInverse + possibleInverseOf :: Resource -> Maybe Resource @JavaName getSingleType singleTypeOf :: Resource -> Resource -> Resource @@ -147,6 +154,8 @@ importJava "org.simantics.db.ReadGraph" where @JavaName getPredicates predicatesOf :: Resource -> [Resource] + + isImmutable :: Resource -> Boolean importJava "org.simantics.db.layer0.util.ExtendedUris" where "Converts an absolute URI to a resource" @@ -181,6 +190,9 @@ class Browsable a where valueOf :: Serializable v => a -> v + genericRelatedValue :: a -> Resource -> t + genericPossibleRelatedValue :: a -> Resource -> Maybe t + variantValueOf :: a -> Variant children :: a -> [a] @@ -200,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 @@ -215,6 +230,8 @@ importJava "org.simantics.db.WriteGraph" where newResource :: () -> Resource "Adds a statement to the semantic graph." claim :: Resource -> Resource -> Resource -> () + @JavaName claim + claimWithInverse :: Resource -> Resource -> Maybe Resource -> Resource -> () @JavaName claimLiteral claimRelatedValue_ :: Resource -> Resource -> a -> Binding a -> () @JavaName claimLiteral @@ -258,9 +275,26 @@ resourceChildrenOf :: Resource -> [Resource] resourceChildrenOf r = r # L0.ConsistsOf importJava "org.simantics.db.common.utils.OrderedSetUtils" where + "`addToOrderedSet s e` adds element `e` to ordered set `s`" @JavaName add addToOrderedSet :: Resource -> Resource -> Boolean + "`addFirstToOrderedSet s e` adds element `e` to ordered set `s` as the first element" + @JavaName addFirst + addFirstToOrderedSet :: Resource -> Resource -> Boolean + + "`addAfterToOrderedSet s p e` adds element `e` to ordered set `s` after element `p`" + @JavaName addAfter + addAfterToOrderedSet :: Resource -> Resource -> Resource -> Boolean + + "`addBeforeToOrderedSet s p e` adds element `e` to ordered set `s` before element `p`" + @JavaName addBefore + addBeforeToOrderedSet :: Resource -> Resource -> Resource -> Boolean + + "`removeFromOrderedSet s e` removes element `e` from ordered set `s`" + @JavaName remove + removeFromOrderedSet :: Resource -> Resource -> Boolean + @JavaName set setOrderedSet :: Resource -> [Resource] -> Boolean @@ -325,8 +359,8 @@ importJava "org.simantics.scl.db.SCLFunctions" where "Begins a write transaction and immediately returns." asyncWrite :: (() -> a) -> () - virtualSyncWriteMem :: String -> (() -> a) -> a - virtualSyncWriteWS :: String -> (() -> a) -> a + virtualSyncWriteMem :: String -> (() -> a) -> a + virtualSyncWriteWS :: String -> (() -> a) -> a safeExec :: (() -> a) -> a activateOnce :: Resource -> () @@ -342,6 +376,8 @@ importJava "org.simantics.scl.db.SCLFunctions" where subquery :: ( a) -> a "Makes a new read request with given procedure for calculating the result. The request is always cached." subqueryC :: ( a) -> a + "Makes a new read asynchronous request with function to handle the request result. The last `isDisposed` function parameter is used to determine if the listener is still alive or not." + subqueryL :: ( a) -> (a -> ()) -> (Throwable -> ()) -> ( Boolean) -> () "Tries to convert the given Dynamic value to a value with the inferred type" possibleFromDynamic :: Typeable a => String -> Dynamic -> Maybe a @@ -366,6 +402,9 @@ importJava "org.simantics.db.layer0.util.Layer0Utils" where possiblePredicateByName :: Resource -> String -> Maybe Resource @JavaName getPossiblePredicateByNameFromType possiblePredicateByNameFromType :: Resource -> String -> Maybe Resource + + addMetadataListener :: ChangeListener -> () + removeMetadataListener :: ChangeListener -> () copyTo :: Resource -> Resource -> Resource copyTo targetContainer source = do @@ -494,4 +533,13 @@ possibleChildWithPath parent path = Just c -> possibleChild c name Nothing -> Nothing ) - (Just parent) path \ No newline at end of file + (Just parent) path + +importJava "org.simantics.db.MetadataI" where + data MetadataI + +importJava "org.simantics.db.event.ChangeListener" where + data ChangeListener + +importJava "org.simantics.db.layer0.genericrelation.DependencyChanges" where + data DependencyChanges