Commit 3bb890ec authored by Sonia Zorba's avatar Sonia Zorba
Browse files

Fixed createNode PreparedStatement issues

parent 99de5221
Loading
Loading
Loading
Loading
+16 −15
Original line number Diff line number Diff line
@@ -83,12 +83,11 @@ public class NodeDAO {
            ps.setBoolean(2, getIsBusy(myNode));
            ps.setString(3, getProperty(myNode, getPropertyURI("creator")));
            ps.setString(4, getProperty(myNode, getPropertyURI("creator")));
            ps.setArray(5, fromPropertyToArray(getProperty(myNode, getPropertyURI("groupread"))));
            ps.setArray(6, fromPropertyToArray(getProperty(myNode, getPropertyURI("groupwrite"))));
            ps.setArray(5, fromPropertyToArray(ps, getProperty(myNode, getPropertyURI("groupread"))));
            ps.setArray(6, fromPropertyToArray(ps, getProperty(myNode, getPropertyURI("groupwrite"))));
            ps.setBoolean(7, Boolean.valueOf(getProperty(myNode, getPropertyURI("publicread"))));
            //ps.setBoolean(7, true);
            ps.setObject(8, paths.get(0).parentPath, Types.OTHER);
            ps.setString(9, getProperty(myNode, getPropertyURI("type")));
            ps.setObject(9, getDbNodeType(myNode), Types.OTHER);
            return ps;
        });
        
@@ -278,20 +277,22 @@ public class NodeDAO {
        return null;
    }
    
    private Array fromPropertyToArray(String myProperty) {
        
        if (myProperty == null || myProperty.isBlank()) 
        
            return null;
        
        else {
            
            //myProperty.split(" ")
    private Array fromPropertyToArray(PreparedStatement ps, String myProperty) throws SQLException {
        if (myProperty == null || myProperty.isBlank()) {
            return null;
        } else {
            return ps.getConnection().createArrayOf("varchar", myProperty.split(" "));
        }        
        
    }
    
    private String getDbNodeType(Node node) {
        if(node instanceof ContainerNode) {
            return "container";
        } else if(node instanceof DataNode) {
            return "data";
        }
        throw new UnsupportedOperationException("Unable to retrieve database node type for class " + node.getClass().getCanonicalName());
    }
    
    private class NodePaths {