Examples of EMFReference


Examples of org.openiaml.docs.modeldoc.EMFReference

        EClass refDest = ref.getEReferenceType();
        // find the corresponding EMFClass
        EMFClass refDestEMF = getEMFClassFor(root, refDest);
       
        // create a new EMFReference
        EMFReference newRef = factory.createEMFReference();
        newRef.setName(ref.getName());
        newRef.setLowerBound(ref.getLowerBound());
        newRef.setUpperBound(ref.getUpperBound());
        newRef.setContainment(ref.isContainment());
        if (refDestEMF != null) {
          newRef.setType(refDestEMF);
        } else {
          // is there an external class?
          EMFExternalClass refExternalClass = getEMFExternalClassFor(root, refDest);
          if (refExternalClass == null) {
            // we need to create one
            refExternalClass = factory.createEMFExternalClass();
            refExternalClass.setName(refDest.getName());
            EPackage pkg = refDest.getEPackage();
            if (pkg != null) {
              refExternalClass.setTargetClass(refDest);
              refExternalClass.setPackageName(pkg.getName());
              refExternalClass.setPackageURI(pkg.getNsURI());
              refExternalClass.setPackagePrefix(pkg.getNsPrefix());
            }
            root.getExternalClasses().add(refExternalClass);
          }
          newRef.setType(refExternalClass);
        }
        newRef.setTypeName(refDest.getName());
       
        // add tagline
        EMFLoaderHelper helper = new EMFLoaderHelper() {
          @Override
          public List<ITagHandler> getSemanticTagHandlers() {
            return generator.getSemanticTagHandlers();
          }
        };
        JavadocTagElement e = helper.getTaglineForEMFElement(factory, ref);
        if (e != null) {
          newRef.setTagline(e);
        }
       
        source.getReferences().add(newRef);
       
        // save copy
        allRefs.put(ref, newRef);
       
      }
     
    }
   
    // once all references have been loaded, create opposite references
    for (EReference ref : allRefs.keySet()) {
      EMFReference target = allRefs.get(ref);
     
      if (ref.getEOpposite() != null) {
        if (allRefs.containsKey(ref.getEOpposite())) {
          // found it
          target.setOpposite( allRefs.get(ref.getEOpposite()) );
        }
      }
    }
   
  }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.