Index: DCWoRMS/branches/coolemall/src/example/energy/ProcessorEnergyEstimationPlugin.java
===================================================================
--- DCWoRMS/branches/coolemall/src/example/energy/ProcessorEnergyEstimationPlugin.java	(revision 1207)
+++ DCWoRMS/branches/coolemall/src/example/energy/ProcessorEnergyEstimationPlugin.java	(revision 1415)
@@ -3,5 +3,5 @@
 import schedframe.resources.ResourceStatus;
 import schedframe.resources.computing.Processor;
-import schedframe.resources.computing.profiles.energy.EnergyEvent;
+import schedframe.resources.computing.profiles.energy.ResourceEvent;
 import schedframe.resources.computing.profiles.energy.power.StandardPowerStateName;
 import schedframe.resources.devices.PhysicalResource;
@@ -10,5 +10,5 @@
 public class ProcessorEnergyEstimationPlugin extends BaseEnergyEstimationPlugin  {
 
-	public double estimatePowerConsumption(EnergyEvent event, JobRegistry jobRegistry,
+	public double estimatePowerConsumption(ResourceEvent event, JobRegistry jobRegistry,
 			PhysicalResource resource) {
 		double powerConsumption;
@@ -42,4 +42,7 @@
 			
 		}
+		if(cpu.getLoadInterface().getRecentUtilization().getValue() != 0.0){
+			powerConsumption = powerConsumption * cpu.getLoadInterface().getRecentUtilization().getValue()/100;			
+		}
 		return powerConsumption;
 	}
Index: DCWoRMS/branches/coolemall/src/example/energy/coolemall/NodeGroupEnergyEstimationPlugin.java
===================================================================
--- DCWoRMS/branches/coolemall/src/example/energy/coolemall/NodeGroupEnergyEstimationPlugin.java	(revision 1247)
+++ DCWoRMS/branches/coolemall/src/example/energy/coolemall/NodeGroupEnergyEstimationPlugin.java	(revision 1415)
@@ -3,5 +3,5 @@
 import schedframe.resources.computing.Node;
 import schedframe.resources.computing.coolemall.NodeGroup;
-import schedframe.resources.computing.profiles.energy.EnergyEvent;
+import schedframe.resources.computing.profiles.energy.ResourceEvent;
 import schedframe.resources.devices.PhysicalResource;
 import schedframe.scheduling.manager.tasks.JobRegistry;
@@ -10,5 +10,5 @@
 public class NodeGroupEnergyEstimationPlugin extends BaseEnergyEstimationPlugin{
 
-	public double estimatePowerConsumption(EnergyEvent event, JobRegistry jobRegistry,
+	public double estimatePowerConsumption(ResourceEvent event, JobRegistry jobRegistry,
 			PhysicalResource resource) {
 		
Index: DCWoRMS/branches/coolemall/src/example/energy/coolemall/FanEnergyEstimationPlugin.java
===================================================================
--- DCWoRMS/branches/coolemall/src/example/energy/coolemall/FanEnergyEstimationPlugin.java	(revision 1396)
+++ DCWoRMS/branches/coolemall/src/example/energy/coolemall/FanEnergyEstimationPlugin.java	(revision 1415)
@@ -1,8 +1,8 @@
 package example.energy.coolemall;
 
-import schedframe.events.scheduling.EventReason;
+import schedframe.events.EventReason;
 import schedframe.resources.computing.ComputingResource;
 import schedframe.resources.computing.Node;
-import schedframe.resources.computing.profiles.energy.EnergyEvent;
+import schedframe.resources.computing.profiles.energy.ResourceEvent;
 import schedframe.resources.computing.profiles.energy.power.StandardPowerStateName;
 import schedframe.resources.devices.Device;
@@ -14,5 +14,5 @@
 public class FanEnergyEstimationPlugin extends BaseEnergyEstimationPlugin {
 
-	public double estimatePowerConsumption(EnergyEvent event, JobRegistry jobRegistry,
+	public double estimatePowerConsumption(ResourceEvent event, JobRegistry jobRegistry,
 			PhysicalResource resource) {
 		
@@ -35,5 +35,5 @@
 	}
 	
-	public double estimateAirflow(EnergyEvent event, JobRegistry jobRegistry, PhysicalResource resource) {
+	public double estimateAirflow(ResourceEvent event, JobRegistry jobRegistry, PhysicalResource resource) {
 		
 		double airflow = 0;
Index: DCWoRMS/branches/coolemall/src/example/energy/coolemall/CB1EnergyEstimationPlugin.java
===================================================================
--- DCWoRMS/branches/coolemall/src/example/energy/coolemall/CB1EnergyEstimationPlugin.java	(revision 1396)
+++ DCWoRMS/branches/coolemall/src/example/energy/coolemall/CB1EnergyEstimationPlugin.java	(revision 1415)
@@ -10,5 +10,5 @@
 import schedframe.resources.computing.coolemall.ComputeBox1;
 import schedframe.resources.computing.coolemall.NodeGroup;
-import schedframe.resources.computing.profiles.energy.EnergyEvent;
+import schedframe.resources.computing.profiles.energy.ResourceEvent;
 import schedframe.resources.computing.profiles.energy.airthroughput.CustomAirflowStateName;
 import schedframe.resources.computing.profiles.energy.power.PState;
@@ -26,5 +26,5 @@
 	double powerUpgradeLevel = -1;
 	
-	public double estimatePowerConsumption(EnergyEvent event, JobRegistry jobRegistry,
+	public double estimatePowerConsumption(ResourceEvent event, JobRegistry jobRegistry,
 			PhysicalResource resource) {
 		
Index: DCWoRMS/branches/coolemall/src/example/energy/coolemall/FlowPumpInletEnergyEstimationPlugin.java
===================================================================
--- DCWoRMS/branches/coolemall/src/example/energy/coolemall/FlowPumpInletEnergyEstimationPlugin.java	(revision 1396)
+++ DCWoRMS/branches/coolemall/src/example/energy/coolemall/FlowPumpInletEnergyEstimationPlugin.java	(revision 1415)
@@ -5,5 +5,5 @@
 import schedframe.resources.computing.coolemall.ComputeBox1;
 import schedframe.resources.computing.coolemall.NodeGroup;
-import schedframe.resources.computing.profiles.energy.EnergyEvent;
+import schedframe.resources.computing.profiles.energy.ResourceEvent;
 import schedframe.resources.devices.Device;
 import schedframe.resources.devices.Fan;
@@ -15,5 +15,5 @@
 public class FlowPumpInletEnergyEstimationPlugin extends BaseEnergyEstimationPlugin {
 
-	public double estimatePowerConsumption(EnergyEvent event, JobRegistry jobRegistry,
+	public double estimatePowerConsumption(ResourceEvent event, JobRegistry jobRegistry,
 			PhysicalResource resource) {
 		
@@ -86,5 +86,5 @@
 	}
 	
-	public double estimateAirflow(EnergyEvent event, JobRegistry jobRegistry, PhysicalResource resource) {
+	public double estimateAirflow(ResourceEvent event, JobRegistry jobRegistry, PhysicalResource resource) {
 		double airflow = 0;
 		double Vair_total;
Index: DCWoRMS/branches/coolemall/src/example/energy/coolemall/NodeEnergyEstimationPlugin.java
===================================================================
--- DCWoRMS/branches/coolemall/src/example/energy/coolemall/NodeEnergyEstimationPlugin.java	(revision 1396)
+++ DCWoRMS/branches/coolemall/src/example/energy/coolemall/NodeEnergyEstimationPlugin.java	(revision 1415)
@@ -5,5 +5,5 @@
 import schedframe.resources.computing.Node;
 import schedframe.resources.computing.Processor;
-import schedframe.resources.computing.profiles.energy.EnergyEvent;
+import schedframe.resources.computing.profiles.energy.ResourceEvent;
 import schedframe.resources.computing.profiles.energy.power.StandardPowerStateName;
 import schedframe.resources.devices.Device;
@@ -15,5 +15,5 @@
 public class NodeEnergyEstimationPlugin extends BaseEnergyEstimationPlugin {
 
-	public double estimatePowerConsumption(EnergyEvent event, JobRegistry jobRegistry,
+	public double estimatePowerConsumption(ResourceEvent event, JobRegistry jobRegistry,
 			PhysicalResource resource) {
 		double powerConsumption = 0;
Index: DCWoRMS/branches/coolemall/src/example/energy/coolemall/CB2EnergyEstimationPlugin.java
===================================================================
--- DCWoRMS/branches/coolemall/src/example/energy/coolemall/CB2EnergyEstimationPlugin.java	(revision 1396)
+++ DCWoRMS/branches/coolemall/src/example/energy/coolemall/CB2EnergyEstimationPlugin.java	(revision 1415)
@@ -8,5 +8,5 @@
 import schedframe.resources.computing.coolemall.ComputeBox1;
 import schedframe.resources.computing.coolemall.NodeGroup;
-import schedframe.resources.computing.profiles.energy.EnergyEvent;
+import schedframe.resources.computing.profiles.energy.ResourceEvent;
 import schedframe.resources.computing.profiles.energy.power.StandardPowerStateName;
 import schedframe.resources.devices.Device;
@@ -19,5 +19,5 @@
 public class CB2EnergyEstimationPlugin extends BaseEnergyEstimationPlugin{
 
-	public double estimatePowerConsumption(EnergyEvent event, JobRegistry jobRegistry,
+	public double estimatePowerConsumption(ResourceEvent event, JobRegistry jobRegistry,
 			PhysicalResource resource) {
 		
Index: DCWoRMS/branches/coolemall/src/example/energy/coolemall/FlowPumpOutletEnergyEstimationPlugin.java
===================================================================
--- DCWoRMS/branches/coolemall/src/example/energy/coolemall/FlowPumpOutletEnergyEstimationPlugin.java	(revision 1396)
+++ DCWoRMS/branches/coolemall/src/example/energy/coolemall/FlowPumpOutletEnergyEstimationPlugin.java	(revision 1415)
@@ -5,5 +5,5 @@
 import schedframe.resources.computing.coolemall.ComputeBox1;
 import schedframe.resources.computing.coolemall.NodeGroup;
-import schedframe.resources.computing.profiles.energy.EnergyEvent;
+import schedframe.resources.computing.profiles.energy.ResourceEvent;
 import schedframe.resources.devices.Device;
 import schedframe.resources.devices.Fan;
@@ -15,5 +15,5 @@
 public class FlowPumpOutletEnergyEstimationPlugin extends BaseEnergyEstimationPlugin {
 
-	public double estimatePowerConsumption(EnergyEvent event, JobRegistry jobRegistry,
+	public double estimatePowerConsumption(ResourceEvent event, JobRegistry jobRegistry,
 			PhysicalResource resource) {
 		
@@ -23,5 +23,5 @@
 	}
 	
-	public double estimateAirflow(EnergyEvent event, JobRegistry jobRegistry, PhysicalResource resource) {
+	public double estimateAirflow(ResourceEvent event, JobRegistry jobRegistry, PhysicalResource resource) {
 		double airflow = 0;
 		double Vair_total;
Index: DCWoRMS/branches/coolemall/src/example/energy/coolemall/HeatsinkEnergyEstimationPlugin.java
===================================================================
--- DCWoRMS/branches/coolemall/src/example/energy/coolemall/HeatsinkEnergyEstimationPlugin.java	(revision 1247)
+++ DCWoRMS/branches/coolemall/src/example/energy/coolemall/HeatsinkEnergyEstimationPlugin.java	(revision 1415)
@@ -3,5 +3,5 @@
 import schedframe.resources.computing.Node;
 import schedframe.resources.computing.Processor;
-import schedframe.resources.computing.profiles.energy.EnergyEvent;
+import schedframe.resources.computing.profiles.energy.ResourceEvent;
 import schedframe.resources.devices.Device;
 import schedframe.resources.devices.PhysicalResource;
@@ -11,5 +11,5 @@
 public class HeatsinkEnergyEstimationPlugin extends BaseEnergyEstimationPlugin  {
 
-	public double estimatePowerConsumption(EnergyEvent event, JobRegistry jobRegistry,
+	public double estimatePowerConsumption(ResourceEvent event, JobRegistry jobRegistry,
 			PhysicalResource resource) {
 		
Index: DCWoRMS/branches/coolemall/src/example/energy/coolemall/CoolingDeviceEnergyEstimationPlugin.java
===================================================================
--- DCWoRMS/branches/coolemall/src/example/energy/coolemall/CoolingDeviceEnergyEstimationPlugin.java	(revision 1396)
+++ DCWoRMS/branches/coolemall/src/example/energy/coolemall/CoolingDeviceEnergyEstimationPlugin.java	(revision 1415)
@@ -7,5 +7,5 @@
 import schedframe.resources.computing.coolemall.ComputeBox1;
 import schedframe.resources.computing.coolemall.NodeGroup;
-import schedframe.resources.computing.profiles.energy.EnergyEvent;
+import schedframe.resources.computing.profiles.energy.ResourceEvent;
 import schedframe.resources.computing.profiles.energy.power.StandardPowerStateName;
 import schedframe.resources.devices.Device;
@@ -18,10 +18,10 @@
 public class CoolingDeviceEnergyEstimationPlugin extends BaseEnergyEstimationPlugin {
 
-	public double estimateAirflow(EnergyEvent event, JobRegistry jobRegistry, PhysicalResource resource) {
+	public double estimateAirflow(ResourceEvent event, JobRegistry jobRegistry, PhysicalResource resource) {
 		double airflow = 0;
 		return airflow;
 	}
 
-	public double estimatePowerConsumption(EnergyEvent event, JobRegistry jobRegistry,
+	public double estimatePowerConsumption(ResourceEvent event, JobRegistry jobRegistry,
 			PhysicalResource resource) {
 		
Index: DCWoRMS/branches/coolemall/src/example/energy/coolemall/ProcessorEnergyEstimationPlugin.java
===================================================================
--- DCWoRMS/branches/coolemall/src/example/energy/coolemall/ProcessorEnergyEstimationPlugin.java	(revision 1322)
+++ DCWoRMS/branches/coolemall/src/example/energy/coolemall/ProcessorEnergyEstimationPlugin.java	(revision 1415)
@@ -2,5 +2,5 @@
 
 import schedframe.resources.computing.Processor;
-import schedframe.resources.computing.profiles.energy.EnergyEvent;
+import schedframe.resources.computing.profiles.energy.ResourceEvent;
 import schedframe.resources.computing.profiles.energy.power.StandardPowerStateName;
 import schedframe.resources.devices.PhysicalResource;
@@ -10,5 +10,5 @@
 public class ProcessorEnergyEstimationPlugin extends BaseEnergyEstimationPlugin  {
 
-	public double estimatePowerConsumption(EnergyEvent event, JobRegistry jobRegistry,
+	public double estimatePowerConsumption(ResourceEvent event, JobRegistry jobRegistry,
 			PhysicalResource resource) {
 		
Index: DCWoRMS/branches/coolemall/src/example/energy/DefaultEnergyEstimationPlugin.java
===================================================================
--- DCWoRMS/branches/coolemall/src/example/energy/DefaultEnergyEstimationPlugin.java	(revision 1207)
+++ DCWoRMS/branches/coolemall/src/example/energy/DefaultEnergyEstimationPlugin.java	(revision 1415)
@@ -2,5 +2,5 @@
 
 import schedframe.resources.computing.ComputingResource;
-import schedframe.resources.computing.profiles.energy.EnergyEvent;
+import schedframe.resources.computing.profiles.energy.ResourceEvent;
 import schedframe.resources.devices.PhysicalResource;
 import schedframe.scheduling.manager.tasks.JobRegistry;
@@ -10,5 +10,5 @@
 
 
-	public double estimatePowerConsumption(EnergyEvent event, JobRegistry jobRegistry, PhysicalResource resource) {
+	public double estimatePowerConsumption(ResourceEvent event, JobRegistry jobRegistry, PhysicalResource resource) {
 		double powerConsumption = 0;
 		try {
Index: DCWoRMS/branches/coolemall/src/example/energy/NodeEnergyEstimationPlugin.java
===================================================================
--- DCWoRMS/branches/coolemall/src/example/energy/NodeEnergyEstimationPlugin.java	(revision 1247)
+++ DCWoRMS/branches/coolemall/src/example/energy/NodeEnergyEstimationPlugin.java	(revision 1415)
@@ -3,5 +3,5 @@
 import schedframe.resources.computing.Node;
 import schedframe.resources.computing.Processor;
-import schedframe.resources.computing.profiles.energy.EnergyEvent;
+import schedframe.resources.computing.profiles.energy.ResourceEvent;
 import schedframe.resources.devices.Device;
 import schedframe.resources.devices.PhysicalResource;
@@ -10,5 +10,5 @@
 public class NodeEnergyEstimationPlugin extends BaseEnergyEstimationPlugin {
 
-	public double estimatePowerConsumption(EnergyEvent event, JobRegistry jobRegistry,
+	public double estimatePowerConsumption(ResourceEvent event, JobRegistry jobRegistry,
 			PhysicalResource resource) {
 		double powerConsumption = 0;
Index: DCWoRMS/branches/coolemall/src/example/energy/device/FanEnergyEstimationPlugin.java
===================================================================
--- DCWoRMS/branches/coolemall/src/example/energy/device/FanEnergyEstimationPlugin.java	(revision 1396)
+++ DCWoRMS/branches/coolemall/src/example/energy/device/FanEnergyEstimationPlugin.java	(revision 1415)
@@ -1,6 +1,6 @@
 package example.energy.device;
 
-import schedframe.events.scheduling.EventReason;
-import schedframe.resources.computing.profiles.energy.EnergyEvent;
+import schedframe.events.EventReason;
+import schedframe.resources.computing.profiles.energy.ResourceEvent;
 import schedframe.resources.computing.profiles.energy.airthroughput.StandardAirflowStateName;
 import schedframe.resources.devices.PhysicalResource;
@@ -10,5 +10,5 @@
 public class FanEnergyEstimationPlugin extends BaseEnergyEstimationPlugin {
 
-	public double estimatePowerConsumption(EnergyEvent event, JobRegistry jobRegistry,
+	public double estimatePowerConsumption(ResourceEvent event, JobRegistry jobRegistry,
 			PhysicalResource resource) {
 		double powerConsumption = 0;
@@ -24,5 +24,5 @@
 	}
 
-	public double estimateAirflow(EnergyEvent event, JobRegistry jobRegistry, PhysicalResource resource) {
+	public double estimateAirflow(ResourceEvent event, JobRegistry jobRegistry, PhysicalResource resource) {
 		double airflow= 0;
 		try {
Index: DCWoRMS/branches/coolemall/src/example/energy/BaseEnergyEstimationPlugin.java
===================================================================
--- DCWoRMS/branches/coolemall/src/example/energy/BaseEnergyEstimationPlugin.java	(revision 1396)
+++ DCWoRMS/branches/coolemall/src/example/energy/BaseEnergyEstimationPlugin.java	(revision 1415)
@@ -3,29 +3,44 @@
 import schedframe.Parameters;
 import schedframe.PluginConfiguration;
-import schedframe.resources.computing.profiles.energy.EnergyEvent;
+import schedframe.resources.computing.profiles.energy.ResourceEvent;
 import schedframe.resources.computing.profiles.energy.power.plugin.EnergyEstimationPlugin;
+import schedframe.resources.computing.profiles.energy.power.plugin.EnergyPluginConfiguration;
 import schedframe.resources.devices.PhysicalResource;
 import schedframe.scheduling.manager.tasks.JobRegistry;
+import schemas.StringValueWithUnit;
 
 public abstract class BaseEnergyEstimationPlugin implements EnergyEstimationPlugin {
 
+	 EnergyPluginConfiguration plugConf;
+	 
 	@Override
 	public PluginConfiguration getConfiguration() {
-		// TODO Auto-generated method stub
-		return null;
+		return plugConf;
 	}
 	
 	@Override
-	public double estimateAirflow(EnergyEvent event, JobRegistry jobRegistry, PhysicalResource resource) {
+	public double estimateAirflow(ResourceEvent event, JobRegistry jobRegistry, PhysicalResource resource) {
 		throw new RuntimeException("Not implemented.");
 	}
 
 	@Override
-	public double estimateTemperature(EnergyEvent event, JobRegistry jobRegistry, PhysicalResource  resource) {
+	public double estimateTemperature(ResourceEvent event, JobRegistry jobRegistry, PhysicalResource  resource) {
 		throw new RuntimeException("Not implemented.");
 	}
 	
 	public void init(Parameters parameters) {
-
+		plugConf = new EnergyPluginConfiguration();
+		try{
+			StringValueWithUnit powerCapLevel = parameters.get("powerCapLevel").get(0);
+			plugConf.setPowerCapLevel(Double.valueOf(powerCapLevel.getContent()).doubleValue());
+		} catch(Exception e){
+			plugConf.setPowerCapLevel(-1);
+		}
+		try{
+			StringValueWithUnit powerFloorLevel = parameters.get("powerFloorLevel").get(0);
+			plugConf.setPowerFloorLevel(Double.valueOf(powerFloorLevel.getContent()).doubleValue());
+		} catch(Exception e){
+			plugConf.setPowerFloorLevel(-1);
+		}
 	}
 
Index: DCWoRMS/branches/coolemall/src/example/energy/DataCenterEnergyEstimationPlugin.java
===================================================================
--- DCWoRMS/branches/coolemall/src/example/energy/DataCenterEnergyEstimationPlugin.java	(revision 1258)
+++ DCWoRMS/branches/coolemall/src/example/energy/DataCenterEnergyEstimationPlugin.java	(revision 1415)
@@ -3,5 +3,5 @@
 import schedframe.resources.computing.Node;
 import schedframe.resources.computing.DataCenter;
-import schedframe.resources.computing.profiles.energy.EnergyEvent;
+import schedframe.resources.computing.profiles.energy.ResourceEvent;
 import schedframe.resources.computing.profiles.energy.power.PowerUsage;
 import schedframe.resources.devices.PhysicalResource;
@@ -11,5 +11,5 @@
 
 	@Override
-	public double estimatePowerConsumption(EnergyEvent event, JobRegistry jobRegistry,
+	public double estimatePowerConsumption(ResourceEvent event, JobRegistry jobRegistry,
 			PhysicalResource resource) {
 		double power = 0;
