use of org.mybatis.generator.api.dom.java.Field in project generator by mybatis.
the class UpdateByExampleParmsInnerclassGenerator method addImplementationElements.
@Override
public void addImplementationElements(TopLevelClass topLevelClass) {
topLevelClass.addImportedType(new FullyQualifiedJavaType(introspectedTable.getExampleType()));
InnerClass innerClass = new InnerClass(new FullyQualifiedJavaType(//$NON-NLS-1$
"UpdateByExampleParms"));
innerClass.setVisibility(JavaVisibility.PROTECTED);
innerClass.setStatic(true);
innerClass.setSuperClass(introspectedTable.getExampleType());
context.getCommentGenerator().addClassComment(innerClass, introspectedTable);
Method method = new Method();
method.setConstructor(true);
method.setVisibility(JavaVisibility.PUBLIC);
method.setName(innerClass.getType().getShortName());
method.addParameter(new Parameter(FullyQualifiedJavaType.getObjectInstance(), //$NON-NLS-1$
"record"));
method.addParameter(new Parameter(new FullyQualifiedJavaType(introspectedTable.getExampleType()), //$NON-NLS-1$
"example"));
//$NON-NLS-1$
method.addBodyLine("super(example);");
//$NON-NLS-1$
method.addBodyLine("this.record = record;");
innerClass.addMethod(method);
Field field = new Field();
field.setVisibility(JavaVisibility.PRIVATE);
field.setType(FullyQualifiedJavaType.getObjectInstance());
//$NON-NLS-1$
field.setName("record");
innerClass.addField(field);
method = new Method();
method.setVisibility(JavaVisibility.PUBLIC);
method.setReturnType(FullyQualifiedJavaType.getObjectInstance());
//$NON-NLS-1$
method.setName("getRecord");
//$NON-NLS-1$
method.addBodyLine("return record;");
innerClass.addMethod(method);
topLevelClass.addInnerClass(innerClass);
}
use of org.mybatis.generator.api.dom.java.Field in project generator by mybatis.
the class DAOGenerator method getTopLevelClassShell.
protected TopLevelClass getTopLevelClassShell() {
FullyQualifiedJavaType interfaceType = new FullyQualifiedJavaType(introspectedTable.getDAOInterfaceType());
FullyQualifiedJavaType implementationType = new FullyQualifiedJavaType(introspectedTable.getDAOImplementationType());
CommentGenerator commentGenerator = context.getCommentGenerator();
TopLevelClass answer = new TopLevelClass(implementationType);
answer.setVisibility(JavaVisibility.PUBLIC);
answer.setSuperClass(daoTemplate.getSuperClass());
answer.addImportedType(daoTemplate.getSuperClass());
answer.addSuperInterface(interfaceType);
answer.addImportedType(interfaceType);
for (FullyQualifiedJavaType fqjt : daoTemplate.getImplementationImports()) {
answer.addImportedType(fqjt);
}
commentGenerator.addJavaFileComment(answer);
// add constructor from the template
answer.addMethod(daoTemplate.getConstructorClone(commentGenerator, implementationType, introspectedTable));
// add any fields from the template
for (Field field : daoTemplate.getFieldClones(commentGenerator, introspectedTable)) {
answer.addField(field);
}
// add any methods from the template
for (Method method : daoTemplate.getMethodClones(commentGenerator, introspectedTable)) {
answer.addMethod(method);
}
return answer;
}
use of org.mybatis.generator.api.dom.java.Field in project generator by mybatis.
the class ExampleGenerator method getGeneratedCriteriaInnerClass.
private InnerClass getGeneratedCriteriaInnerClass(TopLevelClass topLevelClass) {
Field field;
Method method;
InnerClass answer = new InnerClass(FullyQualifiedJavaType.getGeneratedCriteriaInstance());
answer.setVisibility(JavaVisibility.PROTECTED);
answer.setStatic(true);
answer.setAbstract(true);
context.getCommentGenerator().addClassComment(answer, introspectedTable);
method = new Method();
method.setVisibility(JavaVisibility.PROTECTED);
//$NON-NLS-1$
method.setName("GeneratedCriteria");
method.setConstructor(true);
//$NON-NLS-1$
method.addBodyLine("super();");
if (generateForJava5) {
method.addBodyLine(//$NON-NLS-1$
"criteriaWithoutValue = new ArrayList<String>();");
method.addBodyLine(//$NON-NLS-1$
"criteriaWithSingleValue = new ArrayList<Map<String, Object>>();");
method.addBodyLine(//$NON-NLS-1$
"criteriaWithListValue = new ArrayList<Map<String, Object>>();");
method.addBodyLine(//$NON-NLS-1$
"criteriaWithBetweenValue = new ArrayList<Map<String, Object>>();");
} else {
//$NON-NLS-1$
method.addBodyLine("criteriaWithoutValue = new ArrayList();");
//$NON-NLS-1$
method.addBodyLine("criteriaWithSingleValue = new ArrayList();");
//$NON-NLS-1$
method.addBodyLine("criteriaWithListValue = new ArrayList();");
//$NON-NLS-1$
method.addBodyLine("criteriaWithBetweenValue = new ArrayList();");
}
answer.addMethod(method);
List<String> criteriaLists = new ArrayList<String>();
//$NON-NLS-1$
criteriaLists.add("criteriaWithoutValue");
//$NON-NLS-1$
criteriaLists.add("criteriaWithSingleValue");
//$NON-NLS-1$
criteriaLists.add("criteriaWithListValue");
//$NON-NLS-1$
criteriaLists.add("criteriaWithBetweenValue");
for (IntrospectedColumn introspectedColumn : introspectedTable.getNonBLOBColumns()) {
if (stringHasValue(introspectedColumn.getTypeHandler())) {
criteriaLists.addAll(addtypeHandledObjectsAndMethods(introspectedColumn, method, answer));
}
}
// now generate the isValid method
method = new Method();
method.setVisibility(JavaVisibility.PUBLIC);
//$NON-NLS-1$
method.setName("isValid");
method.setReturnType(FullyQualifiedJavaType.getBooleanPrimitiveInstance());
StringBuilder sb = new StringBuilder();
Iterator<String> strIter = criteriaLists.iterator();
//$NON-NLS-1$
sb.append("return ");
sb.append(strIter.next());
//$NON-NLS-1$
sb.append(".size() > 0");
method.addBodyLine(sb.toString());
while (strIter.hasNext()) {
sb.setLength(0);
OutputUtilities.javaIndent(sb, 1);
//$NON-NLS-1$
sb.append("|| ");
sb.append(strIter.next());
//$NON-NLS-1$
sb.append(".size() > 0");
if (!strIter.hasNext()) {
sb.append(';');
}
method.addBodyLine(sb.toString());
}
answer.addMethod(method);
// now we need to generate the methods that will be used in the SqlMap
// to generate the dynamic where clause
topLevelClass.addImportedType(FullyQualifiedJavaType.getNewMapInstance());
topLevelClass.addImportedType(FullyQualifiedJavaType.getNewListInstance());
topLevelClass.addImportedType(FullyQualifiedJavaType.getNewHashMapInstance());
topLevelClass.addImportedType(FullyQualifiedJavaType.getNewArrayListInstance());
field = new Field();
field.setVisibility(JavaVisibility.PROTECTED);
FullyQualifiedJavaType listOfStrings;
if (generateForJava5) {
listOfStrings = new FullyQualifiedJavaType(//$NON-NLS-1$
"java.util.List<java.lang.String>");
} else {
//$NON-NLS-1$
listOfStrings = new FullyQualifiedJavaType("java.util.List");
}
field.setType(listOfStrings);
//$NON-NLS-1$
field.setName("criteriaWithoutValue");
answer.addField(field);
method = new Method();
method.setVisibility(JavaVisibility.PUBLIC);
method.setReturnType(field.getType());
method.setName(getGetterMethodName(field.getName(), field.getType()));
//$NON-NLS-1$
method.addBodyLine("return criteriaWithoutValue;");
answer.addMethod(method);
FullyQualifiedJavaType listOfMaps;
if (generateForJava5) {
listOfMaps = new FullyQualifiedJavaType(//$NON-NLS-1$
"java.util.List<java.util.Map<java.lang.String, java.lang.Object>>");
} else {
//$NON-NLS-1$
listOfMaps = new FullyQualifiedJavaType("java.util.List");
}
field = new Field();
field.setVisibility(JavaVisibility.PROTECTED);
field.setType(listOfMaps);
//$NON-NLS-1$
field.setName("criteriaWithSingleValue");
answer.addField(field);
method = new Method();
method.setVisibility(JavaVisibility.PUBLIC);
method.setReturnType(field.getType());
method.setName(getGetterMethodName(field.getName(), field.getType()));
//$NON-NLS-1$
method.addBodyLine("return criteriaWithSingleValue;");
answer.addMethod(method);
field = new Field();
field.setVisibility(JavaVisibility.PROTECTED);
field.setType(listOfMaps);
//$NON-NLS-1$
field.setName("criteriaWithListValue");
answer.addField(field);
method = new Method();
method.setVisibility(JavaVisibility.PUBLIC);
method.setReturnType(field.getType());
method.setName(getGetterMethodName(field.getName(), field.getType()));
//$NON-NLS-1$
method.addBodyLine("return criteriaWithListValue;");
answer.addMethod(method);
field = new Field();
field.setVisibility(JavaVisibility.PROTECTED);
field.setType(listOfMaps);
//$NON-NLS-1$
field.setName("criteriaWithBetweenValue");
answer.addField(field);
method = new Method();
method.setVisibility(JavaVisibility.PUBLIC);
method.setReturnType(field.getType());
method.setName(getGetterMethodName(field.getName(), field.getType()));
//$NON-NLS-1$
method.addBodyLine("return criteriaWithBetweenValue;");
answer.addMethod(method);
// now add the methods for simplifying the individual field set methods
method = new Method();
method.setVisibility(JavaVisibility.PROTECTED);
//$NON-NLS-1$
method.setName("addCriterion");
method.addParameter(new Parameter(FullyQualifiedJavaType.getStringInstance(), //$NON-NLS-1$
"condition"));
//$NON-NLS-1$
method.addBodyLine("if (condition == null) {");
method.addBodyLine(//$NON-NLS-1$
"throw new RuntimeException(\"Value for condition cannot be null\");");
//$NON-NLS-1$
method.addBodyLine("}");
//$NON-NLS-1$
method.addBodyLine("criteriaWithoutValue.add(condition);");
answer.addMethod(method);
method = new Method();
method.setVisibility(JavaVisibility.PROTECTED);
//$NON-NLS-1$
method.setName("addCriterion");
method.addParameter(new Parameter(FullyQualifiedJavaType.getStringInstance(), //$NON-NLS-1$
"condition"));
method.addParameter(new Parameter(FullyQualifiedJavaType.getObjectInstance(), //$NON-NLS-1$
"value"));
method.addParameter(new Parameter(FullyQualifiedJavaType.getStringInstance(), //$NON-NLS-1$
"property"));
//$NON-NLS-1$
method.addBodyLine("if (value == null) {");
method.addBodyLine(//$NON-NLS-1$
"throw new RuntimeException(\"Value for \" + property + \" cannot be null\");");
//$NON-NLS-1$
method.addBodyLine("}");
if (generateForJava5) {
method.addBodyLine(//$NON-NLS-1$
"Map<String, Object> map = new HashMap<String, Object>();");
} else {
//$NON-NLS-1$
method.addBodyLine("Map map = new HashMap();");
}
//$NON-NLS-1$
method.addBodyLine("map.put(\"condition\", condition);");
//$NON-NLS-1$
method.addBodyLine("map.put(\"value\", value);");
//$NON-NLS-1$
method.addBodyLine("criteriaWithSingleValue.add(map);");
answer.addMethod(method);
FullyQualifiedJavaType listOfObjects;
if (generateForJava5) {
listOfObjects = new FullyQualifiedJavaType(//$NON-NLS-1$
"java.util.List<? extends java.lang.Object>");
} else {
//$NON-NLS-1$
listOfObjects = new FullyQualifiedJavaType("java.util.List");
}
method = new Method();
method.setVisibility(JavaVisibility.PROTECTED);
//$NON-NLS-1$
method.setName("addCriterion");
method.addParameter(new Parameter(FullyQualifiedJavaType.getStringInstance(), //$NON-NLS-1$
"condition"));
//$NON-NLS-1$
method.addParameter(new Parameter(listOfObjects, "values"));
method.addParameter(new Parameter(FullyQualifiedJavaType.getStringInstance(), //$NON-NLS-1$
"property"));
//$NON-NLS-1$
method.addBodyLine("if (values == null || values.size() == 0) {");
method.addBodyLine(//$NON-NLS-1$
"throw new RuntimeException(\"Value list for \" + property + \" cannot be null or empty\");");
//$NON-NLS-1$
method.addBodyLine("}");
if (generateForJava5) {
method.addBodyLine(//$NON-NLS-1$
"Map<String, Object> map = new HashMap<String, Object>();");
} else {
//$NON-NLS-1$
method.addBodyLine("Map map = new HashMap();");
}
//$NON-NLS-1$
method.addBodyLine("map.put(\"condition\", condition);");
//$NON-NLS-1$
method.addBodyLine("map.put(\"values\", values);");
//$NON-NLS-1$
method.addBodyLine("criteriaWithListValue.add(map);");
answer.addMethod(method);
method = new Method();
method.setVisibility(JavaVisibility.PROTECTED);
//$NON-NLS-1$
method.setName("addCriterion");
method.addParameter(new Parameter(FullyQualifiedJavaType.getStringInstance(), //$NON-NLS-1$
"condition"));
method.addParameter(new Parameter(FullyQualifiedJavaType.getObjectInstance(), //$NON-NLS-1$
"value1"));
method.addParameter(new Parameter(FullyQualifiedJavaType.getObjectInstance(), //$NON-NLS-1$
"value2"));
method.addParameter(new Parameter(FullyQualifiedJavaType.getStringInstance(), //$NON-NLS-1$
"property"));
//$NON-NLS-1$
method.addBodyLine("if (value1 == null || value2 == null) {");
method.addBodyLine(//$NON-NLS-1$
"throw new RuntimeException(\"Between values for \" + property + \" cannot be null\");");
//$NON-NLS-1$
method.addBodyLine("}");
if (generateForJava5) {
//$NON-NLS-1$
method.addBodyLine("List<Object> list = new ArrayList<Object>();");
} else {
//$NON-NLS-1$
method.addBodyLine("List list = new ArrayList();");
}
//$NON-NLS-1$
method.addBodyLine("list.add(value1);");
//$NON-NLS-1$
method.addBodyLine("list.add(value2);");
if (generateForJava5) {
method.addBodyLine(//$NON-NLS-1$
"Map<String, Object> map = new HashMap<String, Object>();");
} else {
//$NON-NLS-1$
method.addBodyLine("Map map = new HashMap();");
}
//$NON-NLS-1$
method.addBodyLine("map.put(\"condition\", condition);");
//$NON-NLS-1$
method.addBodyLine("map.put(\"values\", list);");
//$NON-NLS-1$
method.addBodyLine("criteriaWithBetweenValue.add(map);");
answer.addMethod(method);
FullyQualifiedJavaType listOfDates;
if (generateForJava5) {
listOfDates = new FullyQualifiedJavaType(//$NON-NLS-1$
"java.util.List<java.util.Date>");
} else {
//$NON-NLS-1$
listOfDates = new FullyQualifiedJavaType("java.util.List");
}
if (introspectedTable.hasJDBCDateColumns()) {
topLevelClass.addImportedType(FullyQualifiedJavaType.getDateInstance());
topLevelClass.addImportedType(FullyQualifiedJavaType.getNewIteratorInstance());
method = new Method();
method.setVisibility(JavaVisibility.PROTECTED);
//$NON-NLS-1$
method.setName("addCriterionForJDBCDate");
method.addParameter(new Parameter(FullyQualifiedJavaType.getStringInstance(), //$NON-NLS-1$
"condition"));
method.addParameter(new Parameter(FullyQualifiedJavaType.getDateInstance(), //$NON-NLS-1$
"value"));
method.addParameter(new Parameter(FullyQualifiedJavaType.getStringInstance(), //$NON-NLS-1$
"property"));
//$NON-NLS-1$
method.addBodyLine("if (value == null) {");
method.addBodyLine(//$NON-NLS-1$
"throw new RuntimeException(\"Value for \" + property + \" cannot be null\");");
//$NON-NLS-1$
method.addBodyLine("}");
method.addBodyLine(//$NON-NLS-1$
"addCriterion(condition, new java.sql.Date(value.getTime()), property);");
answer.addMethod(method);
method = new Method();
method.setVisibility(JavaVisibility.PROTECTED);
//$NON-NLS-1$
method.setName("addCriterionForJDBCDate");
method.addParameter(new Parameter(FullyQualifiedJavaType.getStringInstance(), //$NON-NLS-1$
"condition"));
//$NON-NLS-1$
method.addParameter(new Parameter(listOfDates, "values"));
method.addParameter(new Parameter(FullyQualifiedJavaType.getStringInstance(), //$NON-NLS-1$
"property"));
//$NON-NLS-1$
method.addBodyLine("if (values == null || values.size() == 0) {");
method.addBodyLine(//$NON-NLS-1$
"throw new RuntimeException(\"Value list for \" + property + \" cannot be null or empty\");");
//$NON-NLS-1$
method.addBodyLine("}");
if (generateForJava5) {
method.addBodyLine(//$NON-NLS-1$
"List<java.sql.Date> dateList = new ArrayList<java.sql.Date>();");
//$NON-NLS-1$
method.addBodyLine("Iterator<Date> iter = values.iterator();");
//$NON-NLS-1$
method.addBodyLine("while (iter.hasNext()) {");
method.addBodyLine(//$NON-NLS-1$
"dateList.add(new java.sql.Date(iter.next().getTime()));");
//$NON-NLS-1$
method.addBodyLine("}");
} else {
//$NON-NLS-1$
method.addBodyLine("List dateList = new ArrayList();");
//$NON-NLS-1$
method.addBodyLine("Iterator iter = values.iterator();");
//$NON-NLS-1$
method.addBodyLine("while (iter.hasNext()) {");
method.addBodyLine(//$NON-NLS-1$
"dateList.add(new java.sql.Date(((Date)iter.next()).getTime()));");
//$NON-NLS-1$
method.addBodyLine("}");
}
//$NON-NLS-1$
method.addBodyLine("addCriterion(condition, dateList, property);");
answer.addMethod(method);
method = new Method();
method.setVisibility(JavaVisibility.PROTECTED);
//$NON-NLS-1$
method.setName("addCriterionForJDBCDate");
method.addParameter(new Parameter(FullyQualifiedJavaType.getStringInstance(), //$NON-NLS-1$
"condition"));
method.addParameter(new Parameter(FullyQualifiedJavaType.getDateInstance(), //$NON-NLS-1$
"value1"));
method.addParameter(new Parameter(FullyQualifiedJavaType.getDateInstance(), //$NON-NLS-1$
"value2"));
method.addParameter(new Parameter(FullyQualifiedJavaType.getStringInstance(), //$NON-NLS-1$
"property"));
//$NON-NLS-1$
method.addBodyLine("if (value1 == null || value2 == null) {");
method.addBodyLine(//$NON-NLS-1$
"throw new RuntimeException(\"Between values for \" + property + \" cannot be null\");");
//$NON-NLS-1$
method.addBodyLine("}");
method.addBodyLine(//$NON-NLS-1$
"addCriterion(condition, new java.sql.Date(value1.getTime()), new java.sql.Date(value2.getTime()), property);");
answer.addMethod(method);
}
if (introspectedTable.hasJDBCTimeColumns()) {
topLevelClass.addImportedType(FullyQualifiedJavaType.getDateInstance());
topLevelClass.addImportedType(FullyQualifiedJavaType.getNewIteratorInstance());
method = new Method();
method.setVisibility(JavaVisibility.PROTECTED);
//$NON-NLS-1$
method.setName("addCriterionForJDBCTime");
method.addParameter(new Parameter(FullyQualifiedJavaType.getStringInstance(), //$NON-NLS-1$
"condition"));
method.addParameter(new Parameter(FullyQualifiedJavaType.getDateInstance(), //$NON-NLS-1$
"value"));
method.addParameter(new Parameter(FullyQualifiedJavaType.getStringInstance(), //$NON-NLS-1$
"property"));
//$NON-NLS-1$
method.addBodyLine("if (value == null) {");
method.addBodyLine(//$NON-NLS-1$
"throw new RuntimeException(\"Value for \" + property + \" cannot be null\");");
//$NON-NLS-1$
method.addBodyLine("}");
method.addBodyLine(//$NON-NLS-1$
"addCriterion(condition, new java.sql.Time(value.getTime()), property);");
answer.addMethod(method);
method = new Method();
method.setVisibility(JavaVisibility.PROTECTED);
//$NON-NLS-1$
method.setName("addCriterionForJDBCTime");
method.addParameter(new Parameter(FullyQualifiedJavaType.getStringInstance(), //$NON-NLS-1$
"condition"));
//$NON-NLS-1$
method.addParameter(new Parameter(listOfDates, "values"));
method.addParameter(new Parameter(FullyQualifiedJavaType.getStringInstance(), //$NON-NLS-1$
"property"));
//$NON-NLS-1$
method.addBodyLine("if (values == null || values.size() == 0) {");
method.addBodyLine(//$NON-NLS-1$
"throw new RuntimeException(\"Value list for \" + property + \" cannot be null or empty\");");
//$NON-NLS-1$
method.addBodyLine("}");
if (generateForJava5) {
method.addBodyLine(//$NON-NLS-1$
"List<java.sql.Time> timeList = new ArrayList<java.sql.Time>();");
//$NON-NLS-1$
method.addBodyLine("Iterator<Date> iter = values.iterator();");
//$NON-NLS-1$
method.addBodyLine("while (iter.hasNext()) {");
method.addBodyLine(//$NON-NLS-1$
"timeList.add(new java.sql.Time(iter.next().getTime()));");
//$NON-NLS-1$
method.addBodyLine("}");
} else {
//$NON-NLS-1$
method.addBodyLine("List timeList = new ArrayList();");
//$NON-NLS-1$
method.addBodyLine("Iterator iter = values.iterator();");
//$NON-NLS-1$
method.addBodyLine("while (iter.hasNext()) {");
method.addBodyLine(//$NON-NLS-1$
"timeList.add(new java.sql.Time(((Date)iter.next()).getTime()));");
//$NON-NLS-1$
method.addBodyLine("}");
}
//$NON-NLS-1$
method.addBodyLine("addCriterion(condition, timeList, property);");
answer.addMethod(method);
method = new Method();
method.setVisibility(JavaVisibility.PROTECTED);
//$NON-NLS-1$
method.setName("addCriterionForJDBCTime");
method.addParameter(new Parameter(FullyQualifiedJavaType.getStringInstance(), //$NON-NLS-1$
"condition"));
method.addParameter(new Parameter(FullyQualifiedJavaType.getDateInstance(), //$NON-NLS-1$
"value1"));
method.addParameter(new Parameter(FullyQualifiedJavaType.getDateInstance(), //$NON-NLS-1$
"value2"));
method.addParameter(new Parameter(FullyQualifiedJavaType.getStringInstance(), //$NON-NLS-1$
"property"));
//$NON-NLS-1$
method.addBodyLine("if (value1 == null || value2 == null) {");
method.addBodyLine(//$NON-NLS-1$
"throw new RuntimeException(\"Between values for \" + property + \" cannot be null\");");
//$NON-NLS-1$
method.addBodyLine("}");
method.addBodyLine(//$NON-NLS-1$
"addCriterion(condition, new java.sql.Time(value1.getTime()), new java.sql.Time(value2.getTime()), property);");
answer.addMethod(method);
}
for (IntrospectedColumn introspectedColumn : introspectedTable.getNonBLOBColumns()) {
topLevelClass.addImportedType(introspectedColumn.getFullyQualifiedJavaType());
// here we need to add the individual methods for setting the
// conditions for a field
answer.addMethod(getSetNullMethod(introspectedColumn));
answer.addMethod(getSetNotNullMethod(introspectedColumn));
answer.addMethod(getSetEqualMethod(introspectedColumn));
answer.addMethod(getSetNotEqualMethod(introspectedColumn));
answer.addMethod(getSetGreaterThanMethod(introspectedColumn));
answer.addMethod(getSetGreaterThenOrEqualMethod(introspectedColumn));
answer.addMethod(getSetLessThanMethod(introspectedColumn));
answer.addMethod(getSetLessThanOrEqualMethod(introspectedColumn));
if (introspectedColumn.isJdbcCharacterColumn()) {
answer.addMethod(getSetLikeMethod(introspectedColumn));
answer.addMethod(getSetNotLikeMethod(introspectedColumn));
}
answer.addMethod(getSetInOrNotInMethod(introspectedColumn, true));
answer.addMethod(getSetInOrNotInMethod(introspectedColumn, false));
answer.addMethod(getSetBetweenOrNotBetweenMethod(introspectedColumn, true));
answer.addMethod(getSetBetweenOrNotBetweenMethod(introspectedColumn, false));
}
return answer;
}
use of org.mybatis.generator.api.dom.java.Field in project generator by mybatis.
the class PrimaryKeyGenerator method getCompilationUnits.
@Override
public List<CompilationUnit> getCompilationUnits() {
FullyQualifiedTable table = introspectedTable.getFullyQualifiedTable();
progressCallback.startTask(getString("Progress.7", //$NON-NLS-1$
table.toString()));
Plugin plugins = context.getPlugins();
CommentGenerator commentGenerator = context.getCommentGenerator();
TopLevelClass topLevelClass = new TopLevelClass(introspectedTable.getPrimaryKeyType());
topLevelClass.setVisibility(JavaVisibility.PUBLIC);
commentGenerator.addJavaFileComment(topLevelClass);
String rootClass = getRootClass();
if (rootClass != null) {
topLevelClass.setSuperClass(new FullyQualifiedJavaType(rootClass));
topLevelClass.addImportedType(topLevelClass.getSuperClass());
}
for (IntrospectedColumn introspectedColumn : introspectedTable.getPrimaryKeyColumns()) {
if (RootClassInfo.getInstance(rootClass, warnings).containsProperty(introspectedColumn)) {
continue;
}
Field field = getJavaBeansField(introspectedColumn, context, introspectedTable);
if (plugins.modelFieldGenerated(field, topLevelClass, introspectedColumn, introspectedTable, Plugin.ModelClassType.PRIMARY_KEY)) {
topLevelClass.addField(field);
topLevelClass.addImportedType(field.getType());
}
Method method = getJavaBeansGetter(introspectedColumn, context, introspectedTable);
if (plugins.modelGetterMethodGenerated(method, topLevelClass, introspectedColumn, introspectedTable, Plugin.ModelClassType.PRIMARY_KEY)) {
topLevelClass.addMethod(method);
}
method = getJavaBeansSetter(introspectedColumn, context, introspectedTable);
if (plugins.modelSetterMethodGenerated(method, topLevelClass, introspectedColumn, introspectedTable, Plugin.ModelClassType.PRIMARY_KEY)) {
topLevelClass.addMethod(method);
}
}
List<CompilationUnit> answer = new ArrayList<CompilationUnit>();
if (context.getPlugins().modelPrimaryKeyClassGenerated(topLevelClass, introspectedTable)) {
answer.add(topLevelClass);
}
return answer;
}
use of org.mybatis.generator.api.dom.java.Field in project generator by mybatis.
the class AbstractDAOTemplate method getFieldClones.
/**
* Gets the field clones.
*
* @param commentGenerator
* the comment generator
* @param introspectedTable
* the introspected table
* @return the field clones
*/
public final List<Field> getFieldClones(CommentGenerator commentGenerator, IntrospectedTable introspectedTable) {
configure();
List<Field> answer = new ArrayList<Field>();
for (Field oldField : fields) {
Field field = new Field();
field.setInitializationString(oldField.getInitializationString());
field.setFinal(oldField.isFinal());
field.setStatic(oldField.isStatic());
field.setName(oldField.getName());
field.setType(oldField.getType());
field.setVisibility(oldField.getVisibility());
commentGenerator.addFieldComment(field, introspectedTable);
answer.add(field);
}
return answer;
}
Aggregations