Author: doogie Date: Wed Oct 17 21:06:43 2007 New Revision: 585850 URL: http://svn.apache.org/viewvc?rev=585850&view=rev Log: Use varargs for reflection access.
Modified: ofbiz/trunk/framework/service/src/org/ofbiz/service/ModelService.java ofbiz/trunk/framework/service/src/org/ofbiz/service/engine/GenericEngineFactory.java ofbiz/trunk/framework/service/src/org/ofbiz/service/engine/StandardJavaEngine.java ofbiz/trunk/framework/service/src/org/ofbiz/service/jms/JmsListenerFactory.java Modified: ofbiz/trunk/framework/service/src/org/ofbiz/service/ModelService.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/service/src/org/ofbiz/service/ModelService.java?rev=585850&r1=585849&r2=585850&view=diff ============================================================================== --- ofbiz/trunk/framework/service/src/org/ofbiz/service/ModelService.java (original) +++ ofbiz/trunk/framework/service/src/org/ofbiz/service/ModelService.java Wed Oct 17 21:06:43 2007 @@ -621,18 +621,16 @@ } boolean foundObjectParam = true; - Class[] stringParam = new Class[] { String.class }; - Class[] objectParam = new Class[] { Object.class }; Method validatorMethod = null; try { // try object type first - validatorMethod = validatorClass.getMethod(vali.getMethodName(), objectParam); + validatorMethod = validatorClass.getMethod(vali.getMethodName(), Object.class); } catch (NoSuchMethodException e) { foundObjectParam = false; // next try string type try { - validatorMethod = validatorClass.getMethod(vali.getMethodName(), stringParam); + validatorMethod = validatorClass.getMethod(vali.getMethodName(), String.class); } catch (NoSuchMethodException e2) { Debug.logWarning(e2, module); } @@ -642,7 +640,7 @@ throw new GeneralException("Unable to find validation method [" + vali.getMethodName() + "] in class [" + vali.getClassName() + "]"); } - Object[] params; + Object param; if (!foundObjectParam) { // convert to string String converted; @@ -651,16 +649,16 @@ } catch (GeneralException e) { throw new GeneralException("Unable to convert parameter to String"); } - params = new Object[] { converted }; + param = converted; } else { // use plain object - params = new Object[] { testValue }; + param = testValue; } // run the validator Boolean resultBool; try { - resultBool = (Boolean) validatorMethod.invoke(null, params); + resultBool = (Boolean) validatorMethod.invoke(null, param); } catch (ClassCastException e) { throw new GeneralException("Validation method [" + vali.getMethodName() + "] in class [" + vali.getClassName() + "] did not return expected Boolean"); } catch (Exception e) { Modified: ofbiz/trunk/framework/service/src/org/ofbiz/service/engine/GenericEngineFactory.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/service/src/org/ofbiz/service/engine/GenericEngineFactory.java?rev=585850&r1=585849&r2=585850&view=diff ============================================================================== --- ofbiz/trunk/framework/service/src/org/ofbiz/service/engine/GenericEngineFactory.java (original) +++ ofbiz/trunk/framework/service/src/org/ofbiz/service/engine/GenericEngineFactory.java Wed Oct 17 21:06:43 2007 @@ -69,14 +69,11 @@ synchronized (GenericEngineFactory.class) { engine = (GenericEngine) engines.get(engineName); if (engine == null) { - Class[] paramTypes = new Class[] { ServiceDispatcher.class }; - Object[] params = new Object[] { dispatcher }; - try { ClassLoader loader = Thread.currentThread().getContextClassLoader(); Class c = loader.loadClass(className); - Constructor cn = c.getConstructor(paramTypes); - engine = (GenericEngine) cn.newInstance(params); + Constructor cn = c.getConstructor(ServiceDispatcher.class); + engine = (GenericEngine) cn.newInstance(dispatcher); } catch (Exception e) { throw new GenericServiceException(e.getMessage(), e); } Modified: ofbiz/trunk/framework/service/src/org/ofbiz/service/engine/StandardJavaEngine.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/service/src/org/ofbiz/service/engine/StandardJavaEngine.java?rev=585850&r1=585849&r2=585850&view=diff ============================================================================== --- ofbiz/trunk/framework/service/src/org/ofbiz/service/engine/StandardJavaEngine.java (original) +++ ofbiz/trunk/framework/service/src/org/ofbiz/service/engine/StandardJavaEngine.java Wed Oct 17 21:06:43 2007 @@ -73,8 +73,6 @@ Debug.logError("ERROR: Null Service Context.", module); } - Class[] paramTypes = new Class[] {DispatchContext.class, Map.class}; - Object[] params = new Object[] {dctx, context}; Object result = null; // check the package and method names @@ -93,8 +91,8 @@ try { Class c = cl.loadClass(this.getLocation(modelService)); - Method m = c.getMethod(modelService.invoke, paramTypes); - result = m.invoke(null, params); + Method m = c.getMethod(modelService.invoke, DispatchContext.class, Map.class); + result = m.invoke(null, dctx, context); } catch (ClassNotFoundException cnfe) { throw new GenericServiceException("Cannot find service location", cnfe); } catch (NoSuchMethodException nsme) { Modified: ofbiz/trunk/framework/service/src/org/ofbiz/service/jms/JmsListenerFactory.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/service/src/org/ofbiz/service/jms/JmsListenerFactory.java?rev=585850&r1=585849&r2=585850&view=diff ============================================================================== --- ofbiz/trunk/framework/service/src/org/ofbiz/service/jms/JmsListenerFactory.java (original) +++ ofbiz/trunk/framework/service/src/org/ofbiz/service/jms/JmsListenerFactory.java Wed Oct 17 21:06:43 2007 @@ -144,14 +144,12 @@ listener = (GenericMessageListener) listeners.get(serverKey); if (listener == null) { ClassLoader cl = this.getClass().getClassLoader(); - Class[] paramTypes = new Class[] {ServiceDispatcher.class, String.class, String.class, String.class, String.class, String.class}; - Object[] params = new Object[] {dispatcher, serverName, jndiName, queueName, userName, password}; try { Class c = cl.loadClass(className); - Constructor cn = c.getConstructor(paramTypes); + Constructor cn = c.getConstructor(ServiceDispatcher.class, String.class, String.class, String.class, String.class, String.class); - listener = (GenericMessageListener) cn.newInstance(params); + listener = (GenericMessageListener) cn.newInstance(dispatcher, serverName, jndiName, queueName, userName, password); } catch (Exception e) { throw new GenericServiceException(e.getMessage(), e); }