1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
|
/**
* efface la liste des features non utilisées
*/
private static void deleteLocalDisabledFeatures(){
ProgressMonitorDialog pgmD = new ProgressMonitorDialog(Display.getCurrent().getActiveShell());
try {
pgmD.run(false, false, new IRunnableWithProgress(){
public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException {
ILocalSite ls;
try {
ls = SiteManager.getLocalSite();
final IConfiguredSite ics = ls.getCurrentConfiguration().getConfiguredSites()[0];
final IFeatureReference[] lfrs = ics.getFeatureReferences();
for(int i = 0 ; i < lfrs.length ; i++) {
IFeatureReference feature = lfrs[i];
if (ls.getFeatureStatus(feature.getFeature()).getCode() == IFeature.STATUS_DISABLED) {
System.out.println("Suppresion de la fonctionnalité " + feature.getVersionedIdentifier().getIdentifier()
+ " " + feature.getVersionedIdentifier().getVersion().toString());
MessageTools.flashMessage("Removing : " + feature.getVersionedIdentifier().getIdentifier()
+ " " + feature.getVersionedIdentifier().getVersion().toString(),2000);
feature.getSite().remove(feature.getFeature(), monitor);
}
}
ls.save();
} catch (CoreException e) {
MessageTools.flashMessage("erreur lors de la suppression de la fonctionnalité : " + e,6000);
e.printStackTrace();
}
}});
} catch (InvocationTargetException e) {
// TODO Bloc catch auto-généré
e.printStackTrace();
} catch (InterruptedException e) {
// TODO Bloc catch auto-généré
e.printStackTrace();
}
} |
Partager