private boolean canAdd(IFeatureModel candidate) { ISiteFeature[] features = fModel.getSite().getFeatures(); IFeature cfeature = candidate.getFeature(); for (int i = 0; i < features.length; i++) { ISiteFeature bfeature = features[i]; if (bfeature.getId().equals(cfeature.getId()) && bfeature.getVersion().equals(cfeature.getVersion())) return false; } return true; }
private static boolean isFeaturePatch(IFeature feature) { IFeatureImport[] imports = feature.getImports(); for (int i = 0; i < imports.length; i++) { if (imports[i].isPatch()) return true; } return false; }
public static ISiteFeature createSiteFeature(ISiteModel model, IFeatureModel featureModel) throws CoreException { IFeature feature = featureModel.getFeature(); ISiteFeature sfeature = model.getFactory().createFeature(); sfeature.setId(feature.getId()); sfeature.setVersion(feature.getVersion()); // sfeature.setURL(model.getBuildModel().getSiteBuild().getFeatureLocation() // + "/" + feature.getId() + "_" + feature.getVersion() + ".jar"); // //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ sfeature.setURL( "features/" + feature.getId() + "_" + formatVersion(feature.getVersion()) + ".jar"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ sfeature.setOS(feature.getOS()); sfeature.setWS(feature.getWS()); sfeature.setArch(feature.getArch()); sfeature.setNL(feature.getNL()); sfeature.setIsPatch(isFeaturePatch(feature)); return sfeature; }