From: Benjamin B. <bg...@us...> - 2005-07-25 07:57:27
|
Update of /cvsroot/sblim/ecute/Plugin/com/ibm/ecute/rsa/core/internal/properties In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15043/Plugin/com/ibm/ecute/rsa/core/internal/properties Modified Files: QualifiersPropertySection.java FlavorsHelper.java Log Message: fixes in flavor presentation and modification Index: FlavorsHelper.java =================================================================== RCS file: /cvsroot/sblim/ecute/Plugin/com/ibm/ecute/rsa/core/internal/properties/FlavorsHelper.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- FlavorsHelper.java 20 Jul 2005 15:21:46 -0000 1.4 +++ FlavorsHelper.java 25 Jul 2005 07:57:18 -0000 1.5 @@ -614,6 +614,10 @@ if(attribute != null){ +// if(getQualifiersStereotypeQualifer(attribute, "Override") == null){ +// return null; +// } + EList list = attribute.getOwnedComments(); Iterator it = list.iterator(); while (it.hasNext()){ @@ -626,6 +630,10 @@ if(description != null){ return(new EffectiveInheritedValue(description, (Class)parents.get(j))); } + + if(!override(attribute) && j != parents.size()-1){ + return null; + } } } return null; @@ -661,6 +669,10 @@ if(description != null){ return(new EffectiveInheritedValue(description, (Class)parents.get(j))); } + + if(!override(method) && j != parents.size()-1){ + return null; + } } } return null; @@ -706,6 +718,10 @@ if(description != null){ return(new EffectiveInheritedValue(description, (Class)parents.get(j))); } + + if(!override(method) && j != parents.size()-1){ + return null; + } } } return null; @@ -803,6 +819,10 @@ if(stereo != null){ return(new EffectiveInheritedValue("true", (Class)parents.get(j))); } + + if(!override(attribute) && j != parents.size()-1){ + return null; + } } } } else { @@ -872,6 +892,10 @@ if(datatype.getName().equalsIgnoreCase("Octetstring")){ return(new EffectiveInheritedValue("true", (Class)parents.get(j))); } + + if(!override(attribute) && j != parents.size()-1){ + return null; + } } } } @@ -899,6 +923,10 @@ if(datatype.getName().equalsIgnoreCase("Octetstring")){ return(new EffectiveInheritedValue("true", (Class)parents.get(j))); } + + if(!override(method) && j != parents.size()-1){ + return null; + } } } } @@ -939,6 +967,9 @@ if(datatype.getName().equalsIgnoreCase("Octetstring")){ return(new EffectiveInheritedValue("true", (Class)parents.get(j))); } + if(!override(method) && j != parents.size()-1){ + return null; + } } } } @@ -973,8 +1004,13 @@ } } - if(attribute != null && attribute.isStatic()){ - return(new EffectiveInheritedValue("true", (Class)parents.get(j))); + if(attribute != null){ + if(attribute.isStatic()){ + return(new EffectiveInheritedValue("true", (Class)parents.get(j))); + } + if(!override(attribute) && j != parents.size()-1){ + return null; + } } } @@ -991,8 +1027,13 @@ } } - if(method != null && equalMethods(operation, method) && method.isStatic()){ - return(new EffectiveInheritedValue("true", (Class)parents.get(j))); + if(method != null && equalMethods(operation, method)){ + if(method.isStatic()){ + return(new EffectiveInheritedValue("true", (Class)parents.get(j))); + } + if(!override(method) && j != parents.size()-1){ + return null; + } } } } @@ -1019,8 +1060,13 @@ } } - if(attribute != null && !attribute.isReadOnly()){ - return(new EffectiveInheritedValue("true", (Class)parents.get(j))); + if(attribute != null){ + if(!attribute.isReadOnly()){ + return(new EffectiveInheritedValue("true", (Class)parents.get(j))); + } + if(!override(attribute) && j != parents.size()-1){ + return null; + } } } } else { @@ -1071,6 +1117,10 @@ if(qualValue != null){ return(new EffectiveInheritedValue(qualValue, (Class)parents.get(j))); } + + if(!override(attribute) && j != parents.size()-1){ + return null; + } } } return null; @@ -1094,6 +1144,10 @@ if(qualValue != null){ return(new EffectiveInheritedValue(qualValue, (Class)parents.get(j))); } + + if(!override(method) && j != parents.size()-1){ + return null; + } } } return null; @@ -1107,11 +1161,13 @@ for(int j = 0; j < parents.size(); j++){ String description = null; Parameter param = null; + Operation method = null; List operationsList = ((Class)parents.get(j)).getOwnedOperations(); for(int i = 0; i < operationsList.size(); i++){ - if(((Operation)operationsList.get(i)).getName().equalsIgnoreCase(operation.getName())){ - List parameterList = ((Operation)operationsList.get(i)).getOwnedParameters(); + method = (Operation)operationsList.get(i); + if(method.getName().equalsIgnoreCase(operation.getName())){ + List parameterList = method.getOwnedParameters(); for(int k = 0; k < parameterList.size(); k++){ if(((Parameter)parameterList.get(k)).getName().equalsIgnoreCase(parameter.getName())){ param = (Parameter)parameterList.get(k); @@ -1126,6 +1182,10 @@ if(qualValue != null){ return(new EffectiveInheritedValue(qualValue, (Class)parents.get(j))); } + + if(!override(method) && j != parents.size()-1){ + return null; + } } } return null; Index: QualifiersPropertySection.java =================================================================== RCS file: /cvsroot/sblim/ecute/Plugin/com/ibm/ecute/rsa/core/internal/properties/QualifiersPropertySection.java,v retrieving revision 1.22 retrieving revision 1.23 diff -u -d -r1.22 -r1.23 --- QualifiersPropertySection.java 21 Jul 2005 15:19:32 -0000 1.22 +++ QualifiersPropertySection.java 25 Jul 2005 07:57:18 -0000 1.23 @@ -493,7 +493,8 @@ if(((AssociationClass)prop.getOwner()).getOwnedEnds().contains(prop)){ if((prop.getUpper() != MultiplicityElement.UNLIMITED_UPPER_BOUND) || (prop.getUpper() == MultiplicityElement.UNLIMITED_UPPER_BOUND - &&prop.getUpper() != (FlavorsHelper.effectiveInheritedValue(element, "Max")).getIntValue())){ + && FlavorsHelper.effectiveInheritedValue(element, "Max") != null + && prop.getUpper() != (FlavorsHelper.effectiveInheritedValue(element, "Max")).getIntValue())){ qualifierName = "Max"; String value = new Integer(prop.getUpper()).toString(); if(value.equalsIgnoreCase("-1")){ @@ -504,6 +505,7 @@ allAvailableQualifers.remove(qualifierObject); } if((prop.getLower() != 0) || (prop.getLower() == 0 + && FlavorsHelper.effectiveInheritedValue(element, "Min") != null && prop.getLower() != (FlavorsHelper.effectiveInheritedValue(element, "Min")).getIntValue())){ qualifierName = "Min"; String value = new Integer(prop.getLower()).toString(); @@ -580,6 +582,11 @@ for(int k = 0; k < inheritedQualifiers.size(); k++){ qualifierName = ((QualifierValueObject)inheritedQualifiers.get(k)).name; String qualifierValue = ((QualifierValueObject)inheritedQualifiers.get(k)).value; + if(qualifierName.equalsIgnoreCase("Max") && qualifierValue.equalsIgnoreCase("-1")){ + qualifierValue = "null"; + } else if(qualifierName.equalsIgnoreCase("Min") && qualifierValue.equalsIgnoreCase("-1")){ + qualifierValue = "0"; + } definedIn = ((QualifierValueObject)inheritedQualifiers.get(k)).definedIn; Qualifier qualifierObject = qualifiersList.GetElement(qualifierName); addQualiferToTable(qualifierName, qualifierValue, definedIn, qualifierObject, -1, false); |