public OJPathName addToGenerics(String string) { return addToGenerics(new OJPathName(string)); }
public OJPathName getAssociationClassPair() { OJPathName pair = UmlgGenerationUtil.Pair.getCopy(); pair.addToGenerics(javaBaseTypePath()).addToGenerics(UmlgClassOperations.getPathName(getAssociationClass())); return pair; }
private void addMap(OJAnnotatedClass globalMap) { OJField map = new OJField(UmlgGenerationUtil.QualifiedNameClassMapName, new OJPathName("java.util.Map").addToGenerics("String").addToGenerics( "Class<?>")); map.setVisibility(OJVisibilityKind.PRIVATE); map.setInitExp("new HashMap<String, Class<?>>()"); globalMap.addToImports(new OJPathName("java.util.HashMap")); globalMap.addToImports(new OJPathName("java.util.Map")); globalMap.addToFields(map); }
public OJPathName javaTumlMemoryTypePath() { OJPathName memoryCollectionPathName; if (isQualified()) { memoryCollectionPathName = UmlgCollectionKindEnum.from(this).getQualifiedMemoryCollection(); } else { memoryCollectionPathName = UmlgCollectionKindEnum.from(this).getMemoryCollection(); } memoryCollectionPathName.addToGenerics(javaBaseTypePath()); return memoryCollectionPathName; }
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); }
private void addFromJsonWithMapper(Class clazz) { OJAnnotatedClass annotatedClass = findOJClass(clazz); OJAnnotatedOperation fromJson = new OJAnnotatedOperation("fromJson"); fromJson.addParam("propertyMap", new OJPathName("java.util.Map").addToGenerics("String").addToGenerics("Object")); UmlgGenerationUtil.addOverrideAnnotation(fromJson); annotatedClass.addToOperations(fromJson); fromJson.getBody().addToStatements("fromJsonDataTypeAndComposite(propertyMap)"); fromJson.getBody().addToStatements("fromJsonNonCompositeOne(propertyMap)"); fromJson.getBody().addToStatements("fromJsonNonCompositeRequiredMany(propertyMap)"); }
private void addQualifiedNameVertexSet(OJAnnotatedClass globalMap) { OJField set = new OJField(UmlgGenerationUtil.QualifiedNameVertexSchemaSet, new OJPathName("java.util.Set").addToGenerics(new OJPathName("List").addToGenerics("String")) ); set.setVisibility(OJVisibilityKind.PRIVATE); set.setInitExp("new HashSet<List<String>>()"); globalMap.addToImports(new OJPathName("java.util.HashSet")); globalMap.addToImports(new OJPathName("java.util.Set")); globalMap.addToImports(new OJPathName("java.util.List")); globalMap.addToFields(set); }
private void addDeleteResource(Classifier classifier, OJAnnotatedClass annotatedClass, OJPathName parentPathName) { OJAnnotatedOperation delete = new OJAnnotatedOperation("delete"); delete.setVisibility(OJVisibilityKind.PRIVATE); delete.addToParameters(new OJParameter("propertyMap", new OJPathName("java.util.Map").addToGenerics("String").addToGenerics("Object"))); annotatedClass.addToOperations(delete); delete.getBody().addToStatements("Object id = propertyMap.get(\"id\")"); delete.getBody().addToStatements( UmlgClassOperations.getPathName(classifier).getLast() + " childResource = " + UmlgGenerationUtil.UMLGAccess + "." + UmlgGenerationUtil.getEntity + "(id)"); annotatedClass.addToImports(UmlgClassOperations.getPathName(classifier)); delete.getBody().addToStatements("childResource.delete()"); }
private void addDeleteResource(Classifier classifier, OJAnnotatedClass annotatedClass) { OJAnnotatedOperation delete = new OJAnnotatedOperation("delete"); delete.setVisibility(OJVisibilityKind.PRIVATE); delete.addToParameters(new OJParameter("propertyMap", new OJPathName("java.util.Map").addToGenerics("String").addToGenerics("Object"))); annotatedClass.addToOperations(delete); delete.getBody().addToStatements("Object id = propertyMap.get(\"id\")"); delete.getBody().addToStatements( UmlgClassOperations.getPathName(classifier).getLast() + " childResource = " + UmlgGenerationUtil.UMLGAccess + "." + UmlgGenerationUtil.getEntity + "(id)"); annotatedClass.addToImports(UmlgClassOperations.getPathName(classifier)); delete.getBody().addToStatements("childResource.delete()"); }
private void addPutResource(Classifier classifier, OJAnnotatedClass annotatedClass, OJPathName parentPathName) { OJAnnotatedOperation put = new OJAnnotatedOperation("put"); put.setVisibility(OJVisibilityKind.PRIVATE); put.addToParameters(new OJParameter("propertyMap", new OJPathName("java.util.Map").addToGenerics("String").addToGenerics("Object"))); annotatedClass.addToOperations(put); put.getBody().addToStatements("Object id = propertyMap.get(\"id\")"); put.getBody().addToStatements( UmlgClassOperations.getPathName(classifier).getLast() + " childResource = " + UmlgGenerationUtil.UMLGAccess + "." + UmlgGenerationUtil.getEntity + "(id)"); annotatedClass.addToImports(UmlgClassOperations.getPathName(classifier)); put.getBody().addToStatements("childResource.fromJson(propertyMap)"); }
private void addPostResource(Classifier concreteClassifier, OJAnnotatedClass annotatedClass, OJPathName parentPathName) { OJAnnotatedOperation add = new OJAnnotatedOperation("add"); add.setComment("This method adds a single new instance. If and id already exist it passes the existing id back as a tmpId"); add.setVisibility(OJVisibilityKind.PRIVATE); add.addToParameters(new OJParameter("propertyMap", new OJPathName("java.util.Map").addToGenerics("String").addToGenerics("Object"))); annotatedClass.addToOperations(add); add.getBody().addToStatements(UmlgClassOperations.getPathName(concreteClassifier).getLast() + " childResource = new " + UmlgClassOperations.getPathName(concreteClassifier).getLast() + "(true)"); annotatedClass.addToImports(UmlgClassOperations.getPathName(concreteClassifier)); add.getBody().addToStatements("childResource.fromJson(propertyMap)"); }
private void addQualifiedNameEdgeSet(OJAnnotatedClass globalMap) { OJField set = new OJField(UmlgGenerationUtil.QualifiedNameEdgeSchemaSet, new OJPathName("java.util.Set").addToGenerics("String") ); set.setVisibility(OJVisibilityKind.PRIVATE); set.setInitExp("new HashSet<String>()"); globalMap.addToImports(new OJPathName("java.util.HashSet")); globalMap.addToImports(new OJPathName("java.util.Set")); globalMap.addToFields(set); }
private void addPutResource(Classifier classifier, OJAnnotatedClass annotatedClass) { OJAnnotatedOperation put = new OJAnnotatedOperation("put", UmlgGenerationUtil.UMLG_NODE); put.setVisibility(OJVisibilityKind.PRIVATE); put.addToParameters(new OJParameter("propertyMap", new OJPathName("java.util.Map").addToGenerics("String").addToGenerics("Object"))); annotatedClass.addToOperations(put); put.getBody().addToStatements("Object id = propertyMap.get(\"id\")"); put.getBody().addToStatements( UmlgClassOperations.getPathName(classifier).getLast() + " childResource = " + UmlgGenerationUtil.UMLGAccess + "." + UmlgGenerationUtil.getEntity + "(id)"); annotatedClass.addToImports(UmlgClassOperations.getPathName(classifier)); put.getBody().addToStatements("childResource.fromJson(propertyMap)"); // put.getBody().addToStatements("return childResource.toJsonWithoutCompositeParent()"); put.getBody().addToStatements("return childResource"); }
public OJPathName javaTypePath() { OJPathName fieldType; if (!isOrdered() && isUnique()) { fieldType = UmlgCollectionKindEnum.SET.getInterfacePathName(); } else if (isOrdered() && !isUnique()) { fieldType = UmlgCollectionKindEnum.SEQUENCE.getInterfacePathName(); } else if (!isOrdered() && !isUnique()) { fieldType = UmlgCollectionKindEnum.BAG.getInterfacePathName(); } else if (isOrdered() && isUnique()) { fieldType = UmlgCollectionKindEnum.ORDERED_SET.getInterfacePathName(); } else { throw new RuntimeException("wtf"); } fieldType.addToGenerics(javaBaseTypePath()); return fieldType; }
public OJPathName javaTypePathWithAssociationClass() { OJPathName fieldType; if (!isOrdered() && isUnique()) { fieldType = UmlgCollectionKindEnum.SET.getInterfacePathName(); } else if (isOrdered() && !isUnique()) { fieldType = UmlgCollectionKindEnum.SEQUENCE.getInterfacePathName(); } else if (!isOrdered() && !isUnique()) { fieldType = UmlgCollectionKindEnum.BAG.getInterfacePathName(); } else if (isOrdered() && isUnique()) { fieldType = UmlgCollectionKindEnum.ORDERED_SET.getInterfacePathName(); } else { throw new RuntimeException("wtf"); } fieldType.addToGenerics(getAssociationClassPair()); return fieldType; }
public OJPathName javaAuditTypePath() { OJPathName fieldType; if (!isOrdered() && isUnique()) { fieldType = UmlgCollectionKindEnum.SET.getInterfacePathName(); } else if (isOrdered() && !isUnique()) { fieldType = UmlgCollectionKindEnum.SEQUENCE.getInterfacePathName(); } else if (!isOrdered() && !isUnique()) { fieldType = UmlgCollectionKindEnum.BAG.getInterfacePathName(); } else if (isOrdered() && isUnique()) { fieldType = UmlgCollectionKindEnum.ORDERED_SET.getInterfacePathName(); } else { throw new RuntimeException("wtf"); } fieldType.addToGenerics(javaAuditBaseTypePath()); return fieldType; }
public OJPathName javaClosableIteratorTypePath() { OJPathName fieldType; if (!isOrdered() && isUnique()) { fieldType = UmlgCollectionKindEnum.SET.getClosableIteratorPathName(); } else if (isOrdered() && !isUnique()) { fieldType = UmlgCollectionKindEnum.SEQUENCE.getClosableIteratorPathName(); } else if (!isOrdered() && !isUnique()) { fieldType = UmlgCollectionKindEnum.BAG.getClosableIteratorPathName(); } else if (isOrdered() && isUnique()) { fieldType = UmlgCollectionKindEnum.ORDERED_SET.getClosableIteratorPathName(); } else { throw new RuntimeException("wtf"); } fieldType.addToGenerics(javaBaseTypePath()); return fieldType; }
private void addPostResource(Classifier concreteClassifier, OJAnnotatedClass annotatedClass) { OJAnnotatedOperation add = new OJAnnotatedOperation("add", UmlgGenerationUtil.UMLG_NODE); add.setComment("This method adds a single new instance. If and id already exist it passes the existing id back as a tmpId"); add.setVisibility(OJVisibilityKind.PRIVATE); add.addToParameters(new OJParameter("propertyMap", new OJPathName("java.util.Map").addToGenerics("String").addToGenerics("Object"))); annotatedClass.addToOperations(add); add.getBody().addToStatements(UmlgClassOperations.getPathName(concreteClassifier).getLast() + " childResource = new " + UmlgClassOperations.getPathName(concreteClassifier).getLast() + "(true)"); annotatedClass.addToImports(UmlgClassOperations.getPathName(concreteClassifier)); add.getBody().addToStatements("childResource.fromJson(propertyMap)"); add.getBody().addToStatements("return childResource"); // add.getBody().addToStatements("String jsonResult = childResource.toJsonWithoutCompositeParent(true)"); // add.getBody().addToStatements("return jsonResult"); }
private void addCreateVertexSchemas(OJAnnotatedClass globalMap) { OJAnnotatedOperation createVertexSchemas = new OJAnnotatedOperation("createVertexSchemas"); UmlgGenerationUtil.addOverrideAnnotation(createVertexSchemas); createVertexSchemas.addParam("vertexSchemaCreator", UmlgGenerationUtil.VertexSchemaCreator); OJForStatement ojForStatement = new OJForStatement("hierarchy", new OJPathName("List").addToGenerics("String"), UmlgGenerationUtil.QualifiedNameVertexSchemaSet); ojForStatement.getBody().addToStatements("vertexSchemaCreator.create(hierarchy)"); createVertexSchemas.getBody().addToStatements(ojForStatement); globalMap.addToOperations(createVertexSchemas); }
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); }