BUG-983: remove the use of xtend Conversions 51/6851/1
authorRobert Varga <rovarga@cisco.com>
Sat, 10 May 2014 10:27:14 +0000 (12:27 +0200)
committerRobert Varga <rovarga@cisco.com>
Sat, 10 May 2014 10:27:14 +0000 (12:27 +0200)
This removes the last remnant of xtend for this codebase. As it turns
out, it make the code much more efficient, too.

Change-Id: Ie6f67ae308075c9af79a2a849309002d501dc646
Signed-off-by: Robert Varga <rovarga@cisco.com>
code-generator/binding-generator-impl/src/main/java/org/opendaylight/yangtools/sal/binding/generator/util/JavassistUtils.java

index 9478dff19c74567a9c83fd9e93f7d2f8cb76c52c..e19730b35ef80d2255fb6178af19990e1a1c0eb0 100644 (file)
@@ -7,10 +7,7 @@
  */
 package org.opendaylight.yangtools.sal.binding.generator.util;
 
-import java.util.ArrayList;
-import java.util.Arrays;
 import java.util.Collection;
-import java.util.List;
 import java.util.Map;
 import java.util.WeakHashMap;
 import java.util.concurrent.locks.Lock;
@@ -27,7 +24,6 @@ import javassist.LoaderClassPath;
 import javassist.Modifier;
 import javassist.NotFoundException;
 
-import org.eclipse.xtext.xbase.lib.Conversions;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -81,9 +77,8 @@ public final class JavassistUtils {
 
     public void method(final CtClass it, final Class<? extends Object> returnType, final String name,
             final Class<? extends Object> parameter, final MethodGenerator function1) throws CannotCompileException {
-        List<CtClass> _asList = Arrays.<CtClass> asList(asCtClass(parameter));
-        CtMethod _ctMethod = new CtMethod(asCtClass(returnType), name, ((CtClass[]) Conversions.unwrapArray(
-                _asList, CtClass.class)), it);
+        final CtClass[] pa = new CtClass[] { asCtClass(parameter) };
+        final CtMethod _ctMethod = new CtMethod(asCtClass(returnType), name, pa, it);
 
         final CtMethod method = _ctMethod;
         function1.process(method);
@@ -92,21 +87,23 @@ public final class JavassistUtils {
 
     public void method(final CtClass it, final Class<? extends Object> returnType, final String name,
             final Collection<? extends Class<?>> parameters, final MethodGenerator function1) throws CannotCompileException {
-        List<CtClass> _asList = new ArrayList<>();
+        final CtClass[] pa = new CtClass[parameters.size()];
+
+        int i = 0;
         for (Class<? extends Object> parameter : parameters) {
-            _asList.add(asCtClass(parameter));
+            pa[i] = asCtClass(parameter);
+            ++i;
         }
-        CtMethod method = new CtMethod(asCtClass(returnType), name, ((CtClass[]) Conversions.unwrapArray(_asList,
-                CtClass.class)), it);
+
+        final CtMethod method = new CtMethod(asCtClass(returnType), name, pa, it);
         function1.process(method);
         it.addMethod(method);
     }
 
     public void staticMethod(final CtClass it, final Class<? extends Object> returnType, final String name,
             final Class<? extends Object> parameter, final MethodGenerator function1) throws CannotCompileException {
-        List<CtClass> _asList = Arrays.<CtClass> asList(asCtClass(parameter));
-        CtMethod _ctMethod = new CtMethod(asCtClass(returnType), name, ((CtClass[]) Conversions.unwrapArray(
-                _asList, CtClass.class)), it);
+        final CtClass[] pa = new CtClass[] { asCtClass(parameter) };
+        final CtMethod _ctMethod = new CtMethod(asCtClass(returnType), name, pa, it);
         final CtMethod method = _ctMethod;
         function1.process(method);
         it.addMethod(method);