public static List getDisconnected(
        Collection leftCollection, Graph relation, Collection rightCollection)
    {
        List disconnected;
        Iterator iter;
        Object left;
        EdgeIterator relationIter;

        disconnected = new ArrayList();
        iter = leftCollection.iterator();
        while (iter.hasNext()) {
            left = iter.next();
            relationIter = relation.edges();
            while (relationIter.step()) {
                if (relationIter.left() == left) {
                    if (!rightCollection.contains(relationIter.right())) {
                        relationIter = null;
                        break;
                    }
                }
            }
            if (relationIter != null) {
                disconnected.add(left);
            }
        }
        return disconnected;
    }
public static List getDisconnected ( Collection leftCollection , Graph relation , Collection rightCollection ) { List disconnected ; Iterator iter ; Object left ; EdgeIterator relationIter ; disconnected = new ArrayList ( ) ; iter = leftCollection . iterator ( ) ; while ( iter . hasNext ( ) ) { left = iter . next ( ) ; relationIter = relation . edges ( ) ; while ( relationIter . step ( ) ) { if ( relationIter . left ( ) == left ) { if ( ! rightCollection . contains ( relationIter . right ( ) ) ) { relationIter = null ; break ; } } } if ( relationIter != null ) { disconnected . add ( left ) ; } } return disconnected ; }
Returns all objects from leftCollection whole images are a disjoin from rightCollection,
none of the resulting objects has an image in rightCollection. Compares objects using ==.
Note that lefts with no image show up in the result.