From: Robert Varga Date: Wed, 15 Jul 2020 15:43:28 +0000 (+0200) Subject: Speed up BuilderGenerator matcher X-Git-Tag: v4.0.16~3 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=mdsal.git;a=commitdiff_plain;h=a60aad1e0bc10925a0eb0fbb77d4e26d60620605 Speed up BuilderGenerator matcher We do not need to establish FQCN, as we can compare just JavaTypeNames, which is faster. Change-Id: I3c387e841fbf2d450195d864a928608bab8128ad Signed-off-by: Robert Varga (cherry picked from commit d613481dfab5abd014e36fc8f77b291743c57dbf) --- diff --git a/binding/mdsal-binding-java-api-generator/src/main/java/org/opendaylight/mdsal/binding/java/api/generator/BuilderGenerator.java b/binding/mdsal-binding-java-api-generator/src/main/java/org/opendaylight/mdsal/binding/java/api/generator/BuilderGenerator.java index 98d111e894..920afa5a94 100644 --- a/binding/mdsal-binding-java-api-generator/src/main/java/org/opendaylight/mdsal/binding/java/api/generator/BuilderGenerator.java +++ b/binding/mdsal-binding-java-api-generator/src/main/java/org/opendaylight/mdsal/binding/java/api/generator/BuilderGenerator.java @@ -43,6 +43,9 @@ import org.opendaylight.yangtools.yang.binding.Augmentation; * class. For generation of the source code is used the template written in XTEND language. */ public final class BuilderGenerator implements CodeGenerator { + private static final JavaTypeName AUGMENTABLE = JavaTypeName.create(Augmentable.class); + private static final JavaTypeName AUGMENTATION = JavaTypeName.create(Augmentation.class); + private static final Comparator METHOD_COMPARATOR = new AlphabeticallyTypeMemberComparator<>(); private static final Type AUGMENTATION_RET_TYPE; @@ -68,12 +71,10 @@ public final class BuilderGenerator implements CodeGenerator { if (type instanceof GeneratedType && !(type instanceof GeneratedTransferObject)) { for (Type t : ((GeneratedType) type).getImplements()) { // "rpc" and "grouping" elements do not implement Augmentable - if (t.getFullyQualifiedName().equals(Augmentable.class.getName())) { - return true; - } else if (t.getFullyQualifiedName().equals(Augmentation.class.getName())) { + final JavaTypeName name = t.getIdentifier(); + if (name.equals(AUGMENTABLE) || name.equals(AUGMENTATION)) { return true; } - } } return false;