package ui.model; import java.util.ArrayList; import classes.HolonObject; public class Consumer extends DecoratedHolonObject { private ArrayList supplierList = new ArrayList(); private float energyFromNetwork; private float minimumConsumingElementEnergy; private float energyNeededFromNetwork; private float energyFromConsumingElemnets; private float energySelfSupplied; private double powerFactor; private boolean isSlack; public Consumer(HolonObject objectToLookAt, float energyNeededFromNetwork, double voltage, double phaseDegrees, double powerFactor, boolean isSlack) { super(objectToLookAt); this.energyNeededFromNetwork = energyNeededFromNetwork; this.setVoltage(voltage); this.setPhaseDegrees(phaseDegrees); this.powerFactor = powerFactor; this.isSlack = isSlack; } @Override float getEnergy() { return energyFromNetwork-energyNeededFromNetwork; } public float getEnergyFromNetwork() { return energyFromNetwork; } public void setEnergyFromNetwork(float energyFromNetwork) { this.energyFromNetwork = energyFromNetwork; } public float getMinimumConsumingElementEnergy() { return minimumConsumingElementEnergy; } public void setMinimumConsumingElementEnergy(float minimumConsumingElementEnergy) { this.minimumConsumingElementEnergy = minimumConsumingElementEnergy; } public ArrayList getSupplierList() { return supplierList; } public void setSupplierList(ArrayList supplierList) { this.supplierList = supplierList; } public float getEnergyNeededFromNetwork() { return energyNeededFromNetwork; } public void setEnergyNeededFromNetwork(float energyNeededFromNetwork) { this.energyNeededFromNetwork = energyNeededFromNetwork; } @Override public String toString() { return getModel().getName() + ":" + getModel().getId() + ", Energy: "+ getEnergy() + " [" + (energyFromNetwork + energySelfSupplied) +"/" + energyFromConsumingElemnets +"]"; } public float getEnergyFromConsumingElemnets() { return energyFromConsumingElemnets; } public void setEnergyFromConsumingElemnets(float energyFromConsumingElemnets) { this.energyFromConsumingElemnets = energyFromConsumingElemnets; } public float getEnergySelfSupplied() { return energySelfSupplied; } public float getSupplyBarPercentage() { // double test = (getEnergyFromConsumingElemnets() > 0.001) ? (getEnergyFromNetwork()+ this.getEnergySelfSupplied())/getEnergyFromConsumingElemnets() : 1.0f; // System.out.println("SupplyBar = [" +getEnergyFromConsumingElemnets() + "] is " + test); // return (float) test; return (getEnergyFromConsumingElemnets() > 0.001) ? (getEnergyFromNetwork()+ this.getEnergySelfSupplied())/getEnergyFromConsumingElemnets() : 1.0f; } public void setEnergySelfSupplied(float energySelfSupplied) { this.energySelfSupplied = energySelfSupplied; } public class SupplierListEntry{ public Supplier supplier; public float energyFromSupplier; public SupplierListEntry(Supplier supplier,float energyFromSupplier) { this.supplier = supplier; this.energyFromSupplier = energyFromSupplier; } } public boolean isSlack() { return isSlack; } public double getPowerFactor() { return powerFactor; } }