public void addToStatements(int index,OJStatement statement){ getStatements().add(index, statement); } public void addToStatements(int indexOfRemoveVertex,String expression){
public StringBuilder staticBlock() { StringBuilder result = new StringBuilder(); result.append("static {\n"); result.append(JavaStringHelpers.indent(JavaUtil.collectionToJavaString(this.staticBlock.getStatements(), "\n"), 1)); result.append("\n}\n"); return result; }
/** * @return */ public OJBlock getCopy(){ OJBlock newBody = new OJBlock(); List<OJStatement> stats = new ArrayList<OJStatement>(this.getStatements()); newBody.setStatements(stats); return newBody; } public OJBlock getDeepCopy(){
public OJStatement findStatement(String name){ for(OJStatement statement:getStatements()){ if(statement.getName() != null && statement.getName().equals(name)){ return statement; } } return null; } public OJStatement findStatementRecursive(String name){
private void addInitVariables(OJAnnotatedClass annotatedClass, Class clazz) { OJOperation initVariables = new OJAnnotatedOperation(INIT_VARIABLES); if (UmlgClassOperations.hasSupertype(clazz)) { OJSimpleStatement simpleStatement = new OJSimpleStatement("super.initVariables()"); if (initVariables.getBody().getStatements().isEmpty()) { initVariables.getBody().addToStatements(simpleStatement); } else { initVariables.getBody().getStatements().set(0, simpleStatement); } } annotatedClass.addToOperations(initVariables); }
private void addPrimitiveInitVariables(OJAnnotatedClass annotatedClass, Class clazz) { OJOperation initVariables = new OJAnnotatedOperation(INIT_DATE_TYPE_VARIABLES_WITH_DEFAULT_VALUES); if (UmlgClassOperations.hasSupertype(clazz)) { OJSimpleStatement simpleStatement = new OJSimpleStatement("super." + INIT_DATE_TYPE_VARIABLES_WITH_DEFAULT_VALUES + "()"); if (initVariables.getBody().getStatements().isEmpty()) { initVariables.getBody().addToStatements(simpleStatement); } else { initVariables.getBody().getStatements().set(0, simpleStatement); } } annotatedClass.addToOperations(initVariables); }
private void addTmpIdToToJson(OJAnnotatedClass annotatedClass) { OJAnnotatedOperation toJson = annotatedClass.findOperation("toJson", new OJPathName("Boolean")); OJIfStatement ifTmpNull = new OJIfStatement("this.tmpId != null"); //Insert the line at second line ifTmpNull.addToThenPart("sb.append(\"\\\"tmpId\\\": \\\"\" + this.tmpId + \"\\\", \")"); toJson.getBody().getStatements().add(1, ifTmpNull); OJAnnotatedOperation toJsonWithoutCompositeParent = annotatedClass.findOperation("toJsonWithoutCompositeParent", new OJPathName("Boolean")); //Insert the line at second line toJsonWithoutCompositeParent.getBody().getStatements().add(1, ifTmpNull); }
public void renameAll(Set<OJPathName> renamePathNames,String newName){ for(OJStatement statement:getStatements()){ statement.renameAll(renamePathNames, newName); } for(OJField ojField:getLocals()){ ojField.renameAll(renamePathNames, newName); } } public OJStatement findStatement(String name){
public String toJavaString(){ String result = ""; if(getComment().length() != 0) result = "/* " + getComment() + "*/\n"; if(!getLocals().isEmpty()){ result = result + JavaUtil.collectionToJavaString(getLocals(), "\n") + "\n"; } result = result + JavaUtil.collectionToJavaString(getStatements(), "\n"); return result; } /**
public String toJavaString(){ StringBuilder result = new StringBuilder(); if (getComment().equals("")){ setComment("constructor for " + getOwner().getName()); } addJavaDocComment(result); result.append(visToJava(this) + " " + getOwner().getName()); // params result.append("(" + paramsToJava(this) + ") "); //Throws if (!getThrows().isEmpty()) { result.append("throws " + exceptionsToJava(this) + " {\n"); } else { result.append(" {\n"); } // body StringBuilder bodyStr = new StringBuilder(); bodyStr.append(JavaUtil.collectionToJavaString(getBody().getStatements(),"\n")); result.append(JavaStringHelpers.indent(bodyStr, 1)); if (result.charAt(result.length()-1) == '\n'){ result.deleteCharAt(result.length()-1); } // closing bracket result.append("\n}\n"); return result.toString(); }
classInfo.append(JavaStringHelpers.indent(fields(), 1)); classInfo.append("\n\n"); if (!this.staticBlock.getStatements().isEmpty()) { classInfo.append(JavaStringHelpers.indent(staticBlock(), 1)); classInfo.append("\n\n");
public void copyDeepInfoInto(OJBlock copy){ for(OJStatement statement:getStatements()){ copy.addToStatements(statement.getDeepCopy()); } for(OJField ojField:getLocals()){ copy.addToLocals(ojField.getDeepCopy()); } } public void renameAll(Set<OJPathName> renamePathNames,String newName){
public OJStatement findStatementRecursive(String name){ for(OJStatement statement:getStatements()){ if(statement.getName() != null && statement.getName().equals(name)){ return statement; } if(statement instanceof OJIfStatement){ OJIfStatement ifs = (OJIfStatement) statement; OJStatement s = ifs.getThenPart().findStatementRecursive(name); if(s == null && ifs.getElsePart()!=null){ s = ifs.getElsePart().findStatementRecursive(name); } if(s != null){ return s; } }else if(statement instanceof OJForStatement){ OJForStatement ifs = (OJForStatement) statement; OJStatement s = ifs.getBody().findStatementRecursive(name); if(s != null){ return s; } }else{ // TODO } } return null; } public OJField findLocal(String name){
for (OJStatement s : fromLabel.getBody().getStatements()) { if (s.toJavaString().equals("return null;")) { toRemove.add(count); fromLabel.getBody().getStatements().remove(integer.intValue()); for (OJStatement s : fromQualifiedName.getBody().getStatements()) { if (s.toJavaString().equals("return null;")) { toRemove.add(count); fromQualifiedName.getBody().getStatements().remove(integer.intValue());
public String toJavaString() { String result = ""; result = "try {\n"; result = result + JavaStringHelpers.indent(getTryPart().toJavaString(), 1); if (getCatchPart() != null) { result = result + "\n} catch (" + getCatchParam().toJavaString() + ") {\n"; result = result + JavaStringHelpers.indent(getCatchPart().toJavaString(), 1); result = result + "\n}"; } if (getFinallyPart() != null && !getFinallyPart().getStatements().isEmpty()) { if (getCatchPart() == null) { result = result + "\n} finally {\n"; } else { result = result + " finally {\n"; } result = result + JavaStringHelpers.indent(getFinallyPart().toJavaString(), 1); result = result + "\n}"; } return result; }
for (StructuralFeature definingFeature : definingFeatures) { OJAnnotatedOperation getter = definingFeatureGetterMap.get(definingFeature); OJSwitchStatement ojSwitchStatement = (OJSwitchStatement) getter.getBody().getStatements().get(0); OJSwitchCase ojSwitchCase = new OJSwitchCase(); ojSwitchCase.setLabel(literal.getName());
protected void addImportsRecursively(OJBlock body) { if (body != null) { for (OJField ojField : body.getLocals()) { this.addToImports(ojField.getType()); } for (OJStatement s : body.getStatements()) { if (s instanceof OJIfStatement) { addImportsRecursively(((OJIfStatement) s).getThenPart()); addImportsRecursively(((OJIfStatement) s).getElsePart()); } else if (s instanceof OJBlock) { addImportsRecursively(((OJBlock) s)); } else if (s instanceof OJTryStatement) { addImportsRecursively(((OJTryStatement) s).getTryPart()); addImportsRecursively(((OJTryStatement) s).getCatchPart()); } else if (s instanceof OJWhileStatement) { addImportsRecursively(((OJWhileStatement) s).getBody()); } else if (s instanceof OJForStatement) { addImportsRecursively(((OJForStatement) s).getBody()); addToImports(((OJForStatement) s).getElemType()); } else if (s instanceof OJSwitchStatement) { for (OJSwitchCase ojSwitchCase : ((OJSwitchStatement) s).getCases()) { addImportsRecursively(ojSwitchCase.getBody()); } } } } }