]> gerrit.simantics Code Review - simantics/3d.git/blobdiff - org.simantics.plant3d/src/org/simantics/plant3d/scenegraph/SchemaBuilder.java
Fix error in inserting dual inline components
[simantics/3d.git] / org.simantics.plant3d / src / org / simantics / plant3d / scenegraph / SchemaBuilder.java
index 5b761a11a0ee0d3f7001ecd3dfe781bc0b1ff7cd..a57a07e76547b56e19ee9a040f7be86ee4fa46d1 100644 (file)
@@ -6,23 +6,25 @@ import org.simantics.db.Resource;
 import org.simantics.db.exception.DatabaseException;
 import org.simantics.db.request.Read;
 import org.simantics.g3d.scenegraph.GeometryProvider;
+import org.simantics.g3d.scenegraph.base.INode;
 import org.simantics.objmap.graph.schema.IMappingSchema;
 import org.simantics.objmap.graph.schema.MappingSchemas;
 import org.simantics.objmap.graph.schema.SimpleSchema;
 import org.simantics.plant3d.ontology.Plant3D;
 
 public class SchemaBuilder {
-       public static IMappingSchema<Resource,Object> getSchema() throws DatabaseException{
-               return Simantics.getSession().syncRequest(new Read<IMappingSchema<Resource,Object>>() {
+       public static IMappingSchema<Resource,INode> getSchema() throws DatabaseException{
+               return Simantics.getSession().syncRequest(new Read<IMappingSchema<Resource,INode>>() {
                        @Override
-                       public IMappingSchema<Resource,Object> perform(ReadGraph g)
+                       public IMappingSchema<Resource,INode> perform(ReadGraph g)
                                        throws DatabaseException {
                                return getSchema(g);
                        }
                });
        }
        
-       public static IMappingSchema<Resource,Object> getSchema(ReadGraph g) throws DatabaseException{
+       @SuppressWarnings("unchecked")
+       public static IMappingSchema<Resource,INode> getSchema(ReadGraph g) throws DatabaseException{
                try {
                        SimpleSchema schema = new SimpleSchema();
                        schema.addLinkType(MappingSchemas.fromAnnotations(g, Equipment.class));
@@ -34,7 +36,7 @@ public class SchemaBuilder {
                        schema.addLinkType(MappingSchemas.fromAnnotations(g, PipeRun.class));
                        
                        schema.addLinkType(MappingSchemas.fromAdaptable(g, Plant3D.URIs.GeometryProvider, GeometryProvider.class));
-                       return schema;
+                       return (IMappingSchema<Resource, INode>)(IMappingSchema<Resource, ?>)schema;
                } catch (IllegalAccessException e) {
                        throw new DatabaseException(e);
                } catch (InstantiationException e) {