MethodInvokingFactoryBean mcfb = new MethodInvokingFactoryBean(); mcfb.setTargetClass(TestClass1.class); mcfb.setTargetMethod("supertypes"); mcfb.setArguments(new ArrayList<>(), new ArrayList<Object>(), "hello", "bogus"); try { mcfb.setTargetMethod("supertypes"); mcfb.setArguments(1, new Object()); try { mcfb.setTargetMethod("supertypes2"); mcfb.setArguments(new ArrayList<>(), new ArrayList<Object>(), "hello", "bogus"); mcfb.afterPropertiesSet(); mcfb.setTargetMethod("supertypes2"); mcfb.setArguments(new ArrayList<>(), new ArrayList<Object>(), new Object()); try {
mcfb = new MethodInvokingFactoryBean(); mcfb.setTargetObject(tc1); mcfb.setTargetMethod("method1"); mcfb.afterPropertiesSet(); assertTrue(int.class.equals(mcfb.getObjectType())); mcfb.setTargetMethod("voidRetvalMethod"); mcfb.afterPropertiesSet(); Class<?> objType = mcfb.getObjectType(); mcfb = new MethodInvokingFactoryBean(); mcfb.setTargetClass(TestClass1.class); mcfb.setTargetMethod("supertypes"); mcfb.setArguments(new ArrayList<>(), new ArrayList<Object>(), "hello"); mcfb.afterPropertiesSet(); mcfb.registerCustomEditor(String.class, new StringTrimmerEditor(false)); mcfb.setTargetClass(TestClass1.class); mcfb.setTargetMethod("supertypes"); mcfb.setArguments("1", new Object()); try {
MethodInvokingFactoryBean mcfb = new MethodInvokingFactoryBean(); mcfb.setTargetObject(tc1); mcfb.setTargetMethod("method1"); mcfb.afterPropertiesSet(); Integer i = (Integer) mcfb.getObject(); mcfb = new MethodInvokingFactoryBean(); mcfb.setTargetObject(tc1); mcfb.setTargetMethod("method1"); mcfb.setSingleton(false); mcfb.afterPropertiesSet(); mcfb = new MethodInvokingFactoryBean(); mcfb.setTargetClass(TestClass1.class); mcfb.setTargetMethod("staticMethod1"); mcfb.afterPropertiesSet(); i = (Integer) mcfb.getObject(); mcfb.setTargetMethod("voidRetvalMethod"); mcfb.afterPropertiesSet(); assertNull(mcfb.getObject()); mcfb.setTargetMethod("supertypes"); mcfb.setArguments(new ArrayList<>(), new ArrayList<Object>(), "hello");
mcfb.setTargetMethod("whatever"); try { mcfb.afterPropertiesSet(); mcfb.setTargetMethod("some.bogus.Method.name"); try { mcfb.afterPropertiesSet(); mcfb.setTargetMethod("method1"); try { mcfb.afterPropertiesSet(); mcfb.setTargetMethod("bogus"); try { mcfb.afterPropertiesSet(); mcfb = new MethodInvokingFactoryBean(); mcfb.setTargetClass(TestClass1.class); mcfb.setTargetMethod("staticMethod1"); mcfb.afterPropertiesSet(); mcfb = new MethodInvokingFactoryBean(); mcfb.setTargetObject(tc1); mcfb.setTargetMethod("method1"); mcfb.afterPropertiesSet();
@Bean public MethodInvokingFactoryBean socketFactoryInitialization() { MethodInvokingFactoryBean methodInvokingFactoryBean = new MethodInvokingFactoryBean(); methodInvokingFactoryBean.setTargetClass(Protocol.class); methodInvokingFactoryBean.setTargetMethod("registerProtocol"); Object[] args = {"https", socketFactoryProtocol()}; methodInvokingFactoryBean.setArguments(args); return methodInvokingFactoryBean; }