/** * Sets the bean that implements the web service methods. */ public void setBean(Object sei) { this.invoker = InstanceResolver.createSingleton(sei).createInvoker(); if(this.implType==null) // sei could be a AOP proxy, so getClass() is not always reliable. // so if set explicitly via setImpl, don't override that. this.implType = sei.getClass(); }
/** * Creates a default {@link InstanceResolver} that serves the given class. */ public static <T> InstanceResolver<T> createDefault(@NotNull Class<T> clazz) { InstanceResolver<T> ir = createFromInstanceResolverAnnotation(clazz); if(ir==null) ir = new SingletonResolver<T>(createNewInstance(clazz)); return ir; }
@Override public Object invoke(Packet p, Method m, Object... args) throws InvocationTargetException, IllegalAccessException { T t = resolve(p); try { return MethodUtil.invoke(t, m, args ); } finally { postInvoke(p,t); } }
invoker = InstanceResolver.createDefault(implType).createInvoker();
public @NotNull T resolve(Packet request) { //See iss 9721 //Injection and instantiation is now done lazily try { instance = injManager.createManagedObject(classtobeResolved); } catch (InjectionException e) { throw new WebServiceException(e); } resolver = InstanceResolver.createSingleton(instance); getResourceInjector(endpoint).inject(wsc, instance); return resolver.resolve(request); }
InstanceResolver ir = InstanceResolver.createFromInstanceResolverAnnotation(serviceEndpointClass); Invoker inv = ir.createInvoker();
/** * Creates a {@link InstanceResolver} implementation that always * returns the specified singleton instance. */ public static <T> InstanceResolver<T> createSingleton(T singleton) { assert singleton!=null; InstanceResolver ir = createFromInstanceResolverAnnotation(singleton.getClass()); if(ir==null) ir = new SingletonResolver<T>(singleton); return ir; }
@Override public void start(@NotNull WSWebServiceContext wsc, @NotNull WSEndpoint endpoint) { InstanceResolver.this.start(wsc,endpoint); }
/** * @deprecated * This is added here because a Glassfish integration happened * with this signature. Please do not use this. Will be removed * after the next GF integration. */ public static <T> InstanceResolver<T> createDefault(@NotNull Class<T> clazz, boolean bool) { return createDefault(clazz); }
@Override public void dispose() { InstanceResolver.this.dispose(); }
invoker = InstanceResolver.createDefault(implType).createInvoker();
/** * Creates a {@link InstanceResolver} implementation that always * returns the specified singleton instance. */ public static <T> InstanceResolver<T> createSingleton(T singleton) { assert singleton!=null; InstanceResolver ir = createFromInstanceResolverAnnotation(singleton.getClass()); if(ir==null) ir = new SingletonResolver<T>(singleton); return ir; }
@Override public void start(@NotNull WSWebServiceContext wsc, @NotNull WSEndpoint endpoint) { InstanceResolver.this.start(wsc,endpoint); }
/** * @deprecated * This is added here because a Glassfish integration happened * with this signature. Please do not use this. Will be removed * after the next GF integration. */ public static <T> InstanceResolver<T> createDefault(@NotNull Class<T> clazz, boolean bool) { return createDefault(clazz); }
@Override public void dispose() { InstanceResolver.this.dispose(); }
public EndpointImpl(@NotNull BindingID bindingId, @NotNull Object impl, WebServiceFeature ... features) { this(bindingId, impl, impl.getClass(), InstanceResolver.createSingleton(impl).createInvoker(), features); }
invoker = InstanceResolver.createDefault(implType).createInvoker();
@Override public Object invoke(Packet p, Method m, Object... args) throws InvocationTargetException, IllegalAccessException { T t = resolve(p); try { return MethodUtil.invoke(t, m, args ); } finally { postInvoke(p,t); } }
/** * Creates a default {@link InstanceResolver} that serves the given class. */ public static <T> InstanceResolver<T> createDefault(@NotNull Class<T> clazz) { InstanceResolver<T> ir = createFromInstanceResolverAnnotation(clazz); if(ir==null) ir = new SingletonResolver<T>(createNewInstance(clazz)); return ir; }
/** * Creates a {@link InstanceResolver} implementation that always * returns the specified singleton instance. */ public static <T> InstanceResolver<T> createSingleton(T singleton) { assert singleton!=null; InstanceResolver ir = createFromInstanceResolverAnnotation(singleton.getClass()); if(ir==null) ir = new SingletonResolver<T>(singleton); return ir; }