@Override protected Class<?> findClass(String name) throws ClassNotFoundException { return sd.loadClass(name); }
public String getName() { return sd.getAttributes().get("name"); }
@Override public String toString() { StringBuffer sb = new StringBuffer(super.toString()); sb.append(";className=").append(transformerDeclaration.getClassName()); return sb.toString(); } }
private Object getAttribute(Method method) throws Exception { if (method.getParameterTypes().length != 0) { return null; } String name = method.getName(); if (name.equals("getModelType") && method.getReturnType() == Class.class) { return sd.loadClass(sd.getAttributes().get("model")); } else if (name.equals("getArtifactType")) { return ServiceDeclarationParser.getQName(sd.getAttributes().get("qname")); } return null; }
logger.fine("Loading " + activatorDeclaration.getClassName()); Class<NodeActivator> activatorClass = (Class<NodeActivator>)activatorDeclaration.loadClass(); try { activator = ServiceHelper.newInstance(activatorClass, ExtensionPointRegistry.class, registry); new Class<?>[] {ExtensionPointRegistry.class, Map.class}, registry, activatorDeclaration.getAttributes()); String optional = activatorDeclaration.getAttributes().get("optional"); if ("true".equalsIgnoreCase(optional)) {
extensionPoints.getExtensionPoint(FactoryExtensionPoint.class); Class<URLArtifactProcessor> processorClass = (Class<URLArtifactProcessor>)processorDeclaration.loadClass(); try { Constructor<URLArtifactProcessor> constructor = processorDeclaration.getClassName(), e); throw ie;
String resourceName = definitionsDeclaration.getClassName(); if (!definitionResources.contains(resourceName)) { definitionResources.add(resourceName); URL url = definitionsDeclaration.getResource(resourceName); if (url == null) { throw new IllegalArgumentException(definitionsDeclaration.getClassName() + " cannot be found");
@Override protected URL findResource(String name) { return sd.getResource(name); }
@Override protected Enumeration<URL> findResources(String name) throws IOException { return sd.getResources(name); }
/** * Get service declarations that are filtered by the service type. In an OSGi runtime, there * might be different versions of the services * @param serviceType * @return * @throws IOException */ public Collection<ServiceDeclaration> getServiceDeclarations(Class<?> serviceType, boolean byRanking) throws IOException { Collection<ServiceDeclaration> sds = getServiceDeclarations(serviceType.getName(), byRanking); for (Iterator<ServiceDeclaration> i = sds.iterator(); i.hasNext();) { ServiceDeclaration sd = i.next(); if (!sd.isAssignableTo(serviceType)) { logger.log(Level.WARNING, "Service provider {0} is not a type of {1}", new Object[] {sd,serviceType.getName()}); i.remove(); } } return sds; }
logger.fine("Loading " + activatorDeclaration.getClassName()); Class<ModuleActivator> activatorClass = (Class<ModuleActivator>)activatorDeclaration.loadClass(); try { activator = newInstance(activatorClass, ExtensionPointRegistry.class, registry); new Class<?>[] {ExtensionPointRegistry.class, Map.class}, registry, activatorDeclaration.getAttributes()); String optional = activatorDeclaration.getAttributes().get("optional"); if ("true".equalsIgnoreCase(optional)) {
private Object getAttribute(Method method) throws Exception { if (method.getParameterTypes().length != 0) { return null; } String name = method.getName(); if (name.equals("getModelType") && method.getReturnType() == Class.class) { return sd.loadClass(sd.getAttributes().get("model")); } else if (name.equals("getArtifactType")) { return ServiceDeclarationParser.getQName(sd.getAttributes().get("qname")); } return null; }
extensionPoints.getExtensionPoint(FactoryExtensionPoint.class); Class<URLArtifactProcessor> processorClass = (Class<URLArtifactProcessor>)processorDeclaration.loadClass(); try { Constructor<URLArtifactProcessor> constructor = processorDeclaration.getClassName(), e); throw ie;
String resourceName = definitionsDeclaration.getClassName(); if (!definitionResources.contains(resourceName)) { definitionResources.add(resourceName); URL url = definitionsDeclaration.getResource(resourceName); if (url == null) { throw new IllegalArgumentException(definitionsDeclaration.getClassName() + " cannot be found");
@Override protected URL findResource(String name) { return sd.getResource(name); }
@Override protected Enumeration<URL> findResources(String name) throws IOException { return sd.getResources(name); }
/** * Get service declarations that are filtered by the service type. In an OSGi runtime, there * might be different versions of the services * @param serviceType * @return * @throws IOException */ public Collection<ServiceDeclaration> getServiceDeclarations(Class<?> serviceType, boolean byRanking) throws IOException { Collection<ServiceDeclaration> sds = getServiceDeclarations(serviceType.getName(), byRanking); for (Iterator<ServiceDeclaration> i = sds.iterator(); i.hasNext();) { ServiceDeclaration sd = i.next(); if (!sd.isAssignableTo(serviceType)) { logger.log(Level.WARNING, "Service provider {0} is not a type of {1}", new Object[] {sd,serviceType.getName()}); i.remove(); } } return sds; }
@Override protected Class<?> findClass(String name) throws ClassNotFoundException { return sd.loadClass(name); }
logger.fine("Loading " + activatorDeclaration.getClassName()); Class<NodeActivator> activatorClass = (Class<NodeActivator>)activatorDeclaration.loadClass(); try { activator = ServiceHelper.newInstance(activatorClass, ExtensionPointRegistry.class, registry); new Class<?>[] {ExtensionPointRegistry.class, Map.class}, registry, activatorDeclaration.getAttributes()); String optional = activatorDeclaration.getAttributes().get("optional"); if ("true".equalsIgnoreCase(optional)) {
public int compare(ServiceDeclaration o1, ServiceDeclaration o2) { int rank1 = 0; String r1 = o1.getAttributes().get("ranking"); if (r1 != null) { rank1 = Integer.parseInt(r1); } int rank2 = 0; String r2 = o2.getAttributes().get("ranking"); if (r2 != null) { rank2 = Integer.parseInt(r2); } return rank2 - rank1; // descending } }