InstallableUnitDescription description = unitHostRequirements.isEmpty() ? new InstallableUnitDescription() : new InstallableUnitFragmentDescription(); description.setId(unitId); description.setVersion(unitVersion); description.setSingleton(unitSingleton); description.setFilter(unitFilter); if (unitCopyright != null || unitCopyrightLocation != null) { try { URI uri = unitCopyrightLocation != null ? new URI(unitCopyrightLocation) : null; description.setCopyright(MetadataFactory.createCopyright(uri, unitCopyright)); } catch (URISyntaxException e) { throw new IllegalStateException("bad copyright URI at token: " + current + ", " + currentValue()); //$NON-NLS-1$ //$NON-NLS-2$ description.setTouchpointType(MetadataFactory.createTouchpointType(unitTouchpointId, unitTouchpointVersion)); description.setUpdateDescriptor(MetadataFactory.createUpdateDescriptor(unitUpdateId, unitUpdateRange, unitUpdateSeverity, unitUpdateDescription)); description.setLicenses(unitLicenses.toArray(new ILicense[unitLicenses.size()])); description.setArtifacts(unitArtifacts.toArray(new IArtifactKey[unitArtifacts.size()])); description.setProperty(entry.getKey(), entry.getValue()); description.setCapabilities(unitProvides.toArray(new IProvidedCapability[unitProvides.size()])); description.setRequirements(unitRequires.toArray(new IRequirement[unitRequires.size()])); description.setMetaRequirements(unitMetaRequirements.toArray(new IRequirement[unitMetaRequirements.size()])); description.addTouchpointData(MetadataFactory.createTouchpointData(unitInstructions));
Collection<ICapabilityAdvice> advice = info.getAdvice(null, false, iu.getId(), iu.getVersion(), ICapabilityAdvice.class); if (advice.isEmpty()) return; List<IRequirement> current = iu.getRequirements(); Set<IRequirement> resultRequiredCapabilities = new HashSet<IRequirement>(current); iu.setRequirements(resultRequiredCapabilities.toArray(new IRequirement[resultRequiredCapabilities.size()])); Collection<IRequirement> current = iu.getMetaRequirements(); Set<IRequirement> resultMetaRequiredCapabilities = new HashSet<IRequirement>(current); iu.setMetaRequirements(resultMetaRequiredCapabilities.toArray(new IRequirement[resultMetaRequiredCapabilities.size()])); Collection<IProvidedCapability> current = iu.getProvidedCapabilities(); Set<IProvidedCapability> resultProvidedCapabilities = new HashSet<IProvidedCapability>(current); for (IProvidedCapability currentProvidedCapability : current) { iu.setCapabilities(resultProvidedCapabilities.toArray(new IProvidedCapability[resultProvidedCapabilities.size()]));
if (manifest != null && bd.getLocation() != null) manifestLocalizations = getManifestLocalizations(manifest, new File(bd.getLocation())); InstallableUnitDescription iu = new MetadataFactory.InstallableUnitDescription(); iu.setSingleton(bd.isSingleton()); iu.setId(bd.getSymbolicName()); iu.setVersion(PublisherHelper.fromOSGiVersion(bd.getVersion())); iu.setFilter(bd.getPlatformFilter()); iu.setUpdateDescriptor(MetadataFactory.createUpdateDescriptor(bd.getSymbolicName(), computeUpdateRange(bd.getVersion()), IUpdateDescriptor.NORMAL, null)); iu.setArtifacts(new IArtifactKey[] {key}); iu.setTouchpointType(PublisherHelper.TOUCHPOINT_OSGI); iu.setRequirements(reqsDeps.toArray(new IRequirement[reqsDeps.size()])); Map<String, String> translatedStrings = locEntry.getValue(); for (Entry<String, String> entry : translatedStrings.entrySet()) { iu.setProperty(locale.toString() + '.' + entry.getKey(), entry.getValue()); iu.setCapabilities(providedCapabilities.toArray(new IProvidedCapability[providedCapabilities.size()])); processUpdateDescriptorAdvice(iu, info); processCapabilityAdvice(iu, info); String value = manifest.get(BUNDLE_IU_PROPERTY_MAP[i]); if (value != null && value.length() > 0) { iu.setProperty(BUNDLE_IU_PROPERTY_MAP[i + 1], value);
InstallableUnitDescription iu = new MetadataFactory.InstallableUnitDescription(); iu.setSingleton(bd.isSingleton()); iu.setId(bd.getSymbolicName()); iu.setVersion(PublisherHelper.fromOSGiVersion(bd.getVersion())); iu.setFilter(bd.getPlatformFilter()); iu.setUpdateDescriptor(MetadataFactory.createUpdateDescriptor(bd.getSymbolicName(), computeUpdateRange(bd.getVersion()), IUpdateDescriptor.NORMAL, null)); iu.setArtifacts(new IArtifactKey[] {key}); iu.setTouchpointType(PublisherHelper.TOUCHPOINT_OSGI); iu.setRequirements(requirements.toArray(new IRequirement[requirements.size()])); Map<String, String> translatedStrings = locEntry.getValue(); for (Entry<String, String> entry : translatedStrings.entrySet()) { iu.setProperty(locale.toString() + '.' + entry.getKey(), entry.getValue()); iu.setCapabilities(providedCapabilities.toArray(new IProvidedCapability[providedCapabilities.size()])); String value = manifest.get(BUNDLE_IU_PROPERTY_MAP[i]); if (value != null && value.length() > 0) { iu.setProperty(BUNDLE_IU_PROPERTY_MAP[i + 1], value);
InstallableUnitDescription description = unitHostRequirements.isEmpty() ? new InstallableUnitDescription() : new InstallableUnitFragmentDescription(); description.setId(unitId); description.setVersion(unitVersion); description.setSingleton(unitSingleton); description.setFilter(unitFilter); if (unitCopyright != null || unitCopyrightLocation != null) { try { URI uri = unitCopyrightLocation != null ? new URI(unitCopyrightLocation) : null; description.setCopyright(MetadataFactory.createCopyright(uri, unitCopyright)); } catch (URISyntaxException e) { throw new IllegalStateException("bad copyright URI at token: " + current + ", " + currentValue()); //$NON-NLS-1$ //$NON-NLS-2$ description.setTouchpointType(MetadataFactory.createTouchpointType(unitTouchpointId, unitTouchpointVersion)); description.setUpdateDescriptor(MetadataFactory.createUpdateDescriptor(unitUpdateId, unitUpdateRange, unitUpdateSeverity, unitUpdateDescription)); description.setLicenses(unitLicenses.toArray(new ILicense[unitLicenses.size()])); description.setArtifacts(unitArtifacts.toArray(new IArtifactKey[unitArtifacts.size()])); description.setProperty(entry.getKey(), entry.getValue()); description.setCapabilities(unitProvides.toArray(new IProvidedCapability[unitProvides.size()])); description.setRequirements(unitRequires.toArray(new IRequirement[unitRequires.size()])); description.setMetaRequirements(unitMetaRequirements.toArray(new IRequirement[unitMetaRequirements.size()])); description.addTouchpointData(MetadataFactory.createTouchpointData(unitInstructions));
InstallableUnitDescription description = unitHostRequirements.isEmpty() ? new InstallableUnitDescription() : new InstallableUnitFragmentDescription(); description.setId(unitId); description.setVersion(unitVersion); description.setSingleton(unitSingleton); description.setFilter(unitFilter); if (unitCopyright != null || unitCopyrightLocation != null) { try { URI uri = unitCopyrightLocation != null ? new URI(unitCopyrightLocation) : null; description.setCopyright(MetadataFactory.createCopyright(uri, unitCopyright)); } catch (URISyntaxException e) { throw new IllegalStateException("bad copyright URI at token: " + current + ", " + currentValue()); //$NON-NLS-1$ //$NON-NLS-2$ description.setTouchpointType(MetadataFactory.createTouchpointType(unitTouchpointId, unitTouchpointVersion)); description.setUpdateDescriptor(MetadataFactory.createUpdateDescriptor(unitUpdateId, unitUpdateRange, unitUpdateSeverity, unitUpdateDescription)); description.setLicenses(unitLicenses.toArray(new ILicense[unitLicenses.size()])); description.setArtifacts(unitArtifacts.toArray(new IArtifactKey[unitArtifacts.size()])); description.setProperty(entry.getKey(), entry.getValue()); description.setCapabilities(unitProvides.toArray(new IProvidedCapability[unitProvides.size()])); description.setRequirements(unitRequires.toArray(new IRequirement[unitRequires.size()])); description.setMetaRequirements(unitMetaRequirements.toArray(new IRequirement[unitMetaRequirements.size()])); description.addTouchpointData(MetadataFactory.createTouchpointData(unitInstructions));
Collection<ICapabilityAdvice> advice = info.getAdvice(null, false, iu.getId(), iu.getVersion(), ICapabilityAdvice.class); if (advice.isEmpty()) return; List<IRequirement> current = iu.getRequirements(); Set<IRequirement> resultRequiredCapabilities = new HashSet<IRequirement>(current); iu.setRequirements(resultRequiredCapabilities.toArray(new IRequirement[resultRequiredCapabilities.size()])); Collection<IRequirement> current = iu.getMetaRequirements(); Set<IRequirement> resultMetaRequiredCapabilities = new HashSet<IRequirement>(current); iu.setMetaRequirements(resultMetaRequiredCapabilities.toArray(new IRequirement[resultMetaRequiredCapabilities.size()])); Collection<IProvidedCapability> current = iu.getProvidedCapabilities(); Set<IProvidedCapability> resultProvidedCapabilities = new HashSet<IProvidedCapability>(current); for (IProvidedCapability currentProvidedCapability : current) { iu.setCapabilities(resultProvidedCapabilities.toArray(new IProvidedCapability[resultProvidedCapabilities.size()]));
Collection<ICapabilityAdvice> advice = info.getAdvice(null, false, iu.getId(), iu.getVersion(), ICapabilityAdvice.class); if (advice.isEmpty()) return; List<IRequirement> current = iu.getRequirements(); Set<IRequirement> resultRequiredCapabilities = new HashSet<IRequirement>(current); iu.setRequirements(resultRequiredCapabilities.toArray(new IRequirement[resultRequiredCapabilities.size()])); Collection<IRequirement> current = iu.getMetaRequirements(); Set<IRequirement> resultMetaRequiredCapabilities = new HashSet<IRequirement>(current); iu.setMetaRequirements(resultMetaRequiredCapabilities.toArray(new IRequirement[resultMetaRequiredCapabilities.size()])); Collection<IProvidedCapability> current = iu.getProvidedCapabilities(); Set<IProvidedCapability> resultProvidedCapabilities = new HashSet<IProvidedCapability>(current); for (IProvidedCapability currentProvidedCapability : current) { iu.setCapabilities(resultProvidedCapabilities.toArray(new IProvidedCapability[resultProvidedCapabilities.size()]));
Collection<ICapabilityAdvice> advice = info.getAdvice(null, false, iu.getId(), iu.getVersion(), ICapabilityAdvice.class); if (advice.isEmpty()) return; List<IRequirement> current = iu.getRequirements(); Set<IRequirement> resultRequiredCapabilities = new HashSet<>(current); iu.setRequirements(resultRequiredCapabilities.toArray(new IRequirement[resultRequiredCapabilities.size()])); Collection<IRequirement> current = iu.getMetaRequirements(); Set<IRequirement> resultMetaRequiredCapabilities = new HashSet<>(current); iu.setMetaRequirements(resultMetaRequiredCapabilities.toArray(new IRequirement[resultMetaRequiredCapabilities.size()])); Collection<IProvidedCapability> current = iu.getProvidedCapabilities(); Set<IProvidedCapability> resultProvidedCapabilities = new HashSet<>(current); for (IProvidedCapability currentProvidedCapability : current) { iu.setCapabilities(resultProvidedCapabilities.toArray(new IProvidedCapability[resultProvidedCapabilities.size()]));
InstallableUnitDescription description = unitHostRequirements.isEmpty() ? new InstallableUnitDescription() : new InstallableUnitFragmentDescription(); description.setId(unitId); description.setVersion(unitVersion); description.setSingleton(unitSingleton); description.setFilter(unitFilter); if (unitCopyright != null || unitCopyrightLocation != null) { try { URI uri = unitCopyrightLocation != null ? new URI(unitCopyrightLocation) : null; description.setCopyright(MetadataFactory.createCopyright(uri, unitCopyright)); } catch (URISyntaxException e) { throw new IllegalStateException("bad copyright URI at token: " + current + ", " + currentValue()); //$NON-NLS-1$ //$NON-NLS-2$ description.setTouchpointType(MetadataFactory.createTouchpointType(unitTouchpointId, unitTouchpointVersion)); description.setUpdateDescriptor(MetadataFactory.createUpdateDescriptor(unitUpdateId, unitUpdateRange, unitUpdateSeverity, unitUpdateDescription)); description.setLicenses(unitLicenses.toArray(new ILicense[unitLicenses.size()])); description.setArtifacts(unitArtifacts.toArray(new IArtifactKey[unitArtifacts.size()])); description.setProperty(entry.getKey(), entry.getValue()); description.setCapabilities(unitProvides.toArray(new IProvidedCapability[unitProvides.size()])); description.setRequirements(unitRequires.toArray(new IRequirement[unitRequires.size()])); description.setMetaRequirements(unitMetaRequirements.toArray(new IRequirement[unitMetaRequirements.size()])); description.addTouchpointData(MetadataFactory.createTouchpointData(unitInstructions));
if (manifest != null && bd.getLocation() != null) manifestLocalizations = getManifestLocalizations(manifest, new File(bd.getLocation())); InstallableUnitDescription iu = new MetadataFactory.InstallableUnitDescription(); iu.setSingleton(bd.isSingleton()); iu.setId(bd.getSymbolicName()); iu.setVersion(PublisherHelper.fromOSGiVersion(bd.getVersion())); iu.setFilter(bd.getPlatformFilter()); iu.setUpdateDescriptor(MetadataFactory.createUpdateDescriptor(bd.getSymbolicName(), computeUpdateRange(bd.getVersion()), IUpdateDescriptor.NORMAL, null)); iu.setArtifacts(new IArtifactKey[] {key}); iu.setTouchpointType(PublisherHelper.TOUCHPOINT_OSGI); addImportPackageRequirement(reqsDeps, importSpec, rawImportPackageHeader); iu.setRequirements(reqsDeps.toArray(new IRequirement[reqsDeps.size()])); Map<String, String> translatedStrings = locEntry.getValue(); for (Entry<String, String> entry : translatedStrings.entrySet()) { iu.setProperty(locale.toString() + '.' + entry.getKey(), entry.getValue()); iu.setCapabilities(providedCapabilities.toArray(new IProvidedCapability[providedCapabilities.size()])); processUpdateDescriptorAdvice(iu, info); processCapabilityAdvice(iu, info); String value = manifest.get(BUNDLE_IU_PROPERTY_MAP[i]); if (value != null && value.length() > 0) { iu.setProperty(BUNDLE_IU_PROPERTY_MAP[i + 1], value);
((InstallableUnitPatchDescription) currentUnit).setLifeCycle(lifeCycleHandler.getLifeCycleRequirement()); } else if (hostRequiredCapabilitiesHandler == null || hostRequiredCapabilitiesHandler.getHostRequiredCapabilities().length == 0) { currentUnit = new InstallableUnitDescription(); } else { currentUnit = new MetadataFactory.InstallableUnitFragmentDescription(); ((InstallableUnitFragmentDescription) currentUnit).setHost(hostRequiredCapabilitiesHandler.getHostRequiredCapabilities()); currentUnit.setId(id); currentUnit.setVersion(version); currentUnit.setSingleton(singleton); OrderedProperties properties = (propertiesHandler == null ? new OrderedProperties(0) : propertiesHandler.getProperties()); String updateFrom = null; currentUnit.setProperty(key, value); currentUnit.setUpdateDescriptor(MetadataFactory.createUpdateDescriptor(updateFrom, updateRange, IUpdateDescriptor.NORMAL, null)); currentUnit.setLicenses(licensesHandler.getLicenses()); currentUnit.setCopyright(copyright); currentUnit.setCapabilities(providedCapabilities); IRequirement[] requiredCapabilities = (requiredCapabilitiesHandler == null ? new IRequirement[0] : requiredCapabilitiesHandler.getRequiredCapabilities()); currentUnit.setRequirements(requiredCapabilities); IRequirement[] metaRequiredCapabilities = (metaRequiredCapabilitiesHandler == null ? new IRequirement[0] : metaRequiredCapabilitiesHandler.getMetaRequiredCapabilities()); currentUnit.setMetaRequirements(metaRequiredCapabilities); if (filterHandler != null) { currentUnit.setFilter(filterHandler.getText());
protected IInstallableUnit createGroupIU(Feature feature, List<IInstallableUnit> childIUs, IPublisherInfo publisherInfo) { if (isPatch(feature)) return createPatchIU(feature, childIUs, publisherInfo); InstallableUnitDescription iu = new MetadataFactory.InstallableUnitDescription(); String id = getGroupId(feature.getId()); iu.setId(id); Version version = PublisherHelper.fromOSGiVersion(new org.osgi.framework.Version(feature.getVersion())); iu.setVersion(version); iu.setProperty(IInstallableUnit.PROP_NAME, feature.getLabel()); if (feature.getDescription() != null) iu.setProperty(IInstallableUnit.PROP_DESCRIPTION, feature.getDescription()); if (feature.getDescriptionURL() != null) iu.setProperty(IInstallableUnit.PROP_DESCRIPTION_URL, feature.getDescriptionURL()); if (feature.getProviderName() != null) iu.setProperty(IInstallableUnit.PROP_PROVIDER, feature.getProviderName()); if (feature.getLicense() != null) iu.setLicenses(new ILicense[] {MetadataFactory.createLicense(toURIOrNull(feature.getLicenseURL()), feature.getLicense())}); if (feature.getCopyright() != null) iu.setCopyright(MetadataFactory.createCopyright(toURIOrNull(feature.getCopyrightURL()), feature.getCopyright())); iu.setUpdateDescriptor(MetadataFactory.createUpdateDescriptor(id, BundlesAction.computeUpdateRange(new org.osgi.framework.Version(feature.getVersion())), IUpdateDescriptor.NORMAL, null)); iu.setRequirements(required.toArray(new IRequirement[required.size()])); iu.setTouchpointType(ITouchpointType.NONE); iu.setProperty(InstallableUnitDescription.PROP_TYPE_GROUP, Boolean.TRUE.toString()); processTouchpointAdvice(iu, null, publisherInfo); processInstallableUnitPropertiesAdvice(iu, publisherInfo); iu.setFilter(getFilter(entry));
((InstallableUnitPatchDescription) currentUnit).setLifeCycle(lifeCycleHandler.getLifeCycleRequirement()); } else if (hostRequiredCapabilitiesHandler == null || hostRequiredCapabilitiesHandler.getHostRequiredCapabilities().length == 0) { currentUnit = new InstallableUnitDescription(); } else { currentUnit = new MetadataFactory.InstallableUnitFragmentDescription(); ((InstallableUnitFragmentDescription) currentUnit).setHost(hostRequiredCapabilitiesHandler.getHostRequiredCapabilities()); currentUnit.setId(id); currentUnit.setVersion(version); currentUnit.setSingleton(singleton); OrderedProperties properties = (propertiesHandler == null ? new OrderedProperties(0) : propertiesHandler.getProperties()); String updateFrom = null; currentUnit.setProperty(key, value); currentUnit.setUpdateDescriptor(MetadataFactory.createUpdateDescriptor(updateFrom, updateRange, IUpdateDescriptor.NORMAL, null)); currentUnit.setLicenses(licensesHandler.getLicenses()); currentUnit.setCopyright(copyright); currentUnit.setCapabilities(providedCapabilities); IRequirement[] requiredCapabilities = (requiredCapabilitiesHandler == null ? new IRequirement[0] : requiredCapabilitiesHandler.getRequiredCapabilities()); currentUnit.setRequirements(requiredCapabilities); IRequirement[] metaRequiredCapabilities = (metaRequiredCapabilitiesHandler == null ? new IRequirement[0] : metaRequiredCapabilitiesHandler.getMetaRequiredCapabilities()); currentUnit.setMetaRequirements(metaRequiredCapabilities); if (filterHandler != null) { currentUnit.setFilter(filterHandler.getText());
public static IInstallableUnit createFeatureJarIU(Feature feature, IPublisherInfo info) { InstallableUnitDescription iu = new MetadataFactory.InstallableUnitDescription(); String id = getTransformedId(feature.getId(), /*isPlugin*/false, /*isGroup*/false); iu.setId(id); Version version = Version.parseVersion(feature.getVersion()); iu.setVersion(version); iu.setProperty(IInstallableUnit.PROP_NAME, feature.getLabel()); if (feature.getDescription() != null) iu.setProperty(IInstallableUnit.PROP_DESCRIPTION, feature.getDescription()); if (feature.getDescriptionURL() != null) iu.setProperty(IInstallableUnit.PROP_DESCRIPTION_URL, feature.getDescriptionURL()); if (feature.getProviderName() != null) iu.setProperty(IInstallableUnit.PROP_PROVIDER, feature.getProviderName()); if (feature.getLicense() != null) iu.setLicenses(new ILicense[] {MetadataFactory.createLicense(toURIOrNull(feature.getLicenseURL()), feature.getLicense())}); if (feature.getCopyright() != null) iu.setCopyright(MetadataFactory.createCopyright(toURIOrNull(feature.getCopyrightURL()), feature.getCopyright())); if (feature.getApplication() != null) iu.setProperty(UPDATE_FEATURE_APPLICATION_PROP, feature.getApplication()); if (feature.getBrandingPlugin() != null) iu.setProperty(UPDATE_FEATURE_PLUGIN_PROP, feature.getBrandingPlugin()); if (feature.isExclusive()) iu.setProperty(UPDATE_FEATURE_EXCLUSIVE_PROP, Boolean.TRUE.toString()); if (feature.isPrimary()) iu.setProperty(UPDATE_FEATURE_PRIMARY_PROP, Boolean.TRUE.toString()); iu.setTouchpointType(PublisherHelper.TOUCHPOINT_OSGI); iu.setFilter(INSTALL_FEATURES_FILTER); iu.setSingleton(true);
protected IInstallableUnit createGroupIU(Feature feature, List<IInstallableUnit> childIUs, IPublisherInfo publisherInfo) { if (isPatch(feature)) return createPatchIU(feature, childIUs, publisherInfo); InstallableUnitDescription iu = new MetadataFactory.InstallableUnitDescription(); String id = getGroupId(feature.getId()); iu.setId(id); Version version = PublisherHelper.fromOSGiVersion(new org.osgi.framework.Version(feature.getVersion())); iu.setVersion(version); iu.setProperty(IInstallableUnit.PROP_NAME, feature.getLabel()); if (feature.getDescription() != null) iu.setProperty(IInstallableUnit.PROP_DESCRIPTION, feature.getDescription()); if (feature.getDescriptionURL() != null) iu.setProperty(IInstallableUnit.PROP_DESCRIPTION_URL, feature.getDescriptionURL()); if (feature.getProviderName() != null) iu.setProperty(IInstallableUnit.PROP_PROVIDER, feature.getProviderName()); if (feature.getLicense() != null) iu.setLicenses(new ILicense[] {MetadataFactory.createLicense(toURIOrNull(feature.getLicenseURL()), feature.getLicense())}); if (feature.getCopyright() != null) iu.setCopyright(MetadataFactory.createCopyright(toURIOrNull(feature.getCopyrightURL()), feature.getCopyright())); iu.setUpdateDescriptor(MetadataFactory.createUpdateDescriptor(id, BundlesAction.computeUpdateRange(new org.osgi.framework.Version(feature.getVersion())), IUpdateDescriptor.NORMAL, null)); iu.setRequirements(required.toArray(new IRequirement[required.size()])); iu.setTouchpointType(ITouchpointType.NONE); iu.setProperty(InstallableUnitDescription.PROP_TYPE_GROUP, Boolean.TRUE.toString()); processTouchpointAdvice(iu, null, publisherInfo); processInstallableUnitPropertiesAdvice(iu, publisherInfo); iu.setFilter(getFilter(entry));
((InstallableUnitPatchDescription) currentUnit).setLifeCycle(lifeCycleHandler.getLifeCycleRequirement()); } else if (hostRequiredCapabilitiesHandler == null || hostRequiredCapabilitiesHandler.getHostRequiredCapabilities().length == 0) { currentUnit = new InstallableUnitDescription(); } else { currentUnit = new MetadataFactory.InstallableUnitFragmentDescription(); ((InstallableUnitFragmentDescription) currentUnit).setHost(hostRequiredCapabilitiesHandler.getHostRequiredCapabilities()); currentUnit.setId(id); currentUnit.setVersion(version); currentUnit.setSingleton(singleton); OrderedProperties properties = (propertiesHandler == null ? new OrderedProperties(0) : propertiesHandler.getProperties()); String updateFrom = null; currentUnit.setProperty(key, value); currentUnit.setUpdateDescriptor(MetadataFactory.createUpdateDescriptor(updateFrom, updateRange, IUpdateDescriptor.NORMAL, null)); currentUnit.setLicenses(licensesHandler.getLicenses()); currentUnit.setCopyright(copyright); currentUnit.setCapabilities(providedCapabilities); IRequirement[] requiredCapabilities = (requiredCapabilitiesHandler == null ? new IRequirement[0] : requiredCapabilitiesHandler.getRequiredCapabilities()); currentUnit.setRequirements(requiredCapabilities); IRequirement[] metaRequiredCapabilities = (metaRequiredCapabilitiesHandler == null ? new IRequirement[0] : metaRequiredCapabilitiesHandler.getMetaRequiredCapabilities()); currentUnit.setMetaRequirements(metaRequiredCapabilities); if (filterHandler != null) { currentUnit.setFilter(filterHandler.getText());
protected IInstallableUnit createGroupIU(Feature feature, List<IInstallableUnit> childIUs, IPublisherInfo publisherInfo) { if (isPatch(feature)) return createPatchIU(feature, childIUs, publisherInfo); InstallableUnitDescription iu = new MetadataFactory.InstallableUnitDescription(); String id = getGroupId(feature.getId()); iu.setId(id); Version version = PublisherHelper.fromOSGiVersion(new org.osgi.framework.Version(feature.getVersion())); iu.setVersion(version); iu.setProperty(IInstallableUnit.PROP_NAME, feature.getLabel()); if (feature.getDescription() != null) iu.setProperty(IInstallableUnit.PROP_DESCRIPTION, feature.getDescription()); if (feature.getDescriptionURL() != null) iu.setProperty(IInstallableUnit.PROP_DESCRIPTION_URL, feature.getDescriptionURL()); if (feature.getProviderName() != null) iu.setProperty(IInstallableUnit.PROP_PROVIDER, feature.getProviderName()); if (feature.getLicense() != null) iu.setLicenses(new ILicense[] {MetadataFactory.createLicense(toURIOrNull(feature.getLicenseURL()), feature.getLicense())}); if (feature.getCopyright() != null) iu.setCopyright(MetadataFactory.createCopyright(toURIOrNull(feature.getCopyrightURL()), feature.getCopyright())); iu.setUpdateDescriptor(MetadataFactory.createUpdateDescriptor(id, BundlesAction.computeUpdateRange(new org.osgi.framework.Version(feature.getVersion())), IUpdateDescriptor.NORMAL, null)); iu.setRequirements(required.toArray(new IRequirement[required.size()])); iu.setTouchpointType(ITouchpointType.NONE); iu.setProperty(InstallableUnitDescription.PROP_TYPE_GROUP, Boolean.TRUE.toString()); processTouchpointAdvice(iu, null, publisherInfo); processInstallableUnitPropertiesAdvice(iu, publisherInfo); iu.setFilter(getFilter(entry));
public static IInstallableUnit createFeatureJarIU(Feature feature, IPublisherInfo info) { InstallableUnitDescription iu = new MetadataFactory.InstallableUnitDescription(); String id = getTransformedId(feature.getId(), /*isPlugin*/false, /*isGroup*/false); iu.setId(id); Version version = Version.parseVersion(feature.getVersion()); iu.setVersion(version); iu.setProperty(IInstallableUnit.PROP_NAME, feature.getLabel()); if (feature.getDescription() != null) iu.setProperty(IInstallableUnit.PROP_DESCRIPTION, feature.getDescription()); if (feature.getDescriptionURL() != null) iu.setProperty(IInstallableUnit.PROP_DESCRIPTION_URL, feature.getDescriptionURL()); if (feature.getProviderName() != null) iu.setProperty(IInstallableUnit.PROP_PROVIDER, feature.getProviderName()); if (feature.getLicense() != null) iu.setLicenses(new ILicense[] {MetadataFactory.createLicense(toURIOrNull(feature.getLicenseURL()), feature.getLicense())}); if (feature.getCopyright() != null) iu.setCopyright(MetadataFactory.createCopyright(toURIOrNull(feature.getCopyrightURL()), feature.getCopyright())); if (feature.getApplication() != null) iu.setProperty(UPDATE_FEATURE_APPLICATION_PROP, feature.getApplication()); if (feature.getBrandingPlugin() != null) iu.setProperty(UPDATE_FEATURE_PLUGIN_PROP, feature.getBrandingPlugin()); if (feature.isExclusive()) iu.setProperty(UPDATE_FEATURE_EXCLUSIVE_PROP, Boolean.TRUE.toString()); if (feature.isPrimary()) iu.setProperty(UPDATE_FEATURE_PRIMARY_PROP, Boolean.TRUE.toString()); iu.setTouchpointType(PublisherHelper.TOUCHPOINT_OSGI); iu.setFilter(INSTALL_FEATURES_FILTER); iu.setSingleton(true);
public static IInstallableUnit createFeatureJarIU(Feature feature, IPublisherInfo info) { InstallableUnitDescription iu = new MetadataFactory.InstallableUnitDescription(); String id = getTransformedId(feature.getId(), /*isPlugin*/false, /*isGroup*/false); iu.setId(id); Version version = Version.parseVersion(feature.getVersion()); iu.setVersion(version); iu.setProperty(IInstallableUnit.PROP_NAME, feature.getLabel()); if (feature.getDescription() != null) iu.setProperty(IInstallableUnit.PROP_DESCRIPTION, feature.getDescription()); if (feature.getDescriptionURL() != null) iu.setProperty(IInstallableUnit.PROP_DESCRIPTION_URL, feature.getDescriptionURL()); if (feature.getProviderName() != null) iu.setProperty(IInstallableUnit.PROP_PROVIDER, feature.getProviderName()); if (feature.getLicense() != null) iu.setLicenses(new ILicense[] {MetadataFactory.createLicense(toURIOrNull(feature.getLicenseURL()), feature.getLicense())}); if (feature.getCopyright() != null) iu.setCopyright(MetadataFactory.createCopyright(toURIOrNull(feature.getCopyrightURL()), feature.getCopyright())); if (feature.getApplication() != null) iu.setProperty(UPDATE_FEATURE_APPLICATION_PROP, feature.getApplication()); if (feature.getBrandingPlugin() != null) iu.setProperty(UPDATE_FEATURE_PLUGIN_PROP, feature.getBrandingPlugin()); if (feature.isExclusive()) iu.setProperty(UPDATE_FEATURE_EXCLUSIVE_PROP, Boolean.TRUE.toString()); if (feature.isPrimary()) iu.setProperty(UPDATE_FEATURE_PRIMARY_PROP, Boolean.TRUE.toString()); iu.setTouchpointType(PublisherHelper.TOUCHPOINT_OSGI); iu.setFilter(INSTALL_FEATURES_FILTER); iu.setSingleton(true);