mapping of comments added BLD200402021900
authormmatula@netbeans.org
Mon, 02 Feb 2004 05:46:51 +0000
changeset 1433c5436890f5fd
parent 1432 930eef7b43a1
child 1434 4053459d5520
mapping of comments added
mdr/extras/uml2mof/src/org/netbeans/lib/jmi/uml2mof/Transformer.java
     1.1 --- a/mdr/extras/uml2mof/src/org/netbeans/lib/jmi/uml2mof/Transformer.java	Mon Feb 02 05:44:24 2004 +0000
     1.2 +++ b/mdr/extras/uml2mof/src/org/netbeans/lib/jmi/uml2mof/Transformer.java	Mon Feb 02 05:46:51 2004 +0000
     1.3 @@ -12,71 +12,27 @@
     1.4   */
     1.5  package org.netbeans.lib.jmi.uml2mof;
     1.6  
     1.7 -import java.util.ArrayList;
     1.8 -import java.util.Collection;
     1.9 -import java.util.HashMap;
    1.10 -import java.util.HashSet;
    1.11 -import java.util.Iterator;
    1.12 -import java.util.List;
    1.13 -import java.util.Map;
    1.14 -import java.util.NoSuchElementException;
    1.15 -import java.util.StringTokenizer;
    1.16 -import javax.jmi.model.AliasType;
    1.17 -import javax.jmi.model.Association;
    1.18 -import javax.jmi.model.Classifier;
    1.19 -import javax.jmi.model.CollectionType;
    1.20 -import javax.jmi.model.DirectionKind;
    1.21 -import javax.jmi.model.DirectionKindEnum;
    1.22 -import javax.jmi.model.EnumerationType;
    1.23 -import javax.jmi.model.Import;
    1.24 -import javax.jmi.model.ModelPackage;
    1.25 -import javax.jmi.model.MofClass;
    1.26 -import javax.jmi.model.MofException;
    1.27 -import javax.jmi.model.MofPackage;
    1.28 -import javax.jmi.model.MultiplicityType;
    1.29 -import javax.jmi.model.NameNotFoundException;
    1.30 -import javax.jmi.model.PrimitiveType;
    1.31 -import javax.jmi.model.PrimitiveTypeClass;
    1.32 -import javax.jmi.model.Reference;
    1.33 -import javax.jmi.model.ScopeKindEnum;
    1.34 -import javax.jmi.model.StructuralFeature;
    1.35 -import javax.jmi.model.StructureField;
    1.36 -import javax.jmi.model.StructureType;
    1.37 -import javax.jmi.model.Tag;
    1.38 -import javax.jmi.model.VisibilityKindEnum;
    1.39 -import javax.jmi.reflect.RefObject;
    1.40 -import org.omg.uml.behavioralelements.commonbehavior.UmlException;
    1.41 -import org.omg.uml.modelmanagement.UmlPackage;
    1.42 -import org.omg.uml.foundation.core.AStereotypeExtendedElement;
    1.43  import org.omg.uml.foundation.core.AssociationEnd;
    1.44  import org.omg.uml.foundation.core.Attribute;
    1.45 -import org.omg.uml.foundation.core.BehavioralFeature;
    1.46  import org.omg.uml.foundation.core.DataType;
    1.47 -import org.omg.uml.foundation.core.Dependency;
    1.48 -import org.omg.uml.foundation.core.Element;
    1.49 +import org.omg.uml.foundation.core.*;
    1.50  import org.omg.uml.foundation.core.Enumeration;
    1.51 -import org.omg.uml.foundation.core.EnumerationLiteral;
    1.52  import org.omg.uml.foundation.core.GeneralizableElement;
    1.53 -import org.omg.uml.foundation.core.Generalization;
    1.54 -import org.omg.uml.foundation.core.Method;
    1.55  import org.omg.uml.foundation.core.ModelElement;
    1.56  import org.omg.uml.foundation.core.Namespace;
    1.57  import org.omg.uml.foundation.core.Operation;
    1.58  import org.omg.uml.foundation.core.Parameter;
    1.59 -import org.omg.uml.foundation.core.Stereotype;
    1.60 -import org.omg.uml.foundation.core.TaggedValue;
    1.61 -import org.omg.uml.foundation.core.UmlAssociation;
    1.62 -import org.omg.uml.foundation.core.UmlClass;
    1.63  import org.omg.uml.foundation.datatypes.AggregationKind;
    1.64  import org.omg.uml.foundation.datatypes.AggregationKindEnum;
    1.65 -import org.omg.uml.foundation.datatypes.ChangeableKindEnum;
    1.66 -import org.omg.uml.foundation.datatypes.Multiplicity;
    1.67 -import org.omg.uml.foundation.datatypes.MultiplicityRange;
    1.68 -import org.omg.uml.foundation.datatypes.OrderingKindEnum;
    1.69 -import org.omg.uml.foundation.datatypes.ParameterDirectionKind;
    1.70 -import org.omg.uml.foundation.datatypes.ParameterDirectionKindEnum;
    1.71 -import org.omg.uml.modelmanagement.ElementImport;
    1.72 +import org.omg.uml.foundation.datatypes.*;
    1.73 +import org.omg.uml.modelmanagement.UmlPackage;
    1.74  import org.openide.ErrorManager;
    1.75 +import javax.jmi.model.*;
    1.76 +import javax.jmi.model.ScopeKindEnum;
    1.77 +import javax.jmi.model.StructuralFeature;
    1.78 +import javax.jmi.model.VisibilityKindEnum;
    1.79 +import javax.jmi.reflect.RefObject;
    1.80 +import java.util.*;
    1.81  
    1.82  /**
    1.83   *
    1.84 @@ -247,7 +203,7 @@
    1.85                      i.setContainer((MofPackage) client);
    1.86                      i.setImportedNamespace((MofPackage) supplier);
    1.87                  } else if (isOfType(dep, STEREOTYPE_SPECIALIZES)) {
    1.88 -                    ((MofPackage) client).getSupertypes().add((MofPackage) supplier);
    1.89 +                    ((MofPackage) client).getSupertypes().add(supplier);
    1.90                  }
    1.91              }
    1.92          }
    1.93 @@ -256,7 +212,7 @@
    1.94      private void lookForModel(Namespace ns) {
    1.95          if (ns instanceof UmlPackage && isOfType(ns, STEREOTYPE_METAMODEL)) {
    1.96              info("*** Outermost package found: " + ns.getName());
    1.97 -            transform((UmlPackage) ns, null);
    1.98 +            transform(ns, null);
    1.99          } else {
   1.100              for (Iterator it = ns.getOwnedElement().iterator(); it.hasNext();) {
   1.101                  Object temp = it.next();
   1.102 @@ -500,6 +456,9 @@
   1.103          } else if (obj instanceof DataType) {
   1.104              transformDataType((DataType) obj, container);
   1.105          } else if (obj instanceof Parameter) {
   1.106 +            if (((Parameter) obj).getType() == null) {
   1.107 +                return; // ignore parameter without a type
   1.108 +            }
   1.109              transformOParam((Parameter) obj, (javax.jmi.model.Operation) container);
   1.110          } else if (obj instanceof Operation) {
   1.111              transformOperation((Operation) obj, (MofClass) container);
   1.112 @@ -516,8 +475,13 @@
   1.113      //////////////////////////////////////////////////////////////////////////////////
   1.114      
   1.115      private String getAnnotation(Object umlElement) {
   1.116 -        // [PENDING] implement correctly
   1.117 -        return "";
   1.118 +        String result = "";
   1.119 +        Iterator it = ((ModelElement) umlElement).getComment().iterator();
   1.120 +        while (it.hasNext() && "".equals(result)) {
   1.121 +            result = ((Comment) it.next()).getName();
   1.122 +            if (result == null) result = "";
   1.123 +        }
   1.124 +        return result;
   1.125      }
   1.126      
   1.127      private String getTagValue(ModelElement element, String tagName, String defaultValue) {