|
@@ -10,6 +10,8 @@ import classes.comparator.elementComparator.ElemCompOnIsFlexible;
|
|
|
import classes.comparator.elementComparator.ElemCompOnObj;
|
|
|
import classes.comparator.elementComparator.ElemCompOnQuantity;
|
|
|
import classes.comparator.elementComparator.ElementComparator;
|
|
|
+import ui.model.DecoratedGroupNode;
|
|
|
+import ui.model.DecoratedHolonObject.HolonObjectState;
|
|
|
import ui.model.Model;
|
|
|
import ui.view.DefaulTable;
|
|
|
import ui.view.Languages;
|
|
@@ -329,6 +331,8 @@ public class UpdateController {
|
|
|
} else if (obj instanceof CpsUpperNode) {
|
|
|
deleteRows(model.getSingleTable());
|
|
|
deleteRows(model.getMultiTable());
|
|
|
+ //short fix please make me new
|
|
|
+ DecoratedGroupNode dGroupNode = controller.getSimManager().getVisualRepresentationalState(model.getCurIteration()).getCreatedGroupNodes().get((CpsUpperNode) obj);
|
|
|
Object[] numEle = { "Number of Elements", ((CpsUpperNode) obj).getNodes().size() };
|
|
|
Object[] numObj = { "Number of HolonObject", ((CpsUpperNode) obj).getNumHolonObj().size() };
|
|
|
Object[] numSwi = { "Number of HolonSwitch", ((CpsUpperNode) obj).getNumSwitches().size() };
|
|
@@ -337,6 +341,45 @@ public class UpdateController {
|
|
|
model.getPropertyTable().addRow(numObj);
|
|
|
model.getPropertyTable().addRow(numSwi);
|
|
|
model.getPropertyTable().addRow(numUpp);
|
|
|
+ if(dGroupNode != null) {
|
|
|
+ int numerator, denominator;
|
|
|
+ Object[] title = { "HolonObjectsInformations:", "" };
|
|
|
+
|
|
|
+ denominator = dGroupNode.getAmountOfConsumer() + dGroupNode.getAmountOfSupplier() + dGroupNode.getAmountOfPassiv();
|
|
|
+
|
|
|
+ numerator = dGroupNode.getAmountOfSupplier();
|
|
|
+ Object[] producer = { "Producer(%):", numerator + "/" + denominator + "("+ (float)numerator/(float)denominator * 100 + "%)"};
|
|
|
+ numerator = dGroupNode.getAmountOfConsumerWithState(HolonObjectState.NOT_SUPPLIED);
|
|
|
+ Object[] notSupplied = { "NotSupplied(%):", numerator + "/" + denominator + "("+ (float)numerator/(float)denominator * 100 + "%)"};
|
|
|
+ numerator = dGroupNode.getAmountOfConsumerWithState(HolonObjectState.PARTIALLY_SUPPLIED);
|
|
|
+ Object[] partiallySupplied = { "PartriallySupplied(%):", numerator + "/" + denominator + "("+ (float)numerator/(float)denominator * 100 + "%)"};
|
|
|
+ numerator = dGroupNode.getAmountOfConsumerWithState(HolonObjectState.SUPPLIED);
|
|
|
+ Object[] supplied = { "Supplied(%):", numerator + "/" + denominator + "("+ (float)numerator/(float)denominator * 100 + "%)"};
|
|
|
+ numerator = dGroupNode.getAmountOfConsumerWithState(HolonObjectState.OVER_SUPPLIED);
|
|
|
+ Object[] overSupplied = { "OverSupplied(%):", numerator + "/" + denominator + "("+ (float)numerator/(float)denominator * 100 + "%)"};
|
|
|
+ numerator = dGroupNode.getAmountOfPassiv();
|
|
|
+ Object[] passiv = { "Passiv(%):", numerator + "/" + denominator + "("+ (float)numerator/(float)denominator * 100 + "%)"};
|
|
|
+
|
|
|
+ numerator = dGroupNode.getPassivList().stream().map(object -> object.getModel().getNumberOfActiveElements()).reduce(0, (a, b) -> a + b)+
|
|
|
+ dGroupNode.getSupplierList().stream().map(object -> object.getModel().getNumberOfActiveElements()).reduce(0, (a, b) -> a + b)+
|
|
|
+ dGroupNode.getConsumerList().stream().map(object -> object.getModel().getNumberOfActiveElements()).reduce(0, (a, b) -> a + b);
|
|
|
+ denominator = dGroupNode.getPassivList().stream().map(object -> object.getModel().getElements().size()).reduce(0, (a, b) -> a + b)+
|
|
|
+ dGroupNode.getSupplierList().stream().map(object -> object.getModel().getElements().size()).reduce(0, (a, b) -> a + b)+
|
|
|
+ dGroupNode.getConsumerList().stream().map(object -> object.getModel().getElements().size()).reduce(0, (a, b) -> a + b);
|
|
|
+ Object[] aktiv = { "AktivHolonElemnts(%):", numerator + "/" + denominator + "("+ (float)numerator/(float)denominator * 100 + "%)"};
|
|
|
+
|
|
|
+ Object[] nothing= {"", ""};
|
|
|
+ model.getPropertyTable().addRow(title);
|
|
|
+ model.getPropertyTable().addRow(producer);
|
|
|
+ model.getPropertyTable().addRow(notSupplied);
|
|
|
+ model.getPropertyTable().addRow(partiallySupplied);
|
|
|
+ model.getPropertyTable().addRow(supplied);
|
|
|
+ model.getPropertyTable().addRow(overSupplied);
|
|
|
+ model.getPropertyTable().addRow(passiv);
|
|
|
+ model.getPropertyTable().addRow(nothing);
|
|
|
+ model.getPropertyTable().addRow(aktiv);
|
|
|
+ }
|
|
|
+
|
|
|
} else if (obj instanceof HolonBattery) {
|
|
|
deleteRows(model.getSingleTable());
|
|
|
deleteRows(model.getMultiTable());
|