private boolean isFragmentInUse() { // A fragment is considered in use if it has any required host wires if ((BundleRevision.TYPE_FRAGMENT & revision.getTypes()) != 0) { List<ModuleWire> hostWires = getRequiredModuleWires(HostNamespace.HOST_NAMESPACE); // hostWires may be null if the fragment wiring is no longer valid return hostWires == null ? false : !hostWires.isEmpty(); } return false; }
@Override public ModuleWiring getProviderWiring() { if (!isValid) { return null; } return hostingProvider.getWiring(); }
ModuleRevision(String symbolicName, Version version, int types, List<GenericInfo> capabilityInfos, List<GenericInfo> requirementInfos, ModuleRevisions revisions, Object revisionInfo) { this.symbolicName = symbolicName; this.version = version; this.types = types; this.capabilities = createCapabilities(capabilityInfos); this.requirements = createRequirements(requirementInfos); this.revisions = revisions; this.revisionInfo = revisionInfo; }
if (systemModule != null) { ModuleRevision systemRevision = systemModule.getCurrentRevision(); List<ModuleCapability> hostCapabilities = systemRevision.getModuleCapabilities(HostNamespace.HOST_NAMESPACE); for (ModuleCapability hostCapability : hostCapabilities) { Object hostNames = hostCapability.getAttributes().get(HostNamespace.HOST_NAMESPACE); ModuleRevision revision = new ModuleRevision(symbolicName, version, types, capabilityInfos, requirementInfos, revisions, revisionInfo); revisions.addRevision(revision); module.getContainer().getAdaptor().associateRevision(revision, revisionInfo); List<ModuleRequirement> hostRequirements = revision.getModuleRequirements(HostNamespace.HOST_NAMESPACE); for (ModuleRequirement hostRequirement : hostRequirements) { FilterImpl f = null;
private BundleActivator loadBundleActivator() throws ClassNotFoundException, InstantiationException, IllegalAccessException { ModuleWiring wiring = bundle.getModule().getCurrentRevision().getWiring(); if (wiring == null) { return null; } BundleLoader loader = (BundleLoader) wiring.getModuleLoader(); if (loader == null) { return null; } List<Capability> metadata = wiring.getRevision().getCapabilities(EquinoxModuleDataNamespace.MODULE_DATA_NAMESPACE); if (metadata.isEmpty()) { return null; } String activatorName = (String) metadata.get(0).getAttributes().get(EquinoxModuleDataNamespace.CAPABILITY_ACTIVATOR); if (activatorName == null) { return null; } Class<?> activatorClass = loader.findClass(activatorName); return (BundleActivator) activatorClass.newInstance(); }
private static String[] getClassPath(ModuleRevision revision) { List<ModuleCapability> moduleDatas = revision.getModuleCapabilities(EquinoxModuleDataNamespace.MODULE_DATA_NAMESPACE); @SuppressWarnings("unchecked") List<String> cp = moduleDatas.isEmpty() ? null : (List<String>) moduleDatas.get(0).getAttributes().get(EquinoxModuleDataNamespace.CAPABILITY_CLASSPATH); return cp == null ? DEFAULT_CLASSPATH : cp.toArray(new String[cp.size()]); }
@Override public Bundle getBundle() { return revision.getBundle(); }
private BundleCapability getIdentity(ModuleRevision bundle) { List<BundleCapability> identities = bundle.getDeclaredCapabilities(IdentityNamespace.IDENTITY_NAMESPACE); return identities.isEmpty() ? null : identities.get(0); }
static boolean isSingleton(ModuleRevision revision) { List<Capability> identities = revision.getCapabilities(IdentityNamespace.IDENTITY_NAMESPACE); if (identities.isEmpty()) return false; return "true".equals(identities.get(0).getDirectives().get(IdentityNamespace.CAPABILITY_SINGLETON_DIRECTIVE)); //$NON-NLS-1$ }
@Override public List<Requirement> getRequirements(String namespace) { return InternalUtils.asListRequirement(getDeclaredRequirements(namespace)); }
if (systemModule != null) { ModuleRevision systemRevision = systemModule.getCurrentRevision(); List<ModuleCapability> hostCapabilities = systemRevision.getModuleCapabilities(HostNamespace.HOST_NAMESPACE); for (ModuleCapability hostCapability : hostCapabilities) { Object hostNames = hostCapability.getAttributes().get(HostNamespace.HOST_NAMESPACE); ModuleRevision revision = new ModuleRevision(symbolicName, version, types, capabilityInfos, requirementInfos, revisions, revisionInfo); revisions.addRevision(revision); module.getContainer().getAdaptor().associateRevision(revision, revisionInfo); List<ModuleRequirement> hostRequirements = revision.getModuleRequirements(HostNamespace.HOST_NAMESPACE); for (ModuleRequirement hostRequirement : hostRequirements) { FilterImpl f = null;
private BundleActivator loadBundleActivator() throws ClassNotFoundException, InstantiationException, IllegalAccessException { ModuleWiring wiring = bundle.getModule().getCurrentRevision().getWiring(); if (wiring == null) { return null; } BundleLoader loader = (BundleLoader) wiring.getModuleLoader(); if (loader == null) { return null; } List<Capability> metadata = wiring.getRevision().getCapabilities(EquinoxModuleDataNamespace.MODULE_DATA_NAMESPACE); if (metadata.isEmpty()) { return null; } String activatorName = (String) metadata.get(0).getAttributes().get(EquinoxModuleDataNamespace.CAPABILITY_ACTIVATOR); if (activatorName == null) { return null; } Class<?> activatorClass = loader.findClass(activatorName); return (BundleActivator) activatorClass.newInstance(); }
@Override public String toString() { List<ModuleCapability> identities = getModuleCapabilities(IdentityNamespace.IDENTITY_NAMESPACE); if (identities.isEmpty()) return super.toString(); return identities.get(0).toString(); }
@Override public Bundle getBundle() { return revision.getBundle(); }
private BundleCapability getIdentity(ModuleRevision bundle) { List<BundleCapability> identities = bundle.getDeclaredCapabilities(IdentityNamespace.IDENTITY_NAMESPACE); return identities.isEmpty() ? null : identities.get(0); }
static boolean isSingleton(ModuleRevision revision) { List<Capability> identities = revision.getCapabilities(IdentityNamespace.IDENTITY_NAMESPACE); if (identities.isEmpty()) return false; return "true".equals(identities.get(0).getDirectives().get(IdentityNamespace.CAPABILITY_SINGLETON_DIRECTIVE)); //$NON-NLS-1$ }
@Override public List<Requirement> getRequirements(String namespace) { return InternalUtils.asListRequirement(getDeclaredRequirements(namespace)); }
if (systemModule != null) { ModuleRevision systemRevision = systemModule.getCurrentRevision(); List<ModuleCapability> hostCapabilities = systemRevision.getModuleCapabilities(HostNamespace.HOST_NAMESPACE); for (ModuleCapability hostCapability : hostCapabilities) { Object hostNames = hostCapability.getAttributes().get(HostNamespace.HOST_NAMESPACE); ModuleRevision revision = new ModuleRevision(symbolicName, version, types, capabilityInfos, requirementInfos, revisions, revisionInfo); revisions.addRevision(revision); module.getContainer().getAdaptor().associateRevision(revision, revisionInfo); List<ModuleRequirement> hostRequirements = revision.getModuleRequirements(HostNamespace.HOST_NAMESPACE); for (ModuleRequirement hostRequirement : hostRequirements) { FilterImpl f = null;
private BundleActivator loadBundleActivator() throws ClassNotFoundException, InstantiationException, IllegalAccessException { ModuleWiring wiring = bundle.getModule().getCurrentRevision().getWiring(); if (wiring == null) { return null; } BundleLoader loader = (BundleLoader) wiring.getModuleLoader(); if (loader == null) { return null; } List<Capability> metadata = wiring.getRevision().getCapabilities(EquinoxModuleDataNamespace.MODULE_DATA_NAMESPACE); if (metadata.isEmpty()) { return null; } String activatorName = (String) metadata.get(0).getAttributes().get(EquinoxModuleDataNamespace.CAPABILITY_ACTIVATOR); if (activatorName == null) { return null; } Class<?> activatorClass = loader.findClass(activatorName); return (BundleActivator) activatorClass.newInstance(); }
@Override public ModuleWiring getProviderWiring() { if (!isValid) { return null; } return hostingProvider.getWiring(); }