From 6f5eaaf58218bb1eede197100a9b1c723fad330d Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Tue, 19 Mar 2019 12:31:14 +0100 Subject: [PATCH] Speed up Union stringValue() generation We can compare against well-known Types, which is faster than going through FQCN. Change-Id: I7f6a7bd143d94be48176d9d8e1fe56bd0e6eae8e Signed-off-by: Robert Varga (cherry picked from commit 3559737dc4dfd9ccb1d0d9b9d54ae648a24c226e) --- .../mdsal/binding/java/api/generator/UnionTemplate.xtend | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/binding/mdsal-binding-java-api-generator/src/main/java/org/opendaylight/mdsal/binding/java/api/generator/UnionTemplate.xtend b/binding/mdsal-binding-java-api-generator/src/main/java/org/opendaylight/mdsal/binding/java/api/generator/UnionTemplate.xtend index c4acfe905e..93b862013f 100644 --- a/binding/mdsal-binding-java-api-generator/src/main/java/org/opendaylight/mdsal/binding/java/api/generator/UnionTemplate.xtend +++ b/binding/mdsal-binding-java-api-generator/src/main/java/org/opendaylight/mdsal/binding/java/api/generator/UnionTemplate.xtend @@ -9,6 +9,7 @@ package org.opendaylight.mdsal.binding.java.api.generator import static org.opendaylight.mdsal.binding.model.util.Types.BOOLEAN; import static org.opendaylight.mdsal.binding.model.util.Types.BYTE_ARRAY; +import static org.opendaylight.mdsal.binding.model.util.Types.STRING; import static org.opendaylight.mdsal.binding.model.util.Types.getOuterClassName; import com.google.common.io.BaseEncoding @@ -105,13 +106,13 @@ class UnionTemplate extends ClassTemplate { «val field = property.fieldName» if («field» != null) { «val propRet = property.returnType» - «IF "java.lang.String".equals(propRet.fullyQualifiedName)» + «IF STRING.equals(propRet)» ««« type string return «field»; «ELSEIF "org.opendaylight.yangtools.yang.binding.InstanceIdentifier".equals(propRet.fullyQualifiedName)» ««« type instance-identifier return «field».toString(); - «ELSEIF "byte[]".equals(propRet.name)» + «ELSEIF BYTE_ARRAY.equals(propRet)» ««« type binary return new «String.importedName»(«field»); «ELSEIF propRet.fullyQualifiedName.startsWith("java.lang") || propRet instanceof Enumeration -- 2.36.6