private void addMap(OJAnnotatedClass globalMap) { OJField map = new OJField(UmlgGenerationUtil.QualifiedNameClassMapName, new OJPathName("java.util.Map").addToGenerics("String").addToGenerics( "Class<? extends " + UmlgGenerationUtil.UMLG_NODE.getLast() + ">")); map.setVisibility(OJVisibilityKind.PRIVATE); map.setInitExp("new HashMap<String, Class<? extends " + UmlgGenerationUtil.UMLG_NODE.getLast() + ">>()"); globalMap.addToImports(new OJPathName("java.util.HashMap")); globalMap.addToImports(new OJPathName("java.util.Map")); globalMap.addToFields(map); }
static public OJPathName ListOfObject() { if (listType == null) { listType = JavaPathNames.List.getCopy(); listType.addToElementTypes(JavaPathNames.Object); } return listType; }
public OJPathName renameLast(String name) { removeFromNames(getLast()); append(name); return this; }
private void addGetterToMetaClassForRootEntity(Class clazz) { OJAnnotatedClass annotatedClass = this.workspace.findOJClass(UmlgGenerationUtil.UmlgRootPackage.toJavaString() + "." + StringUtils.capitalize(ModelLoader.INSTANCE.getModel().getName())); OJAnnotatedOperation getter = new OJAnnotatedOperation("get" + UmlgClassOperations.getMetaClassPathName(clazz).getLast(), UmlgClassOperations.getMetaClassPathName(clazz)); annotatedClass.addToOperations(getter); annotatedClass.addToImports(UmlgGenerationUtil.umlgMemorySequence); annotatedClass.addToImports(new OJPathName("java.util.ArrayList")); annotatedClass.addToImports(UmlgClassOperations.getMetaClassPathName(clazz)); getter.getBody().addToStatements("return " + UmlgClassOperations.getMetaClassPathName(clazz) + ".getInstance()"); }
OJField json = new OJField("json", new OJPathName("java.lang.StringBuilder")); json.setInitExp("new StringBuilder()"); tryStatement.getTryPart().addToLocals(json); OJField resource = new OJField("resource", UmlgGenerationUtil.umlgSet.getCopy().addToGenerics(UmlgClassOperations.getPathName(clazz))); resource.setInitExp("(" + UmlgGenerationUtil.umlgSet.getLast() + "<" + UmlgClassOperations.getPathName(clazz).getLast() + ">)" + UmlgClassOperations.getPathName(clazz).getLast() + ".allInstances()"); tryStatement.getTryPart().addToLocals(resource); annotatedClass.addToImports(UmlgGenerationUtil.UmlgRootPackage.toJavaString() + "." + StringUtils.capitalize(ModelLoader.INSTANCE.getModel().getName())); tryStatement.getTryPart().addToStatements( "json.append(ToJsonUtil.toJsonWithoutCompositeParent(resource.select(new " + UmlgGenerationUtil.BooleanExpressionEvaluator.getCopy().addToGenerics(UmlgClassOperations.getPathName(clazz)).getLast() + "() {\n @Override\n public Boolean evaluate(" + UmlgClassOperations.getPathName(clazz).getLast() + " e) {\n return e.getClass() == " + UmlgClassOperations.getPathName(classifier).getLast() + ".class;\n }\n })))" ); annotatedClass.addToImports(UmlgGenerationUtil.BooleanExpressionEvaluator); annotatedClass.addToImports(UmlgClassOperations.getPathName(clazz).append(UmlgClassOperations.propertyEnumName(clazz))); tryStatement.getTryPart().addToStatements("json.append(\"}\")"); if (sortedConcreteImplementations.size() != 1 && count++ != sortedConcreteImplementations.size()) { tryStatement.getTryPart().addToStatements("return new " + UmlgRestletGenerationUtil.JsonRepresentation.getLast() + "(json.toString())");
public OJPathName addToGenerics(String string) { return addToGenerics(new OJPathName(string)); }
private void buildToJson(PropertyWrapper pWrap, OJAnnotatedClass annotatedClass, OJBlock block) { block.addToStatements("StringBuilder json = new StringBuilder()"); block.addToStatements("json.append(\"{\\\"data\\\": [\")"); block.addToStatements("json.append(" + UmlgRestletGenerationUtil.UmlgRestletToJsonUtil.getLast() + ".toJson(resource." + pWrap.lookup() + "()))"); annotatedClass.addToImports(UmlgRestletGenerationUtil.UmlgRestletToJsonUtil); block.addToStatements("json.append(\"],\")"); block.addToStatements("json.append(\" \\\"meta\\\" : {\")"); block.addToStatements("json.append(\"\\\"qualifiedName\\\": \\\"" + pWrap.getQualifiedName() + "\\\"\")"); block.addToStatements("json.append(\", \\\"to\\\": \")"); block.addToStatements("json.append(" + UmlgClassOperations.propertyEnumName(new PropertyWrapper(pWrap.getOtherEnd()).getOwningType()) + ".asJson())"); annotatedClass.addToImports(UmlgClassOperations.getPathName(new PropertyWrapper(pWrap.getOtherEnd()).getOwningType()).append( UmlgClassOperations.propertyEnumName(new PropertyWrapper(pWrap.getOtherEnd()).getOwningType()))); block.addToStatements("json.append(\", \\\"from\\\": \")"); block.addToStatements("json.append(" + UmlgClassOperations.propertyEnumName(pWrap.getOwningType()) + ".asJson())"); annotatedClass.addToImports(UmlgClassOperations.getPathName(pWrap.getOwningType()).append(UmlgClassOperations.propertyEnumName(pWrap.getOwningType()))); block.addToStatements("json.append(\"}}\")"); block.addToStatements("return new " + UmlgRestletGenerationUtil.JsonRepresentation.getLast() + "(json.toString())"); }
public OJPathName getDeepCopy() { OJPathName result = new OJPathName(); result.setNames(new ArrayList(this.getNames())); List<OJPathName> elementTypes = getElementTypes(); for (OJPathName elementType : elementTypes) { OJPathName elementTypeCopy = elementType.getDeepCopy(); if (elementType.getLast().contains("extends")) { System.out.println(); } result.addToElementTypes(elementTypeCopy); } return result; }
annotatedClass.addToImports(UmlgClassOperations.getPathName(concreteClassifierTo)); block.addToStatements("json.append(\"{\\\"data\\\": [\")"); block.addToStatements("json.append(" + UmlgGenerationUtil.ToJsonUtil.getLast() + ".toJsonWithoutCompositeParent(resource." + pWrap.lookup() + "().select(new " + UmlgGenerationUtil.BooleanExpressionEvaluator.getCopy().addToGenerics(UmlgClassOperations.getPathName(pWrap.getType())).getLast() + "() {\n @Override\n public Boolean evaluate(" + UmlgClassOperations.getPathName(pWrap.getType()).getLast() + " e) {\n return e.getClass() == " + UmlgClassOperations.getPathName(concreteClassifierTo).getLast() + ".class;\n }\n })))"); annotatedClass.addToImports(UmlgGenerationUtil.BooleanExpressionEvaluator); annotatedClass.addToImports(UmlgClassOperations.getPathName(pWrap.getType())); OJBlock conditionBlockFrom = new OJBlock(); annotatedClass.addToImports(UmlgClassOperations.getPathName(concreteClassifierFrom)); String condition = "resource.getClass() == " + UmlgClassOperations.getPathName(concreteClassifierFrom).getLast() + ".class"; if (countFrom == 1) { ifStatementFrom.setCondition(condition); conditionBlockFrom.addToStatements("json.append(\", \\\"from\\\": \")"); conditionBlockFrom.addToStatements("json.append(" + UmlgClassOperations.propertyEnumName(concreteClassifierFrom) + ".asJson())"); annotatedClass.addToImports(UmlgClassOperations.getPathName(concreteClassifierFrom).append( UmlgClassOperations.propertyEnumName(concreteClassifierFrom))); countFrom++; annotatedClass.addToImports(UmlgClassOperations.getPathName(pWrap.getOwningType()).append( UmlgClassOperations.propertyEnumName(pWrap.getOwningType()))); annotatedClass.addToImports(UmlgClassOperations.getPathName(concreteClassifierTo) .append(UmlgClassOperations.propertyEnumName(concreteClassifierTo))); block.addToStatements("json.append(\"}\")"); if (concreteImplementations.size() != 1 && count != concreteImplementations.size()) { block.addToStatements("return new " + UmlgRestletGenerationUtil.JsonRepresentation.getLast() + "(json.toString())");
sb.append(' '); sb.append(getType().getCollectionTypeName()); sb.append(' '); sb.append(getName()); sb.append("};"); return sb.toString().replaceAll("this", outer.getLast() + ".this");
OJField json = new OJField("json", new OJPathName("java.lang.StringBuilder")); json.setInitExp("new StringBuilder()"); tryStatement.getTryPart().addToLocals(json); annotatedClass.addToImports(UmlgGenerationUtil.UmlgRootPackage.toJavaString() + "." + StringUtils.capitalize(ModelLoader.INSTANCE.getModel().getName())); tryStatement.getTryPart().addToStatements("json.append(\", \\\"from\\\": \")"); tryStatement.getTryPart().addToStatements("json.append(" + StringUtils.capitalize(ModelLoader.INSTANCE.getModel().getName()) + "RuntimePropertyEnum.asJson())"); annotatedClass.addToImports(UmlgGenerationUtil.UmlgRootPackage.toJavaString() + "." + StringUtils.capitalize(ModelLoader.INSTANCE.getModel().getName()) + "." + StringUtils.capitalize(ModelLoader.INSTANCE.getModel().getName()) + "RuntimePropertyEnum"); annotatedClass.addToImports(UmlgClassOperations.getPathName(classifier).append(UmlgClassOperations.propertyEnumName(classifier))); tryStatement.getTryPart().addToStatements("return new " + UmlgRestletGenerationUtil.JsonRepresentation.getLast() + "(json.toString())");
private void addEdgeToRoot(OJAnnotatedClass annotatedClass, Class clazz) { OJConstructor constructor = annotatedClass.findConstructor(new OJPathName("java.lang.Boolean")); constructor.getBody().addToStatements( UmlgGenerationUtil.edgePathName.getLast() + " edge = " + UmlgGenerationUtil.UMLGAccess + ".getRoot().addEdge(getEdgeToRootLabel(), this.vertex)"); constructor.getBody().addToStatements("edge.property(\"inClass\", this.getClass().getName())"); annotatedClass.addToImports(UmlgGenerationUtil.edgePathName.getCopy()); annotatedClass.addToImports(UmlgGenerationUtil.UMLGPathName.getCopy()); }
ojEnum.addToImplementedInterfaces(UmlgGenerationUtil.umlgRuntimePropertyPathName.getCopy()); annotatedClass.addInnerEnum(ojEnum); qualifiedName.setType(new OJPathName("String")); qualifiedName.setName("_qualifiedName"); ojEnum.addToFields(qualifiedName); persistentName.setType(new OJPathName("String")); persistentName.setName("_persistentName"); ojEnum.addToFields(persistentName); inverseName.setType(new OJPathName("String")); inverseName.setName("_inverseName"); ojEnum.addToFields(inverseName); inverseQualifiedName.setType(new OJPathName("String")); inverseQualifiedName.setName("_inverseQualifiedName"); ojEnum.addToFields(inverseQualifiedName); isAssociationClassOneField.setType(new OJPathName("boolean")); isAssociationClassOneField.setName("_associationClassOne"); ojEnum.addToFields(isAssociationClassOneField); isMemberEndOfAssociationClassField.setType(new OJPathName("boolean")); isMemberEndOfAssociationClassField.setName("_memberEndOfAssociationClass"); ojEnum.addToFields(isMemberEndOfAssociationClassField); associationClassPropertyNameField.setType(new OJPathName("String")); associationClassPropertyNameField.setName("_associationClassPropertyName");
private void addGetForQualifiedName(OJAnnotatedClass globalMap) { OJAnnotatedOperation get = new OJAnnotatedOperation("get", new OJPathName("<T extends " + UmlgGenerationUtil.UMLG_NODE.getLast() + "> Class<T>")); get.addParam("qualifiedName", "String"); get.getBody().addToStatements("return (Class<T>)this." + UmlgGenerationUtil.QualifiedNameClassMapName + ".get(qualifiedName)"); globalMap.addToOperations(get); }
private void addGetterToAppRootForRootEntity(Class clazz, OJAnnotatedClass root) { OJAnnotatedOperation getter = new OJAnnotatedOperation("get" + UmlgClassOperations.className(clazz), UmlgGenerationUtil.umlgSet.getCopy().addToGenerics("? extends " + UmlgClassOperations.getPathName(clazz).getLast())); getter.setStatic(true); root.addToOperations(getter); getter.getBody().addToStatements("return " + UmlgClassOperations.getPathName(clazz) + ".allInstances()"); root.addToImports(UmlgClassOperations.getPathName(clazz)); root.addToImports(UmlgGenerationUtil.tinkerDirection); root.addToImports(UmlgGenerationUtil.UmlgLabelConverterFactoryPathName); }
"this." + getIdFieldName(clazz) + "= " + UmlgRestletGenerationUtil.UmlgURLDecoder.getLast() + ".decode((String)getRequestAttributes().get(\"" + getIdFieldName(clazz) + "\"))"); annotatedClass.addToImports(UmlgRestletGenerationUtil.UmlgURLDecoder); ojTry.getTryPart().addToStatements("json.append(\", \\\"to\\\": \")"); ojTry.getTryPart().addToStatements("json.append(" + UmlgClassOperations.propertyEnumName(clazz) + ".asJson())"); annotatedClass.addToImports(UmlgClassOperations.getPathName(clazz).append(UmlgClassOperations.propertyEnumName(clazz))); ojTry.getTryPart().addToStatements("json.append(\"}}]\")"); ojTry.getTryPart().addToStatements("return new " + UmlgRestletGenerationUtil.JsonRepresentation.getLast() + "(json.toString())"); ojTry.setCatchParam(new OJParameter("e", new OJPathName("java.lang.Exception"))); ojTry.getCatchPart().addToStatements(UmlgGenerationUtil.UMLGAccess + ".rollback()"); OJIfStatement ifRuntime = new OJIfStatement("e instanceof RuntimeException");
public OJPathName getQualifiedMemoryCollection() { return qualifiedMemoryCollection.getCopy(); } }
public void renameAll(Set<OJPathName> renamePathNames, String newName) { if (getLast().charAt(0) == '?') { replaceTail(replaceAll(getLast(), renamePathNames, newName)); } else if (renamePathNames.contains(this)) { replaceTail(getLast() + newName); } for (OJPathName elementType : getElementTypes()) { elementType.renameAll(renamePathNames, newName); } }
public OJAnnotationValue(OJPathName type,Number value){ super(value); super.setName(type.getLast()); this.type = type; } public OJAnnotationValue(OJPathName type,OJAnnotationValue value){