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; }
protected void commitOrRollback(OJTryStatement ojTryStatement) { OJIfStatement ifTransactionNeedsCommitOrRollback = new OJIfStatement("!(getQueryValue(\"" + UmlgGenerationUtil.rollback+ "\") != null && Boolean.valueOf(getQueryValue(\"" + UmlgGenerationUtil.rollback + "\")))"); ifTransactionNeedsCommitOrRollback.addToThenPart(UmlgGenerationUtil.UMLGAccess + ".commit()"); ojTryStatement.getTryPart().addToStatements(ifTransactionNeedsCommitOrRollback); ojTryStatement.getFinallyPart().addToStatements(UmlgGenerationUtil.UMLGAccess + ".rollback()"); }
public void copyDeepInfoInto(OJTryStatement copy) { super.copyDeepInfoInto(copy); if (getTryPart() != null) { copy.setTryPart(getTryPart().getDeepCopy()); } if (getCatchPart() != null) { copy.setCatchPart(getCatchPart().getDeepCopy()); } if (getCatchParam() != null) { copy.setCatchParam(getCatchParam().getDeepCopy()); } if (getFinallyPart() != null) { copy.setFinallyPart(getFinallyPart().getDeepCopy()); } }
private void addGetObjectRepresentation(PropertyWrapper pWrap/*, OJAnnotatedInterface annotatedInf*/, OJAnnotatedClass annotatedClass) { OJAnnotatedOperation get = new OJAnnotatedOperation("get", UmlgRestletGenerationUtil.Representation); get.addToThrows(UmlgRestletGenerationUtil.ResourceException); annotatedClass.addToImports(UmlgRestletGenerationUtil.ResourceException); UmlgGenerationUtil.addOverrideAnnotation(get); OJTryStatement ojTryStatement = new OJTryStatement(); OJPathName parentPathName = UmlgClassOperations.getPathName(pWrap.getOtherEnd().getType()); ojTryStatement.getTryPart().addToStatements( "this." + parentPathName.getLast().toLowerCase() + "Id = " + UmlgRestletGenerationUtil.UmlgURLDecoder.getLast() + ".decode((String)getRequestAttributes().get(\"" + parentPathName.getLast().toLowerCase() + "Id\"))" ); annotatedClass.addToImports(UmlgRestletGenerationUtil.UmlgURLDecoder); ojTryStatement.getTryPart().addToStatements( parentPathName.getLast() + " resource = " + UmlgGenerationUtil.UMLGAccess + "." + UmlgGenerationUtil.getEntity + "(this." + parentPathName.getLast().toLowerCase() + "Id" + ")" ); annotatedClass.addToImports(parentPathName); buildToJson(pWrap, annotatedClass, ojTryStatement.getTryPart()); ojTryStatement.setCatchPart(null); ojTryStatement.getFinallyPart().addToStatements(UmlgGenerationUtil.UMLGAccess + ".rollback()"); get.getBody().addToStatements(ojTryStatement); annotatedClass.addToImports(UmlgGenerationUtil.UMLGPathName); annotatedClass.addToImports(UmlgRestletGenerationUtil.JsonRepresentation); annotatedClass.addToOperations(get); }
private void addOptionsObjectRepresentation(PropertyWrapper pWrap, OJAnnotatedClass annotatedClass, boolean asAssociationClass) { OJAnnotatedOperation get = new OJAnnotatedOperation("options", UmlgRestletGenerationUtil.Representation); get.addToThrows(UmlgRestletGenerationUtil.ResourceException); annotatedClass.addToImports(UmlgRestletGenerationUtil.ResourceException); OJTryStatement tryStatement = new OJTryStatement(); OJPathName parentPathName; if (!asAssociationClass) { parentPathName = UmlgClassOperations.getPathName(pWrap.getOtherEnd().getType()); } else { parentPathName = pWrap.getAssociationClassPathName(); } tryStatement.getTryPart().addToStatements( "this." + parentPathName.getLast().toLowerCase() + "Id = " + UmlgRestletGenerationUtil.UmlgURLDecoder.getLast() + ".decode((String)getRequestAttributes().get(\"" + parentPathName.getLast().toLowerCase() + "Id\"))" ); annotatedClass.addToImports(UmlgRestletGenerationUtil.UmlgURLDecoder); tryStatement.getTryPart().addToStatements( parentPathName.getLast() + " parentResource = " + UmlgGenerationUtil.UMLGAccess + "." + UmlgGenerationUtil.getEntity + "(" + parentPathName.getLast().toLowerCase() + "Id" + ")"); annotatedClass.addToImports(parentPathName); buildToJsonForOptions(pWrap, annotatedClass, tryStatement.getTryPart(), asAssociationClass); get.getBody().addToStatements(tryStatement); tryStatement.getFinallyPart().addToStatements(UmlgGenerationUtil.UMLGAccess + ".rollback()"); tryStatement.setCatchPart(null); annotatedClass.addToImports(UmlgGenerationUtil.UMLGPathName); annotatedClass.addToImports(UmlgRestletGenerationUtil.JsonRepresentation); annotatedClass.addToOperations(get); }
private void addGetObjectRepresentation(PropertyWrapper pWrap, OJAnnotatedClass annotatedClass, boolean asAssociationClass) { OJAnnotatedOperation get = new OJAnnotatedOperation("get", UmlgRestletGenerationUtil.Representation); get.addToThrows(UmlgRestletGenerationUtil.ResourceException); annotatedClass.addToImports(UmlgRestletGenerationUtil.ResourceException); OJTryStatement tryStatement = new OJTryStatement(); OJPathName parentPathName; if (!asAssociationClass) { parentPathName = UmlgClassOperations.getPathName(pWrap.getOtherEnd().getType()); } else { parentPathName = pWrap.getAssociationClassPathName(); } tryStatement.getTryPart().addToStatements( "this." + parentPathName.getLast().toLowerCase() + "Id = " + UmlgRestletGenerationUtil.UmlgURLDecoder.getLast() + ".decode((String)getRequestAttributes().get(\"" + parentPathName.getLast().toLowerCase() + "Id\"))" ); annotatedClass.addToImports(UmlgRestletGenerationUtil.UmlgURLDecoder); tryStatement.getTryPart().addToStatements( parentPathName.getLast() + " parentResource = " + UmlgGenerationUtil.UMLGAccess + "." + UmlgGenerationUtil.getEntity + "(" + parentPathName.getLast().toLowerCase() + "Id" + ")"); annotatedClass.addToImports(parentPathName); buildToJson(pWrap, annotatedClass, tryStatement.getTryPart(), asAssociationClass); get.getBody().addToStatements(tryStatement); tryStatement.getFinallyPart().addToStatements(UmlgGenerationUtil.UMLGAccess + ".rollback()"); tryStatement.setCatchPart(null); annotatedClass.addToImports(UmlgGenerationUtil.UMLGPathName); annotatedClass.addToImports(UmlgRestletGenerationUtil.JsonRepresentation); annotatedClass.addToOperations(get); }
ojTryStatement.setCatchPart(null); ojTryStatement.getFinallyPart().addToStatements(UmlgGenerationUtil.UMLGAccess + ".rollback()"); get.getBody().addToStatements(ojTryStatement);
private void addOptionsObjectRepresentation(PropertyWrapper pWrap, OJAnnotatedClass annotatedClass) { OJAnnotatedOperation option = new OJAnnotatedOperation("options", UmlgRestletGenerationUtil.Representation); UmlgGenerationUtil.addOverrideAnnotation(option); option.addToThrows(UmlgRestletGenerationUtil.ResourceException); annotatedClass.addToImports(UmlgRestletGenerationUtil.ResourceException); annotatedClass.addToOperations(option); OJTryStatement tryStatement = new OJTryStatement(); OJPathName parentPathName; if (pWrap.getOtherEnd() != null) { parentPathName = UmlgClassOperations.getPathName(pWrap.getOtherEnd().getType()); } else { parentPathName = UmlgClassOperations.getPathName(pWrap.getOwningType()); } tryStatement.getTryPart().addToStatements( "this." + parentPathName.getLast().toLowerCase() + "Id = " + UmlgRestletGenerationUtil.UmlgURLDecoder.getLast() + ".decode((String)getRequestAttributes().get(\"" + parentPathName.getLast().toLowerCase() + "Id\"))" ); annotatedClass.addToImports(UmlgRestletGenerationUtil.UmlgURLDecoder); tryStatement.getTryPart().addToStatements( parentPathName.getLast() + " parentResource = " + UmlgGenerationUtil.UMLGAccess + "." + UmlgGenerationUtil.getEntity + "(" + parentPathName.getLast().toLowerCase() + "Id" + ")"); annotatedClass.addToImports(parentPathName); //do the stuff here man buildToJsonForOption(pWrap, annotatedClass, tryStatement.getTryPart()); option.getBody().addToStatements(tryStatement); tryStatement.getFinallyPart().addToStatements(UmlgGenerationUtil.UMLGAccess + ".rollback()"); tryStatement.setCatchPart(null); annotatedClass.addToImports(UmlgGenerationUtil.UMLGPathName); annotatedClass.addToImports(UmlgRestletGenerationUtil.JsonRepresentation); }
private void addGetObjectRepresentation(PropertyWrapper pWrap, OJAnnotatedClass annotatedClass) { OJAnnotatedOperation get = new OJAnnotatedOperation("get", UmlgRestletGenerationUtil.Representation); UmlgGenerationUtil.addOverrideAnnotation(get); get.addToThrows(UmlgRestletGenerationUtil.ResourceException); UmlgGenerationUtil.addOverrideAnnotation(get); annotatedClass.addToImports(UmlgRestletGenerationUtil.ResourceException); OJTryStatement tryStatement = new OJTryStatement(); OJPathName parentPathName; if (pWrap.getOtherEnd() != null) { parentPathName = UmlgClassOperations.getPathName(pWrap.getOtherEnd().getType()); } else { parentPathName = UmlgClassOperations.getPathName(pWrap.getOwningType()); } tryStatement.getTryPart().addToStatements( "this." + parentPathName.getLast().toLowerCase() + "Id = " + UmlgRestletGenerationUtil.UmlgURLDecoder.getLast() + ".decode((String)getRequestAttributes().get(\"" + parentPathName.getLast().toLowerCase() + "Id\"))" ); annotatedClass.addToImports(UmlgRestletGenerationUtil.UmlgURLDecoder); tryStatement.getTryPart().addToStatements( parentPathName.getLast() + " parentResource = " + UmlgGenerationUtil.UMLGAccess + "." + UmlgGenerationUtil.getEntity + "(" + parentPathName.getLast().toLowerCase() + "Id" + ")"); annotatedClass.addToImports(parentPathName); buildToJson(pWrap, annotatedClass, tryStatement.getTryPart()); get.getBody().addToStatements(tryStatement); tryStatement.getFinallyPart().addToStatements(UmlgGenerationUtil.UMLGAccess + ".rollback()"); tryStatement.setCatchPart(null); annotatedClass.addToImports(UmlgGenerationUtil.UMLGPathName); annotatedClass.addToImports(UmlgRestletGenerationUtil.JsonRepresentation); annotatedClass.addToOperations(get); }
private void addGetRepresentation(Class clazz, OJAnnotatedClass annotatedClass) { OJAnnotatedOperation get = new OJAnnotatedOperation("get", UmlgRestletGenerationUtil.Representation); get.addToThrows(UmlgRestletGenerationUtil.ResourceException); annotatedClass.addToImports(UmlgRestletGenerationUtil.ResourceException); UmlgGenerationUtil.addOverrideAnnotation(get); OJTryStatement ojTryStatement = new OJTryStatement(); ojTryStatement.setCatchPart(null); ojTryStatement.getFinallyPart().addToStatements(UmlgGenerationUtil.UMLGAccess + ".rollback()"); get.getBody().addToStatements(ojTryStatement); ojTryStatement.getTryPart().addToStatements( "this." + getIdFieldName(clazz) + "= " + UmlgRestletGenerationUtil.UmlgURLDecoder.getLast() + ".decode((String)getRequestAttributes().get(\"" + getIdFieldName(clazz) + "\"));"); annotatedClass.addToImports(UmlgRestletGenerationUtil.UmlgURLDecoder); ojTryStatement.getTryPart().addToStatements( UmlgClassOperations.className(clazz) + " c = " + UmlgGenerationUtil.UMLGAccess + "." + UmlgGenerationUtil.getEntity + "(this." + getIdFieldName(clazz) + ")"); annotatedClass.addToImports(UmlgClassOperations.getPathName(clazz)); ojTryStatement.getTryPart().addToStatements("StringBuilder json = new StringBuilder()"); ojTryStatement.getTryPart().addToStatements("json.append(\"{\\\"data\\\": [\")"); StringBuilder pathToCompositionRootCalc = new StringBuilder("json.append(RestletToJsonUtil.pathToCompositionRootAsJson("); annotatedClass.addToImports(UmlgRestletGenerationUtil.RestletToJsonUtil); pathToCompositionRootCalc.append("c.<" + UmlgRestletGenerationUtil.UmlgRestletNode.getLast() + ">getPathToCompositionalRoot(), "); annotatedClass.addToImports(UmlgRestletGenerationUtil.UmlgRestletNode); pathToCompositionRootCalc.append("\"Root\", \"/" + clazz.getModel().getName() + "\"))"); ojTryStatement.getTryPart().addToStatements(pathToCompositionRootCalc.toString()); ojTryStatement.getTryPart().addToStatements("json.append(\"]}\")"); ojTryStatement.getTryPart().addToStatements("return new " + UmlgRestletGenerationUtil.JsonRepresentation.getLast() + "(json.toString())"); annotatedClass.addToImports(UmlgGenerationUtil.UMLGPathName); annotatedClass.addToImports(UmlgRestletGenerationUtil.JsonRepresentation); annotatedClass.addToOperations(get); }
tryStatement.getFinallyPart().addToStatements(UmlgGenerationUtil.UMLGAccess + ".rollback()");
tryStatement.getFinallyPart().addToStatements(UmlgGenerationUtil.UMLGAccess + ".rollback()");
tryStatement.getFinallyPart().addToStatements(UmlgGenerationUtil.UMLGAccess + ".rollback()");
tryStatement.getFinallyPart().addToStatements(UmlgGenerationUtil.UMLGAccess + ".rollback()");
ojTry.getTryPart().addToStatements("return result"); ojTry.getFinallyPart().addToStatements(UmlgGenerationUtil.UmlgTmpIdManager.getLast() + ".INSTANCE.remove()"); ojTry.getFinallyPart().addToStatements(UmlgGenerationUtil.UMLGAccess + ".rollback()");
private void addGetRepresentation(Class clazz, OJAnnotatedClass annotatedClass) { OJAnnotatedOperation get = new OJAnnotatedOperation("get", UmlgRestletGenerationUtil.Representation); get.addToThrows(UmlgRestletGenerationUtil.ResourceException); annotatedClass.addToImports(UmlgRestletGenerationUtil.ResourceException); UmlgGenerationUtil.addOverrideAnnotation(get); OJTryStatement tryStatement = new OJTryStatement(); tryStatement.getTryPart().addToStatements("StringBuilder json = new StringBuilder()"); tryStatement.getTryPart().addToStatements( "this." + getIdFieldName(clazz) + "= " + UmlgRestletGenerationUtil.UmlgURLDecoder.getLast() + ".decode((String)getRequestAttributes().get(\"" + getIdFieldName(clazz) + "\"))"); annotatedClass.addToImports(UmlgRestletGenerationUtil.UmlgURLDecoder); tryStatement.getTryPart().addToStatements( UmlgClassOperations.className(clazz) + " c = " + UmlgGenerationUtil.UMLGAccess + ".getEntity(this." + getIdFieldName(clazz) + ")"); annotatedClass.addToImports(UmlgClassOperations.getPathName(clazz)); tryStatement.getTryPart().addToStatements("json.append(\"[{\\\"data\\\": \")"); tryStatement.getTryPart().addToStatements("json.append(" + "c.toJsonWithoutCompositeParent())"); tryStatement.getTryPart().addToStatements("meta", "json.append(\", \\\"meta\\\" : {\")"); tryStatement.getTryPart().addToStatements("json.append(\"\\\"qualifiedName\\\": \\\"" + clazz.getQualifiedName() + "\\\"\")"); tryStatement.getTryPart().addToStatements("json.append(\"}}]\")"); tryStatement.getTryPart().addToStatements("return new " + UmlgRestletGenerationUtil.JsonRepresentation.getLast() + "(json.toString())"); get.getBody().addToStatements(tryStatement); tryStatement.setCatchPart(null); tryStatement.getFinallyPart().addToStatements(UmlgGenerationUtil.UMLGAccess + ".rollback()"); annotatedClass.addToImports(UmlgGenerationUtil.UMLGPathName); annotatedClass.addToImports(UmlgRestletGenerationUtil.JsonRepresentation); annotatedClass.addToOperations(get); }
ojTry.getCatchPart().addToStatements("throw new RuntimeException(e)"); put.getBody().addToStatements(ojTry); ojTry.getFinallyPart().addToStatements(UmlgGenerationUtil.UMLGAccess + ".rollback()");
ojTryStatement.getFinallyPart().addToStatements(UmlgGenerationUtil.UmlgTmpIdManager.getLast() + ".INSTANCE.remove()"); ojTryStatement.getFinallyPart().addToStatements(UmlgGenerationUtil.UMLGAccess + ".rollback()");
ojTryStatement.getFinallyPart().addToStatements(UmlgGenerationUtil.UmlgTmpIdManager.getLast() + ".INSTANCE.remove()"); ojTryStatement.getFinallyPart().addToStatements(UmlgGenerationUtil.UMLGAccess + ".rollback()");
ojTryStatement.getCatchPart().addToStatements(UmlgGenerationUtil.UMLGAccess + ".rollback()"); ojTryStatement.getCatchPart().addToStatements("throw " + UmlgRestletGenerationUtil.UmlgExceptionUtilFactory.getLast() + ".getTumlExceptionUtil().handle(e)"); ojTryStatement.getFinallyPart().addToStatements(UmlgGenerationUtil.UmlgTmpIdManager.getLast() + ".INSTANCE.remove()"); annotatedClass.addToImports(UmlgGenerationUtil.UmlgTmpIdManager); annotatedClass.addToImports(UmlgRestletGenerationUtil.UmlgExceptionUtilFactory);