Package org.eclipse.emf.codegen.ecore.genmodel

Examples of org.eclipse.emf.codegen.ecore.genmodel.GenClass


      namespace     = extendedMetaData.getNamespace(ePackage);
       
      List genClasses = genPackage.getGenClasses();
      for (Iterator iterClass = genClasses.iterator(); iterClass.hasNext();)
      {
        GenClass genClass = (GenClass)iterClass.next();
          String name  = extendedMetaData.getName(genClass.getEcoreClass());
          String className = genPackage.getInterfacePackageName() + "." + genClass.getInterfaceName();
          classes.add( new PackageClassInfo( name, className, false, null ) );
        List features = genClass.getGenFeatures();
        for (Iterator iterFeatures = features.iterator(); iterFeatures.hasNext();)
          {
          GenFeature feature = (GenFeature)iterFeatures.next();
          EStructuralFeature element = feature.getEcoreFeature();
              EClassifier elementType = element.getEType();
              if( elementType instanceof EClass )
              {
                // complex type
                EClass eClass = (EClass)elementType;
                GenClass genEClass = (GenClass)eclassGenClassMap.get(elementType);
            if( genEClass != null )
            {   
                name = extendedMetaData.getName(element);
                String interfaceName = genEClass.getGenPackage().getInterfacePackageName()
                       + '.' + genEClass.getInterfaceName();
                boolean anonymous = extendedMetaData.isAnonymous(eClass);
                           
              // Build list of property names
                List propertyClassNames = new ArrayList();
                List properties = eClass.getEStructuralFeatures();
                for (Iterator iterProperties = properties.iterator(); iterProperties.hasNext();)
                {
                EStructuralFeature property = (EStructuralFeature)iterProperties.next();
                EClassifier propertyType = property.getEType();
                  if (propertyType instanceof EClass)
                  {
                    GenClass propertyGenClass = (GenClass)eclassGenClassMap.get(propertyType);
                    if( propertyGenClass != null )
                    {   
                      String propertyClassName =  propertyGenClass.getGenPackage().getInterfacePackageName() + '.'
                                                  + propertyGenClass.getInterfaceName();
                      propertyClassNames.add(propertyClassName);
                    }       
                  }
                  else if (propertyType instanceof EClassifier)
                  {
View Full Code Here


      else
      {
        genPackage.setResource(GenResourceKind.NONE_LITERAL);
        for (Iterator iter2 = genPackage.getGenClasses().iterator(); iter2.hasNext();)
        {
          GenClass genClass = (GenClass)iter2.next();
          if ("DocumentRoot".equals(genClass.getName()))
          {
            genClass.setDynamic(true); // Don't generate DocumentRoot class
            break;
          }
        }   
      }
    }
View Full Code Here

TOP

Related Classes of org.eclipse.emf.codegen.ecore.genmodel.GenClass

Copyright © 2018 www.massapicom. 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.