public List<OJPathName> getParamTypes(){ List<OJPathName> result = new ArrayList<OJPathName>(); Iterator it = this.getParameters().iterator(); while(it.hasNext()){ OJParameter par = (OJParameter) it.next(); result.add(par.getType()); } return result; } public void renameAll(Set<OJPathName> renamePathNames,String newName){
protected StringBuilder paramsToJava(OJOperation op){ StringBuilder result = new StringBuilder(); Iterator it = op.getParameters().iterator(); boolean first = true; while(it.hasNext()){ OJParameter elem = (OJParameter) it.next(); if(first){ first = false; }else{ result.append(", "); } result.append(elem.toJavaString()); } return result; } protected StringBuilder exceptionsToJava(OJOperation op){
public static StringBuilder paramsToActuals(OJOperation op){ StringBuilder result = new StringBuilder(); Iterator it = op.getParameters().iterator(); boolean first = true; while(it.hasNext()){ OJParameter elem = (OJParameter) it.next(); if(first){ first = false; }else{ result.append(", "); } result.append(elem.getName()); } return result; } // TODO find out whether we can use the generated copy method
public String getSignature(){ StringBuilder sb = new StringBuilder(getName()); sb.append("("); for(OJParameter p:getParameters()){ sb.append(p.getType().getLast()); sb.append(","); } sb.setCharAt(sb.length() - 1, ')'); return sb.toString(); } /******************************************************
public boolean isEqual(String name,List /* (OJPathName) */types){ boolean result = false; if(this.getName().equals(name)){ List<OJParameter> myPars = this.getParameters(); if((myPars.size() == 0) && (types.size() == 0)){ result = true; }else{ if(myPars.size() == types.size()){ Iterator parsIt = myPars.iterator(); Iterator typesIt = types.iterator(); boolean loopResult = true; while(parsIt.hasNext()){ OJParameter par = (OJParameter) parsIt.next(); OJPathName type = (OJPathName) typesIt.next(); if(!(par.getType().equals(type))){ loopResult = false; } } result = loopResult; } } } return result; } public List<OJPathName> getParamTypes(){
/** * @param result */ protected void addJavaDocComment(StringBuilder result){ String comment = getComment(); comment = JavaStringHelpers.replaceAllSubstrings(comment, "\n", "\n * "); result.append("/**\n * " + comment); boolean first = true; Iterator it = getParameters().iterator(); while(it.hasNext()){ OJParameter par = (OJParameter) it.next(); String paramStr = "@param " + par.getName() + " " + par.getComment(); if(first){ result.append("\n * "); first = false; } result.append("\n * " + paramStr); } result.append("\n */\n"); } protected StringBuilder paramsToJava(OJOperation op){
public void renameAll(Set<OJPathName> renamePathNames,String newName){ getReturnType().renameAll(renamePathNames, newName); for(OJParameter parameter:getParameters()){ parameter.renameAll(renamePathNames, newName); } getBody().renameAll(renamePathNames, newName); } @Override
protected void copyValues(OJOperation result){ result.setComment(getComment()); result.setBody(this.getBody().getCopy()); result.setReturnType(this.getReturnType()); result.setFinal(this.isFinal()); result.setStatic(this.isStatic()); result.setVolatile(this.isVolatile()); result.setName(this.getName()); List<OJParameter> params = new ArrayList<OJParameter>(this.getParameters()); result.setParameters(params); result.setVisibility(this.getVisibility()); } public boolean isEqual(String name,List /* (OJPathName) */types){
protected void copyValuesDeep(OJOperation result){ result.setComment(getComment()); result.setBody(this.getBody().getDeepCopy()); result.setReturnType(this.getReturnType().getDeepCopy()); result.setFinal(this.isFinal()); result.setStatic(this.isStatic()); result.setVolatile(this.isVolatile()); result.setName(this.getName()); result.setAbstract(isAbstract()); for(OJParameter ojParameter:this.getParameters()){ result.addToParameters(ojParameter.getDeepCopy()); } result.setVisibility(this.getVisibility()); } protected void copyValues(OJOperation result){