code: 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;
  	}
docs: Returns the incoming edges of current node having the requested label. If there are no edged, then an empty set is returned.