public Set < OGraphEdge > getInEdges ( final String iEdgeLabel ) { Set < OGraphEdge > temp = in != null ? in . get ( ) : null ; if ( temp == null ) { if ( iEdgeLabel == null ) temp = new HashSet < OGraphEdge > ( ) ; in = new SoftReference < Set < OGraphEdge > > ( temp ) ; final Set < Object > docs = document . field ( OGraphDatabase . VERTEX_FIELD_IN ) ; if ( docs != null ) { // TRANSFORM ALL THE ARCS for ( Object o : docs ) { final ODocument doc = ( ODocument ) ( ( OIdentifiable ) o ) . getRecord ( ) ; if ( iEdgeLabel != null && ! iEdgeLabel . equals ( doc . field ( OGraphDatabase . LABEL ) ) ) continue ; temp . add ( ( OGraphEdge ) database . getUserObjectByRecord ( doc , null ) ) ; } } } else if ( iEdgeLabel != null ) { // FILTER THE EXISTENT COLLECTION HashSet < OGraphEdge > filtered = new HashSet < OGraphEdge > ( ) ; for ( OGraphEdge e : temp ) { if ( iEdgeLabel . equals ( e . getLabel ( ) ) ) filtered . add ( e ) ; } temp = filtered ; } return temp ; }
Returns the incoming edges of current node having the requested label . If there are no edged then an empty set is returned .