X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.db.layer0%2Fsrc%2Forg%2Fsimantics%2Fdb%2Flayer0%2Fvariable%2FVariableOrResource.java;fp=bundles%2Forg.simantics.db.layer0%2Fsrc%2Forg%2Fsimantics%2Fdb%2Flayer0%2Fvariable%2FVariableOrResource.java;h=cdcfd8b094276ebf3655704a5145cd89dee4e185;hb=0ffcb1180dcccf28e66a391338885be224ba1c47;hp=0000000000000000000000000000000000000000;hpb=342a2b006b88330280060c16c2ab50374468a4c6;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.db.layer0/src/org/simantics/db/layer0/variable/VariableOrResource.java b/bundles/org.simantics.db.layer0/src/org/simantics/db/layer0/variable/VariableOrResource.java new file mode 100644 index 000000000..cdcfd8b09 --- /dev/null +++ b/bundles/org.simantics.db.layer0/src/org/simantics/db/layer0/variable/VariableOrResource.java @@ -0,0 +1,23 @@ +package org.simantics.db.layer0.variable; + +import org.simantics.db.Resource; + +public interface VariableOrResource { + + public static VariableOrResource make(Resource value) { + return new ResourceX(value); + } + + public static VariableOrResource make(Variable value) { + return new VariableX(value); + } + + public static VariableOrResource make(Object value) { + if(value instanceof Resource) + return make((Resource)value); + if(value instanceof Variable) + return make((Variable)value); + throw new IllegalArgumentException("VariableOrResource acccepts only Variable or Resource, got " + value + " with class " + value.getClass().getName()); + } + +}