Consumer.java 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. package model;
  2. import java.util.ArrayList;
  3. import classes.HolonObject;
  4. public class Consumer extends DecoratedHolonObject {
  5. private ArrayList<SupplierListEntry> supplierList = new ArrayList<SupplierListEntry>();
  6. private float energyFromNetwork;
  7. private float minimumConsumingElementEnergy;
  8. private float energyNeededFromNetwork;
  9. private float energyFromConsumingElemnets;
  10. private float energySelfSupplied;
  11. public Consumer(HolonObject objectToLookAt) {
  12. super(objectToLookAt);
  13. energyNeededFromNetwork = 0.0f;
  14. }
  15. @Override
  16. float getEnergy() {
  17. return energyFromNetwork-energyNeededFromNetwork;
  18. }
  19. public float getEnergyFromNetwork() {
  20. return energyFromNetwork;
  21. }
  22. public void setEnergyFromNetwork(float energyFromNetwork) {
  23. this.energyFromNetwork = energyFromNetwork;
  24. }
  25. public float getMinimumConsumingElementEnergy() {
  26. return minimumConsumingElementEnergy;
  27. }
  28. public void setMinimumConsumingElementEnergy(float minimumConsumingElementEnergy) {
  29. this.minimumConsumingElementEnergy = minimumConsumingElementEnergy;
  30. }
  31. public ArrayList<SupplierListEntry> getSupplierList() {
  32. return supplierList;
  33. }
  34. public void setSupplierList(ArrayList<SupplierListEntry> supplierList) {
  35. this.supplierList = supplierList;
  36. }
  37. public float getEnergyNeededFromNetwork() {
  38. return energyNeededFromNetwork;
  39. }
  40. public void setEnergyNeededFromNetwork(float energyNeededFromNetwork) {
  41. this.energyNeededFromNetwork = energyNeededFromNetwork;
  42. }
  43. @Override
  44. public String toString() {
  45. return getModel().getName() + ":" + getModel().getId() + ", Energy: "+ getEnergy() +
  46. " [" + (energyFromNetwork + energySelfSupplied) +"/" + energyFromConsumingElemnets +"]";
  47. }
  48. public float getEnergyFromConsumingElemnets() {
  49. return energyFromConsumingElemnets;
  50. }
  51. public void setEnergyFromConsumingElemnets(float energyFromConsumingElemnets) {
  52. this.energyFromConsumingElemnets = energyFromConsumingElemnets;
  53. }
  54. public float getEnergySelfSupplied() {
  55. return energySelfSupplied;
  56. }
  57. public float getSupplyBarPercentage() {
  58. // double test = (getEnergyFromConsumingElemnets() > 0.001) ? (getEnergyFromNetwork()+ this.getEnergySelfSupplied())/getEnergyFromConsumingElemnets() : 1.0f;
  59. // System.out.println("SupplyBar = [" +getEnergyFromConsumingElemnets() + "] is " + test);
  60. // return (float) test;
  61. return (getEnergyFromConsumingElemnets() > 0.001) ? (getEnergyFromNetwork()+ this.getEnergySelfSupplied())/getEnergyFromConsumingElemnets() : 1.0f;
  62. }
  63. public void setEnergySelfSupplied(float energySelfSupplied) {
  64. this.energySelfSupplied = energySelfSupplied;
  65. }
  66. public class SupplierListEntry{
  67. public Supplier supplier;
  68. public float energyFromSupplier;
  69. public SupplierListEntry(Supplier supplier,float energyFromSupplier) {
  70. this.supplier = supplier;
  71. this.energyFromSupplier = energyFromSupplier;
  72. }
  73. }
  74. }