public Class<?> transform(Node node, ClassLoader loader) throws TransformationException { try { return classLoaderRegistry.loadClass(loader, node.getTextContent()); } catch (ClassNotFoundException e) { throw new TransformationException(e); } } }
public Class<?> transform(String source, ClassLoader loader) throws TransformationException { try { return classLoaderRegistry.loadClass(loader, source); } catch (ClassNotFoundException e) { throw new TransformationException(e); } }
private Map<Class<?>, Constructor<?>> getFaultMapping(ClassLoader classLoader, Set<String> faultNames) throws ClassNotFoundException, NoSuchMethodException { Map<Class<?>, Constructor<?>> mapping = new HashMap<Class<?>, Constructor<?>>(faultNames.size()); for (String faultName : faultNames) { Class<?> clazz = classLoaderRegistry.loadClass(classLoader, faultName); WebFault fault = clazz.getAnnotation(WebFault.class); if (fault == null) { // FIXME throw someting throw new RuntimeException(); } Method getFaultInfo = clazz.getMethod("getFaultInfo"); Class<?> faultType = getFaultInfo.getReturnType(); Constructor<?> constructor = clazz.getConstructor(String.class, faultType); mapping.put(faultType, constructor); } return mapping; } }
private JAXBContext getJAXBContext(ClassLoader classLoader, Set<String> classNames) throws JAXBException, ClassNotFoundException { Class<?>[] classes = new Class<?>[classNames.size()]; int i = 0; for (String className : classNames) { classes[i++] = classLoaderRegistry.loadClass(classLoader, className); } ClassLoader old = Thread.currentThread().getContextClassLoader(); try { // The JAXBContext searches the TCCL for the JAXB-RI. Set the TCCL to the Axis classloader (which loaded this class), as it has // visibility to the JAXB RI. Thread.currentThread().setContextClassLoader(getClass().getClassLoader()); return JAXBContext.newInstance(classes); } finally { Thread.currentThread().setContextClassLoader(old); } }
keyType = classLoaderRegistry.loadClass(targetClassLoader, sourceDefinition.getKeyClassName()); } catch (ClassNotFoundException e) { throw new KeyInstantiationException("Error loading reference key type for: " + sourceDefinition.getUri(), e);
String param = params.get(i); try { paramTypes[i] = classLoaderRegistry.loadClass(loader, param); } catch (ClassNotFoundException e) { URI sourceUri = sourceDefinition.getUri();
URI componentUri = definition.getComponentUri(); String className = definition.getImplementationClass(); Class<?> implClass = classLoaderRegistry.loadClass(cl, className); Constructor<?> ctr = getConstructor(implClass, definition.getConstructor());
public ObjectFactory<?> createObjectFactory(MonitorTargetDefinition target) throws WiringException { try { ClassLoader loader = classLoaderRegistry.getClassLoader(target.getClassLoaderId()); Class<?> type = classLoaderRegistry.loadClass(loader, target.getMonitorType()); Component monitorable = componentManager.getComponent(target.getMonitorable()); Object monitor = monitorService.createMonitor(type, monitorable, target.getDestination()); return new SingletonObjectFactory<Object>(monitor); } catch (ClassNotFoundException e) { throw new WireAttachException("Unable to load monitor class: " + target.getMonitorType(), e); } catch (MonitorCreationException e) { throw new WireAttachException("Unable to create monitor for class: " + target.getMonitorType(), e); } } }
public void attach(SpringConnectionSourceDefinition source, PhysicalConnectionTargetDefinition target, ChannelConnection connection) throws ConnectionAttachException { URI sourceUri = source.getUri(); URI sourceName = UriHelper.getDefragmentedName(sourceUri); SpringComponent component = (SpringComponent) manager.getComponent(sourceName); if (component == null) { throw new ConnectionAttachException("Source component not found: " + sourceName); } Class<?> type; try { type = classLoaderRegistry.loadClass(source.getClassLoaderId(), source.getInterfaceName()); } catch (ClassNotFoundException e) { String name = source.getInterfaceName(); throw new ConnectionAttachException("Unable to load interface class: " + name, e); } try { ObjectFactory<?> factory = proxyService.createObjectFactory(type, connection); component.attach(source.getProducerName(), type, factory); } catch (ProxyCreationException e) { throw new ConnectionAttachException(e); } }