@Override public PojoPropertyFieldBuilder name() { name = property.name(); return this; }
@Override public PojoPropertyFieldBuilder name() { name = property.name(); return this; }
@Override public BuilderName name() { name = property.name(); return this; }
@Override public BuilderName name() { name = property.name(); return this; }
@Override public BuilderName nameSuffix(String suffix) { name = property.name() + suffix; return this; }
@Override public Add setBuilderGet() { parameterList.add("builder.___get___" + property.name() + "()"); return this; }
@Override public Add setPropertyName() { parameterList.add(property.name()); return this; }
@Override public Add setPropertyName() { parameterList.add(property.name()); return this; }
private MethodSpec builderClassGetter() { return MethodSpec.methodBuilder(getterMethodName()) .returns(property.typeName()) .addStatement("return $L", property.name()) .build(); }
@Override public BuilderStatement nullCheck() { Optional<CodeBlock> maybeNullCheck = Code.nullCheck(property.typeName(), property.name()); if (maybeNullCheck.isPresent()) { body.add(maybeNullCheck.get()); } return this; }
public PojoProperty standardPojoMethod() { return PojoProperty.overridingMethodBuilder(this) .statement("return $L", name()) .build(); }
@Override public BuilderBody assignment(String template, Object... args) { body.add("this.$L = ", property.name()); body.add(template, args); body.add(";\n"); return this; }
private BuilderProperty of(Property property) { return BuilderProperty.methodBuilder(property) .nameSuffix("Of") .addParameter(property.typeParameterInfoStream() .map(TypeParameterInfo::typeNameBound) .findFirst() .get()) .assignment("$T.of($L)", Optional.class, property.name()) .build(); }
public PojoProperty standardPojoMethod() { return PojoProperty.overridingMethodBuilder(this) .statement("return $L", name()) .build(); }
@Override public void acceptIsOrmInsertableHelper(IsOrmInsertableHelper helper) { super.acceptIsOrmInsertableHelper(helper); helper.addExpressionPart(property().name()); }
@Override public CodeBlock onNone() { return build(CodeBlock.builder() .add(" .value($S, $L.getWrapped())", property.columnSimpleName(), property.property().name())); }
private CodeBlock fieldInitializer() { Naming naming = pojoInfo.naming(); CodeBlock.Builder init = CodeBlock.builder() .add("$T.of($T.class)\n", TESTER, naming.superClass()); pojoInfo.propertyStream() .filter(property -> !property.hasAnnotation(NotTestable.class)) .forEach(property -> init.add(" .add($S, o -> o.$L())\n", property.name(), property.accessorName())); return init .add(" .build()") .build(); }
@Override public CodeBlock onAutoIncrement() { CodeBlock.Builder code = CodeBlock.builder(); if (size == 1) { code.add(" .value($S, ($T) null)\n", property.columnSimpleName(), property.property().returnTypeInfo().autobox().className()); } return build(code.add(" .on(rs -> $L.onGeneratedKey($T.of(rs)))", property.property().name(), Result.class)); }