From abf86a5c16340339fd259527fa99e9135e9d71e0 Mon Sep 17 00:00:00 2001 From: "Dott. Federico Volpini" <federico.volpini@isti.cnr.it> Date: Mon, 7 Oct 2013 10:02:15 +0000 Subject: [PATCH] Added progress monitor percentage (%) - Feature request #325 --- .../tools/packaging/tool/gui/GUI.java | 182 ++++++++++-------- .../tools/packaging/tool/gui/Page4.java | 1 + .../tools/packaging/tool/gui/PagePartPR.java | 2 + .../tools/packaging/tool/impl/PageImpl.java | 16 +- 4 files changed, 124 insertions(+), 77 deletions(-) diff --git a/mpa/org.universaal.tools.packaging.tool/src/org/universaal/tools/packaging/tool/gui/GUI.java b/mpa/org.universaal.tools.packaging.tool/src/org/universaal/tools/packaging/tool/gui/GUI.java index a60a53a96..e4e97b2a8 100644 --- a/mpa/org.universaal.tools.packaging.tool/src/org/universaal/tools/packaging/tool/gui/GUI.java +++ b/mpa/org.universaal.tools.packaging.tool/src/org/universaal/tools/packaging/tool/gui/GUI.java @@ -230,88 +230,120 @@ public class GUI extends WizardMod { } @Override - public void addPages() { + public void addPages(){ + addPages(false); + addPages(true); + } + + public void addPages(boolean percentage) { if(this.parts != null){ - if(parts.size() > 1) - mpa.getAAL_UAPP().getApplication().setMultipart(true); - else - mpa.getAAL_UAPP().getApplication().setMultipart(false); - - createTempContainer(); - genEffectivePom(this.parts); - if(!recovered) loadDataFromManPOM(); + if(!percentage){ + if(parts.size() > 1) + mpa.getAAL_UAPP().getApplication().setMultipart(true); + else + mpa.getAAL_UAPP().getApplication().setMultipart(false); + + createTempContainer(); + genEffectivePom(this.parts); + if(!recovered) loadDataFromManPOM(); - p0 = new StartPage(Page.PAGE_START); - addPage(p0); - p0.setMPA(mpa); + p0 = new StartPage(Page.PAGE_START); + addPage(p0); + p0.setMPA(mpa); + + p1 = new Page1(Page.PAGE1); + addPage(p1); + p1.setMPA(mpa); + + p2 = new Page2(Page.PAGE2); + addPage(p2); + p2.setMPA(mpa); + + pdu = new PageDU(Page.PAGE_DU); + addPage(pdu); + pdu.setMPA(mpa); - p1 = new Page1(Page.PAGE1); - addPage(p1); - p1.setMPA(mpa); - - p2 = new Page2(Page.PAGE2); - addPage(p2); - p2.setMPA(mpa); - - pdu = new PageDU(Page.PAGE_DU); - addPage(pdu); - pdu.setMPA(mpa); - - par = new PageAppResources(Page.PAGE_APP_RESOURCES); - addPage(par); - par.setMPA(mpa); - - pl = new PageLicenses(Page.PAGE_LICENSE); - addPage(pl); - pl.setMPA(mpa); - - p3 = new Page3(Page.PAGE3); - addPage(p3); - p3.setMPA(mpa); - - p4 = new Page4(Page.PAGE4, 0, null, null); - addPage(p4); - p4.setMPA(mpa); - - p5 = new Page5(Page.PAGE5); - addPage(p5); - p5.setMPA(mpa); - - for(int i = 0; i < parts.size(); i++){ - - String partName = parts.get(i).getName(); + par = new PageAppResources(Page.PAGE_APP_RESOURCES); + addPage(par); + par.setMPA(mpa); + + pl = new PageLicenses(Page.PAGE_LICENSE); + addPage(pl); + pl.setMPA(mpa); + + p3 = new Page3(Page.PAGE3); + addPage(p3); + p3.setMPA(mpa); + + p4 = new Page4(Page.PAGE4, 0, null, null); + addPage(p4); + p4.setMPA(mpa); + + p5 = new Page5(Page.PAGE5); + addPage(p5); + p5.setMPA(mpa); + + for(int i = 0; i < parts.size(); i++){ + + String partName = parts.get(i).getName(); + + ppB = new PagePartBundle(Page.PAGE_PART_BUNDLE+partName, i); //deployment units + addPage(ppB); + ppB.setMPA(mpa); + ppB.setArtifact(parts.get(i)); + + ppDU = new PagePartDU(Page.PAGE_PART_DU+partName, i); //deployment units + addPage(ppDU); + ppDU.setMPA(mpa); + ppDU.setArtifact(parts.get(i)); + + ppEU = new PagePartEU(Page.PAGE_PART_EU+partName, i); // execution units + addPage(ppEU); + ppEU.setMPA(mpa); + ppEU.setArtifact(parts.get(i)); + + ppPC = new PagePartPC(Page.PAGE_PART_PC+partName, i); // part capabilities + addPage(ppPC); + ppPC.setMPA(mpa); + ppPC.setArtifact(parts.get(i)); + + ppPR = new PagePartPR(Page.PAGE_PART_PR+partName, i, 0, null, null); // part requirements + addPage(ppPR); + ppPR.setMPA(mpa); + ppPR.setArtifact(parts.get(i)); + } + + p_end = new EndPage(Page.PAGE_END); + addPage(p_end); + p_end.setMPA(mpa); + addingPermanentStorageDecorator(); + } else { + p0.setPercentage((double)getPageNumber(getPage(Page.PAGE_START))/(double)getPageCount()); + p1.setPercentage((double)getPageNumber(getPage(Page.PAGE1))/(double)getPageCount()); + p2.setPercentage((double)getPageNumber(getPage(Page.PAGE2))/(double)getPageCount()); + pdu.setPercentage((double)getPageNumber(getPage(Page.PAGE_DU))/(double)getPageCount()); + par.setPercentage((double)getPageNumber(getPage(Page.PAGE_APP_RESOURCES))/(double)getPageCount()); + pl.setPercentage((double)getPageNumber(getPage(Page.PAGE_LICENSE))/(double)getPageCount()); + p3.setPercentage((double)getPageNumber(getPage(Page.PAGE3))/(double)getPageCount()); + p4.setPercentage((double)getPageNumber(getPage(Page.PAGE4))/(double)getPageCount()); + p5.setPercentage((double)getPageNumber(getPage(Page.PAGE5))/(double)getPageCount()); - ppB = new PagePartBundle(Page.PAGE_PART_BUNDLE+partName, i); //deployment units - addPage(ppB); - ppB.setMPA(mpa); - ppB.setArtifact(parts.get(i)); - - ppDU = new PagePartDU(Page.PAGE_PART_DU+partName, i); //deployment units - addPage(ppDU); - ppDU.setMPA(mpa); - ppDU.setArtifact(parts.get(i)); + for(int i = 0; i < parts.size(); i++){ + + String partName = parts.get(i).getName(); + + ppB.setPercentage((double)getPageNumber(getPage(Page.PAGE_PART_BUNDLE+partName))/(double)getPageCount()); + ppDU.setPercentage((double)getPageNumber(getPage(Page.PAGE_PART_DU+partName))/(double)getPageCount()); + ppEU.setPercentage((double)getPageNumber(getPage(Page.PAGE_PART_EU+partName))/(double)getPageCount()); + ppPC.setPercentage((double)getPageNumber(getPage(Page.PAGE_PART_PC+partName))/(double)getPageCount()); + ppPR.setPercentage((double)getPageNumber(getPage(Page.PAGE_PART_PR+partName))/(double)getPageCount()); + } + + p_end.setPercentage(100); - ppEU = new PagePartEU(Page.PAGE_PART_EU+partName, i); // execution units - addPage(ppEU); - ppEU.setMPA(mpa); - ppEU.setArtifact(parts.get(i)); - - ppPC = new PagePartPC(Page.PAGE_PART_PC+partName, i); // part capabilities - addPage(ppPC); - ppPC.setMPA(mpa); - ppPC.setArtifact(parts.get(i)); - - ppPR = new PagePartPR(Page.PAGE_PART_PR+partName, i, 0, null, null); // part requirements - addPage(ppPR); - ppPR.setMPA(mpa); - ppPR.setArtifact(parts.get(i)); } - - p_end = new EndPage(Page.PAGE_END); - addPage(p_end); - p_end.setMPA(mpa); - addingPermanentStorageDecorator(); + } else{ p = new ErrorPage(Page.PAGE_ERROR); diff --git a/mpa/org.universaal.tools.packaging.tool/src/org/universaal/tools/packaging/tool/gui/Page4.java b/mpa/org.universaal.tools.packaging.tool/src/org/universaal/tools/packaging/tool/gui/Page4.java index 05e635cc4..6d3c7fc69 100644 --- a/mpa/org.universaal.tools.packaging.tool/src/org/universaal/tools/packaging/tool/gui/Page4.java +++ b/mpa/org.universaal.tools.packaging.tool/src/org/universaal/tools/packaging/tool/gui/Page4.java @@ -502,6 +502,7 @@ public class Page4 extends PageImpl { new SingleRequirement(req5.getText(), val5.getText(), LogicalCriteria.valueOf(c5.getText()))); p_req.setMPA(multipartApplication); + p_req.setPercentage(this.getPercentage()); addPageCustom(this, p_req); } diff --git a/mpa/org.universaal.tools.packaging.tool/src/org/universaal/tools/packaging/tool/gui/PagePartPR.java b/mpa/org.universaal.tools.packaging.tool/src/org/universaal/tools/packaging/tool/gui/PagePartPR.java index a429fc1db..c191161c1 100644 --- a/mpa/org.universaal.tools.packaging.tool/src/org/universaal/tools/packaging/tool/gui/PagePartPR.java +++ b/mpa/org.universaal.tools.packaging.tool/src/org/universaal/tools/packaging/tool/gui/PagePartPR.java @@ -488,6 +488,8 @@ public class PagePartPR extends PageImpl { new SingleRequirement(req5.getText(), val5.getText(), LogicalCriteria.valueOf(c5.getText()))); p_req.setMPA(multipartApplication); + p_req.setPercentage(this.getPercentage()); + addPageCustom(this, p_req); //otherPartReqs.set(partNumber, index+1); diff --git a/mpa/org.universaal.tools.packaging.tool/src/org/universaal/tools/packaging/tool/impl/PageImpl.java b/mpa/org.universaal.tools.packaging.tool/src/org/universaal/tools/packaging/tool/impl/PageImpl.java index ecbd5fbc6..af3fe07e6 100644 --- a/mpa/org.universaal.tools.packaging.tool/src/org/universaal/tools/packaging/tool/impl/PageImpl.java +++ b/mpa/org.universaal.tools.packaging.tool/src/org/universaal/tools/packaging/tool/impl/PageImpl.java @@ -62,12 +62,15 @@ public abstract class PageImpl extends WizardPageMod implements Page { protected static int otherGeneralReqs = 1; // protected static List<Integer> otherPartReqs; protected static int otherPartReqs = 1; - + private String description = ""; + private double percentage; + protected PageImpl(String pageName, String description){ super(pageName); - setDescription(description); setTitle(pageName); + setDescription(description); + this.description = description; // otherPartReqs = new ArrayList<Integer>(); @@ -203,4 +206,13 @@ public abstract class PageImpl extends WizardPageMod implements Page { } serializeMPA(); } + + public void setPercentage(double percentage){ + percentage = percentage * 100.0; + setDescription(description + " - Complete: "+(int)percentage+"%"); + } + + public double getPercentage(){ + return percentage; + } } \ No newline at end of file -- GitLab