diff options
Diffstat (limited to 'src/core/lombok/eclipse/handlers/HandleSuperBuilder.java')
-rw-r--r-- | src/core/lombok/eclipse/handlers/HandleSuperBuilder.java | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/core/lombok/eclipse/handlers/HandleSuperBuilder.java b/src/core/lombok/eclipse/handlers/HandleSuperBuilder.java index 4f4baecd..4d5d2448 100644 --- a/src/core/lombok/eclipse/handlers/HandleSuperBuilder.java +++ b/src/core/lombok/eclipse/handlers/HandleSuperBuilder.java @@ -124,7 +124,7 @@ public class HandleSuperBuilder extends EclipseAnnotationHandler<SuperBuilder> { if (builderMethodName == null) builderMethodName = "builder"; if (buildMethodName == null) buildMethodName = "build"; - builderClassName = fixBuilderClassName(node, ""); + builderClassName = getBuilderClassNameTemplate(node, null); } EclipseNode builderAbstractType; @@ -274,8 +274,9 @@ public class HandleSuperBuilder extends EclipseAnnotationHandler<SuperBuilder> { }; if (extendsClause instanceof QualifiedTypeReference) { QualifiedTypeReference qualifiedTypeReference = (QualifiedTypeReference)extendsClause; - String superclassClassName = String.valueOf(qualifiedTypeReference.getLastToken()); - String superclassBuilderClassName = job.replaceBuilderClassName(superclassClassName); + char[] superclassClassName = qualifiedTypeReference.getLastToken(); + String builderClassNameTemplate = BuilderJob.getBuilderClassNameTemplate(annotationNode, null); + String superclassBuilderClassName = job.replaceBuilderClassName(superclassClassName, builderClassNameTemplate); char[][] tokens = Arrays.copyOf(qualifiedTypeReference.tokens, qualifiedTypeReference.tokens.length + 1); tokens[tokens.length-1] = superclassBuilderClassName.toCharArray(); @@ -291,10 +292,11 @@ public class HandleSuperBuilder extends EclipseAnnotationHandler<SuperBuilder> { superclassBuilderClass = new ParameterizedQualifiedTypeReference(tokens, typeArgsForTokens, 0, poss); } else if (extendsClause != null) { - String superClass = String.valueOf(extendsClause.getTypeName()[0]); - String superclassBuilderClassName = superClass + "Builder"; + char[] superclassClassName = extendsClause.getTypeName()[0]; + String builderClassNameTemplate = BuilderJob.getBuilderClassNameTemplate(annotationNode, null); + String superclassBuilderClassName = job.replaceBuilderClassName(superclassClassName, builderClassNameTemplate); - char[][] tokens = new char[][] {superClass.toCharArray(), superclassBuilderClassName.toCharArray()}; + char[][] tokens = new char[][] {superclassClassName, superclassBuilderClassName.toCharArray()}; long[] poss = new long[tokens.length]; Arrays.fill(poss, job.getPos()); |