1 18 package org.apache.axis2.engine; 19 20 import org.apache.axis2.context.MessageContext; 21 22 import java.lang.reflect.InvocationTargetException ; 23 import java.lang.reflect.Method ; 24 25 public class DependencyManager { 26 private final static String MESSAGE_CONTEXT_INJECTION_METHOD = "init"; 27 public static void configureBusinussLogicProvider(Object obj, MessageContext msgctx) 28 throws AxisFault { 29 try { 30 Class classToLoad = obj.getClass(); 31 Method [] methods = classToLoad.getMethods(); 32 33 for(int i = 0;i< methods.length ; i++){ 34 if(MESSAGE_CONTEXT_INJECTION_METHOD.equals(methods[i].getName()) && methods[i].getParameterTypes().length == 1 && 35 methods[i].getParameterTypes()[0] == MessageContext.class){ 36 methods[i].invoke(obj, new Object [] { msgctx }); 37 } 38 } 39 } catch (SecurityException e) { 40 throw new AxisFault(e); 41 } catch (IllegalArgumentException e) { 42 throw new AxisFault(e); 43 }catch (IllegalAccessException e) { 44 throw new AxisFault(e); 45 } catch (InvocationTargetException e) { 46 throw new AxisFault(e); 47 } 48 } 49 50 } 51 | Popular Tags |