public JBossMessageEndpointFactory(final ClassLoader classLoader, final MessageEndpointService<?> service, final Class<Object> ejbClass, final Class<?> messageListenerInterface) { // todo: generics bug; only Object.class is a Class<Object>. Everything else is Class<? extends Object> aka Class<?> this.service = service; final ProxyConfiguration<Object> configuration = new ProxyConfiguration<Object>() .setClassLoader(classLoader) .setProxyName(ejbClass.getName() + "$$$endpoint" + PROXY_ID.incrementAndGet()) .setSuperClass(ejbClass) .setProtectionDomain(ejbClass.getProtectionDomain()) .addAdditionalInterface(MessageEndpoint.class) .addAdditionalInterface(messageListenerInterface); this.factory = new ProxyFactory<Object>(configuration); this.endpointClass = ejbClass; }
proxyConfiguration.setMetadataSource(proxyReflectionIndex); if (view.isSerializable()) { proxyConfiguration.addAdditionalInterface(Serializable.class); if (view.isUseWriteReplace()) { proxyConfiguration.addAdditionalInterface(WriteReplaceInterface.class); proxyConfiguration.addAdditionalInterface(viewClass); viewConfiguration = view.createViewConfiguration(viewClass, configuration, new ProxyFactory(proxyConfiguration)); } else {
proxyConfiguration.setMetadataSource(proxyReflectionIndex); if (view.isSerializable()) { proxyConfiguration.addAdditionalInterface(Serializable.class); if (view.isUseWriteReplace()) { proxyConfiguration.addAdditionalInterface(WriteReplaceInterface.class); proxyConfiguration.addAdditionalInterface(viewClass); viewConfiguration = view.createViewConfiguration(viewClass, configuration, new ProxyFactory(proxyConfiguration)); } else {
proxyConfiguration.setMetadataSource(proxyReflectionIndex); if (view.isSerializable()) { proxyConfiguration.addAdditionalInterface(Serializable.class); if (view.isUseWriteReplace()) { proxyConfiguration.addAdditionalInterface(WriteReplaceInterface.class); proxyConfiguration.addAdditionalInterface(viewClass); viewConfiguration = view.createViewConfiguration(viewClass, configuration, new ProxyFactory(proxyConfiguration)); } else {
proxyConfiguration.setMetadataSource(proxyReflectionIndex); if (view.isSerializable()) { proxyConfiguration.addAdditionalInterface(Serializable.class); if (view.isUseWriteReplace()) { proxyConfiguration.addAdditionalInterface(WriteReplaceInterface.class); proxyConfiguration.addAdditionalInterface(viewClass); viewConfiguration = view.createViewConfiguration(viewClass, configuration, new ProxyFactory(proxyConfiguration)); } else {