Example usage for org.aspectj.asm IRelationshipMap getEntries

List of usage examples for org.aspectj.asm IRelationshipMap getEntries

Introduction

In this page you can find the example usage for org.aspectj.asm IRelationshipMap getEntries.

Prototype

public Set<String> getEntries();

Source Link

Usage

From source file:org.caesarj.compiler.asm.StructureModelDump.java

License:Open Source License

protected void printRelationshipMap(CaesarJAsmManager asmManager) {
    System.out.println("Dumping Relationship Map");
    IHierarchy hierarchy = asmManager.getHierarchy();
    IRelationshipMap map = asmManager.getRelationshipMap();
    Set entries = map.getEntries();
    Iterator i = entries.iterator();
    while (i.hasNext()) {
        List relationships = map.get((String) i.next());
        Iterator j = relationships.iterator();
        while (j.hasNext()) {
            IRelationship relationship = (IRelationship) j.next();
            System.out.println("Relationship '" + relationship.getName() + "' of kind '"
                    + relationship.getKind() + "' has " + relationship.getTargets().size() + " target(s) ");
            System.out.println("   source handle -->" + relationship.getSourceHandle());
            Iterator k = relationship.getTargets().iterator();
            while (k.hasNext()) {
                IProgramElement element = hierarchy.findElementForHandle((String) k.next());
                System.out.println("  -> '" + element.getName() + "' of kind '" + element.getKind()
                        + "' with handle " + element.getHandleIdentifier());
            }/* w w  w.  j  a v a  2s.  com*/
        }
    }
}

From source file:org.eclipse.ajdt.core.model.AJModelChecker.java

License:Open Source License

/**
 * iterates through all relationships and checks to see that it passes all rules
 * /*from  w  w w .  ja v  a 2 s .  co  m*/
 * returns list of questionable relationships as strings.  An empty list is returned if the
 * model is OK. 
 */
private static List<String> internalCheckModel(AJProjectModelFacade model) {
    IRelationshipMap relationships = model.getAllRelationships();
    List<String> problems = new ArrayList<String>();
    if (relationships != null) {
        for (Iterator<String> relIter = relationships.getEntries().iterator(); relIter.hasNext();) {
            String handle = (String) relIter.next();
            List<IRelationship> relsForHandle = relationships.get(handle);
            for (Iterator<IRelationship> relIter2 = relsForHandle.iterator(); relIter2.hasNext();) {
                IRelationship rel = (IRelationship) relIter2.next();
                List<String> res = invalidAdviceRelationsip(rel, model);
                problems.addAll(res);
                res = itdsNotOnType(rel, model);
                problems.addAll(res);
            }
        }
    } else {
        problems.add("No relationshipes found");
    }

    return problems;
}