Index: DCWoRMS/branches/coolemall/src/simulator/stats/AccumulatedStatistics.java
===================================================================
--- DCWoRMS/branches/coolemall/src/simulator/stats/AccumulatedStatistics.java	(revision 481)
+++ DCWoRMS/branches/coolemall/src/simulator/stats/AccumulatedStatistics.java	(revision 1396)
@@ -10,5 +10,4 @@
 import java.util.List;
 
-import simulator.stats.implementation.DCWormsStatistics;
 import gridsim.Accumulator;
 
@@ -50,16 +49,16 @@
 		}
 		
-		GSSAccumulator resourceLoad = getAccumulatedResourceLoad();
-		GSSAccumulator reservationLoad = getAccumulatedReservationLoad();
-		GSSAccumulator makespan = getAccumulatedMakespan();
-		GSSAccumulator taskExecutionTime = getAccumulatedJobExecutionTime();
-		GSSAccumulator taskQueueLength = getAccumulatedQueueJobCount();
-		GSSAccumulator taskCompletionTime = getAccumulatedCompletionTime();
-		GSSAccumulator taskWaitingTime = getAccumulatedWaitingTime();
-		GSSAccumulator taskFlowTime = getAccumulatedJobFlowTime();
-		GSSAccumulator taskLateness = getAccumulatedLateness();
-		GSSAccumulator delayedTasks = getAccumulatedDelayedTasks();
-		GSSAccumulator taskTardiness = getAccumulatedTardiness();
-		GSSAccumulator failedRequests = getAccumulatedFailedRequests();
+		DCwormsAccumulator resourceLoad = getAccumulatedResourceLoad();
+		DCwormsAccumulator reservationLoad = getAccumulatedReservationLoad();
+		DCwormsAccumulator makespan = getAccumulatedMakespan();
+		DCwormsAccumulator taskExecutionTime = getAccumulatedJobExecutionTime();
+		DCwormsAccumulator taskQueueLength = getAccumulatedQueueJobCount();
+		DCwormsAccumulator taskCompletionTime = getAccumulatedCompletionTime();
+		DCwormsAccumulator taskWaitingTime = getAccumulatedWaitingTime();
+		DCwormsAccumulator taskFlowTime = getAccumulatedJobFlowTime();
+		DCwormsAccumulator taskLateness = getAccumulatedLateness();
+		DCwormsAccumulator delayedTasks = getAccumulatedDelayedTasks();
+		DCwormsAccumulator taskTardiness = getAccumulatedTardiness();
+		DCwormsAccumulator failedRequests = getAccumulatedFailedRequests();
 		
 		out.print("Delayed tasks (accumulated)");
@@ -91,8 +90,8 @@
 	}
 
-	public GSSAccumulator getAccumulatedResourceLoad() {
-		GSSAccumulator resourceMeanLoad = new GSSAccumulator();	
-		for (SimulationStatistics simStat : simulations) {
-			GSSAccumulator simulationResTotalLoad = simStat.getStats(SimulationStatistics.RESOURCES_TOTAL_LOAD); 
+	public DCwormsAccumulator getAccumulatedResourceLoad() {
+		DCwormsAccumulator resourceMeanLoad = new DCwormsAccumulator();	
+		for (SimulationStatistics simStat : simulations) {
+			DCwormsAccumulator simulationResTotalLoad = simStat.getStats(SimulationStatistics.RESOURCES_TOTAL_LOAD); 
 			resourceMeanLoad.add(simulationResTotalLoad.getMean());
 		}
@@ -100,6 +99,6 @@
 	}
 
-	public GSSAccumulator getAccumulatedReservationLoad(){
-		GSSAccumulator reservationMean = new GSSAccumulator();
+	public DCwormsAccumulator getAccumulatedReservationLoad(){
+		DCwormsAccumulator reservationMean = new DCwormsAccumulator();
 		for (SimulationStatistics simStat : simulations) {
 			Accumulator simulationResvTotalLoad = simStat.getStats(SimulationStatistics.RESOURCES_RESERVATION_LOAD);
@@ -119,6 +118,6 @@
 	}*/
 
-	public GSSAccumulator getAccumulatedJobFlowTime() {
-		GSSAccumulator meanJobFlowTime = new GSSAccumulator();
+	public DCwormsAccumulator getAccumulatedJobFlowTime() {
+		DCwormsAccumulator meanJobFlowTime = new DCwormsAccumulator();
 		for (SimulationStatistics simStat : simulations) {
 			Accumulator simulationJobFlowTime = simStat.getStats(SimulationStatistics.TASK_FLOW_TIME);
@@ -128,6 +127,6 @@
 	}
 
-	public GSSAccumulator getAccumulatedLateness() {
-		GSSAccumulator meanLateness = new GSSAccumulator();
+	public DCwormsAccumulator getAccumulatedLateness() {
+		DCwormsAccumulator meanLateness = new DCwormsAccumulator();
 		for (SimulationStatistics simStat : simulations) {
 			Accumulator simulationLateness = simStat.getStats(SimulationStatistics.TASK_LATENESS);
@@ -137,6 +136,6 @@
 	}
 
-	public GSSAccumulator getAccumulatedFailedRequests() {
-		GSSAccumulator meanFailedRequests = new GSSAccumulator();
+	public DCwormsAccumulator getAccumulatedFailedRequests() {
+		DCwormsAccumulator meanFailedRequests = new DCwormsAccumulator();
 		for (SimulationStatistics simStat : simulations) {
 			Accumulator simulationFailedRequestes = simStat.getStats(SimulationStatistics.FAILED_REQUESTS);
@@ -146,6 +145,6 @@
 	}
 
-	public GSSAccumulator getAccumulatedTardiness() {
-		GSSAccumulator meanTardiness = new GSSAccumulator();
+	public DCwormsAccumulator getAccumulatedTardiness() {
+		DCwormsAccumulator meanTardiness = new DCwormsAccumulator();
 		for (SimulationStatistics simStat : simulations) {
 			Accumulator simulationJobTardiness = simStat.getStats(SimulationStatistics.TASK_TARDINESS);
@@ -155,6 +154,6 @@
 	}
 
-	public GSSAccumulator getAccumulatedDelayedTasks() {
-		GSSAccumulator delayedTasks = new GSSAccumulator();
+	public DCwormsAccumulator getAccumulatedDelayedTasks() {
+		DCwormsAccumulator delayedTasks = new DCwormsAccumulator();
 		for (SimulationStatistics simStat : simulations) {
 			Accumulator simulationDelayedTasks = simStat.getStats(SimulationStatistics.DELAYED_TASKS);
@@ -164,6 +163,6 @@
 	}
 
-	public GSSAccumulator getAccumulatedCompletionTime() {
-		GSSAccumulator meanJobCompletionTime = new GSSAccumulator();
+	public DCwormsAccumulator getAccumulatedCompletionTime() {
+		DCwormsAccumulator meanJobCompletionTime = new DCwormsAccumulator();
 		
 		for (SimulationStatistics simStat : simulations) {
@@ -174,6 +173,6 @@
 	}
 
-	public GSSAccumulator getAccumulatedMakespan() {
-		GSSAccumulator meanMakespan = new GSSAccumulator();
+	public DCwormsAccumulator getAccumulatedMakespan() {
+		DCwormsAccumulator meanMakespan = new DCwormsAccumulator();
 		for (SimulationStatistics simStat : simulations) {
 			meanMakespan.add(simStat.getStats(SimulationStatistics.MAKESPAN).getMean());
@@ -182,6 +181,6 @@
 	}
 
-	public GSSAccumulator getAccumulatedWaitingTime() {
-		GSSAccumulator meanWaitingTime = new GSSAccumulator();
+	public DCwormsAccumulator getAccumulatedWaitingTime() {
+		DCwormsAccumulator meanWaitingTime = new DCwormsAccumulator();
 		for (SimulationStatistics simStat : simulations)
 			meanWaitingTime.add(simStat.getStats(SimulationStatistics.TASK_WAITING_TIME).getMean());
@@ -189,6 +188,6 @@
 	}
 
-	public GSSAccumulator getAccumulatedJobExecutionTime() {
-		GSSAccumulator meanJobExecutionTime = new GSSAccumulator();
+	public DCwormsAccumulator getAccumulatedJobExecutionTime() {
+		DCwormsAccumulator meanJobExecutionTime = new DCwormsAccumulator();
 		for (SimulationStatistics simStat : simulations)
 			meanJobExecutionTime.add(simStat.getStats(SimulationStatistics.TASK_EXECUTION_TIME).getMean());
@@ -196,6 +195,6 @@
 	}
 
-	public GSSAccumulator getAccumulatedQueueJobCount() {
-		GSSAccumulator meanQueuJobCount = new GSSAccumulator();
+	public DCwormsAccumulator getAccumulatedQueueJobCount() {
+		DCwormsAccumulator meanQueuJobCount = new DCwormsAccumulator();
 		for (SimulationStatistics simStat : simulations)
 			meanQueuJobCount.add(simStat.getStats(SimulationStatistics.RESOURCES_QUEUE_LENGTH).getMean());
Index: DCWoRMS/branches/coolemall/src/simulator/stats/AbstractMetricsCalculator.java
===================================================================
--- DCWoRMS/branches/coolemall/src/simulator/stats/AbstractMetricsCalculator.java	(revision 1299)
+++ DCWoRMS/branches/coolemall/src/simulator/stats/AbstractMetricsCalculator.java	(revision 1396)
@@ -13,5 +13,5 @@
 	protected static final double SEC_IN_HOUR = 3600;
 	
-	protected Map<String, List<GSSAccumulator>> metricsData = new HashMap<String, List<GSSAccumulator>>();
+	protected Map<String, List<DCwormsAccumulator>> metricsData = new HashMap<String, List<DCwormsAccumulator>>();
 
 	protected long startTime;
@@ -28,8 +28,8 @@
 	abstract public List<MetricsStats> calulateMetrics();
 	
-	public void addMetricsData(String resourceTypeName, GSSAccumulator resourceEnergyAccumulator){
-		List<GSSAccumulator> resourceEnergyAccumulatorList = metricsData.get(resourceTypeName);
+	public void addMetricsData(String resourceTypeName, DCwormsAccumulator resourceEnergyAccumulator){
+		List<DCwormsAccumulator> resourceEnergyAccumulatorList = metricsData.get(resourceTypeName);
 		if(resourceEnergyAccumulatorList == null){
-			resourceEnergyAccumulatorList = new ArrayList<GSSAccumulator>();
+			resourceEnergyAccumulatorList = new ArrayList<DCwormsAccumulator>();
 		}
 		resourceEnergyAccumulatorList.add(resourceEnergyAccumulator);
@@ -37,5 +37,5 @@
 	}
 	
-	public Map<String, List<GSSAccumulator>> getMetricsData(){
+	public Map<String, List<DCwormsAccumulator>> getMetricsData(){
 		return metricsData;
 	}
Index: DCWoRMS/branches/coolemall/src/simulator/stats/implementation/out/CoolEmAllStringSerializer.java
===================================================================
--- DCWoRMS/branches/coolemall/src/simulator/stats/implementation/out/CoolEmAllStringSerializer.java	(revision 1207)
+++ DCWoRMS/branches/coolemall/src/simulator/stats/implementation/out/CoolEmAllStringSerializer.java	(revision 1396)
@@ -8,5 +8,5 @@
 
 import schedframe.resources.CoolEmAllResourceType;
-import schedframe.resources.ResourceHistoryChanges;
+import schedframe.resources.ResourceHistoryItem;
 import schedframe.resources.StandardResourceType;
 import simulator.stats.implementation.MetricsStats;
@@ -311,10 +311,10 @@
 		df.setGroupingUsed(false);
 		
-		for(ResourceHistoryChanges rhc: arg.getResHistChanges()){
+		for(ResourceHistoryItem rhc: arg.getResourceHistory()){
 			buffer.append(rhc.getTimestamp());
 			buffer.append(fieldSeparator);
 			buffer.append(rhc.getResourceName());
 			buffer.append(fieldSeparator);
-			buffer.append(rhc.getOperation());
+			buffer.append(rhc.getAction());
 			buffer.append(fieldSeparator);
 			buffer.append(rhc.getParamter());
Index: DCWoRMS/branches/coolemall/src/simulator/stats/implementation/ResourceHistoryStats.java
===================================================================
--- DCWoRMS/branches/coolemall/src/simulator/stats/implementation/ResourceHistoryStats.java	(revision 1207)
+++ DCWoRMS/branches/coolemall/src/simulator/stats/implementation/ResourceHistoryStats.java	(revision 1396)
@@ -3,5 +3,5 @@
 import java.util.List;
 
-import schedframe.resources.ResourceHistoryChanges;
+import schedframe.resources.ResourceHistoryItem;
 import simulator.stats.implementation.out.StatsSerializer;
 
@@ -10,11 +10,9 @@
 	private String[] headers = {"timestamp", "resourceName", "operation", "parameter" };
 
-	protected List<ResourceHistoryChanges> resHistChanges;
+	protected List<ResourceHistoryItem> resHist;
 	
-	public ResourceHistoryStats(List<ResourceHistoryChanges> resHistChanges) {
-		super();
-		this.resHistChanges = resHistChanges;
+	public ResourceHistoryStats(List<ResourceHistoryItem> resHist) {
+		this.resHist = resHist;
 	}
-
 
 	public Object serialize(StatsSerializer serializer) {
@@ -26,7 +24,6 @@
 	}
 
-
-	public List<ResourceHistoryChanges> getResHistChanges() {
-		return resHistChanges;
+	public List<ResourceHistoryItem> getResourceHistory() {
+		return resHist;
 	}
 }
Index: DCWoRMS/branches/coolemall/src/simulator/stats/implementation/DCWormsStatistics.java
===================================================================
--- DCWoRMS/branches/coolemall/src/simulator/stats/implementation/DCWormsStatistics.java	(revision 1374)
+++ DCWoRMS/branches/coolemall/src/simulator/stats/implementation/DCWormsStatistics.java	(revision 1396)
@@ -59,9 +59,7 @@
 import schedframe.ExecutablesList;
 import schedframe.SimulatedEnvironment;
-import schedframe.exceptions.ResourceException;
+import schedframe.resources.CustomResourceType;
 import schedframe.resources.ResourceType;
-import schedframe.resources.UserResourceType;
 import schedframe.resources.computing.ComputingResource;
-import schedframe.resources.computing.Processor;
 import schedframe.resources.computing.extensions.Extension;
 import schedframe.resources.computing.extensions.ExtensionList;
@@ -69,5 +67,5 @@
 import schedframe.resources.computing.profiles.energy.EnergyExtension;
 import schedframe.resources.computing.profiles.energy.MeasurementHistory;
-import schedframe.resources.computing.profiles.energy.airthroughput.AirFlowValue;
+import schedframe.resources.computing.profiles.energy.airthroughput.AirflowValue;
 import schedframe.resources.computing.profiles.energy.power.PowerUsage;
 import schedframe.resources.computing.profiles.energy.thermal.TemperatureValue;
@@ -80,5 +78,5 @@
 import schedframe.resources.units.StandardResourceUnitName;
 import schedframe.scheduling.ExecutionHistoryItem;
-import schedframe.scheduling.ResourceHistoryItem;
+import schedframe.scheduling.ResourceItem;
 import schedframe.scheduling.Scheduler;
 import schedframe.scheduling.manager.tasks.JobRegistry;
@@ -91,6 +89,6 @@
 import simulator.GenericUser;
 import simulator.stats.CoolEmAllMetricsCalculator;
+import simulator.stats.DCwormsAccumulator;
 import simulator.stats.DCwormsMetricsCalculator;
-import simulator.stats.GSSAccumulator;
 import simulator.stats.MetricsCalculator;
 import simulator.stats.SimulationStatistics;
@@ -124,5 +122,5 @@
 	protected static final String RESOURCEUTILIZATION_STATISTICS_OUTPUT_FILE_NAME = "ResourceUtilization.txt";
 	protected static final String ENERGYUSAGE_STATISTICS_OUTPUT_FILE_NAME = "EnergyUsage.txt";
-	protected static final String AIRFLOW_STATISTICS_OUTPUT_FILE_NAME = "AirThroughput.txt";
+	protected static final String AIRFLOW_STATISTICS_OUTPUT_FILE_NAME = "Airflow.txt";
 	protected static final String TEMPERATURE_STATISTICS_OUTPUT_FILE_NAME = "Temperature.txt";
 	protected static final String USEFUL_WORK_STATISTICS_OUTPUT_FILE_NAME = "UsefulWork.txt";
@@ -144,5 +142,5 @@
 
 	protected GSSAccumulatorsStats accStats;
-	protected Map<String, GSSAccumulator> statsData;
+	protected Map<String, DCwormsAccumulator> statsData;
 	
 	protected GenericUser users;
@@ -232,5 +230,5 @@
 		task_processorsMap = new HashMap<String, Set<ComputingResource>>();
 		accStats = new GSSAccumulatorsStats();
-		statsData = new HashMap<String, GSSAccumulator>();
+		statsData = new HashMap<String, DCwormsAccumulator>();
 		
 		this.serializer = new StringSerializer();		
@@ -298,5 +296,5 @@
 				cStats.add(Stats.chartEnergy);
 			cStats.add(Stats.textAirFlow);
-			if(ArrayUtils.contains(configuration.resForAirFlowChart, resourceTypeName))
+			if(ArrayUtils.contains(configuration.resForAirflowChart, resourceTypeName))
 				cStats.add(Stats.chartAirFlow);
 			cStats.add(Stats.textTemperature);
@@ -420,10 +418,10 @@
 		List<ComputingResource> compResources = null;
 		for(String resourceTypeName: resourceController.getComputingResourceLayers()){
-			GSSAccumulator resourceEnergyAccumulator = new GSSAccumulator();
-			GSSAccumulator maxResourceEnergyAccumulator = new GSSAccumulator();
-			GSSAccumulator calculationsEnergyAccumulator = new GSSAccumulator();
+			DCwormsAccumulator resourceEnergyAccumulator = new DCwormsAccumulator();
+			DCwormsAccumulator maxResourceEnergyAccumulator = new DCwormsAccumulator();
+			DCwormsAccumulator calculationsEnergyAccumulator = new DCwormsAccumulator();
 			compResources = new ArrayList<ComputingResource>();
 			for(ComputingResource compRes: resourceController.getComputingResources() ){
-				compResources.addAll(compRes.getDescendantsByType(new UserResourceType(resourceTypeName)));
+				compResources.addAll(compRes.getDescendantsByType(new CustomResourceType(resourceTypeName)));
 			}
 			if(resourceController.getComputingResources().get(0).getType().getName().equals(resourceTypeName))
@@ -526,5 +524,5 @@
 						
 						for(Device device: compResource.getResourceCharacteristic().getDevices()){
-							GSSAccumulator devAccumulator = new GSSAccumulator();
+							DCwormsAccumulator devAccumulator = new DCwormsAccumulator();
 							ResourcePowerStats deviceEnergyUsage = gatherResourcePowerConsumptionStats(device);
 							deviceEnergyUsage.setMeanValue(calculateMeanValue(deviceEnergyUsage));
@@ -592,5 +590,5 @@
 							}
 							
-							if(ArrayUtils.contains(configuration.resForAirFlowChart, device.getType().getName())){
+							if(ArrayUtils.contains(configuration.resForAirflowChart, device.getType().getName())){
 								if (configuration.creatediagrams_resairflow) {
 									createResourceAirFlowDiagramData(deviceAirFlow);
@@ -767,5 +765,5 @@
 
 
-			LinkedList<ResourceHistoryItem> resourceHistory = exec.getAllocatedResources();
+			LinkedList<ResourceItem> resourceHistory = exec.getAllocatedResources();
 			if(resourceHistory.size() == 0)
 				continue;
@@ -805,12 +803,12 @@
 
 					try{
-						double usefulWork = execTask.getResourceConsumptionProfile().getUsefulWork()/pes.size();
+						double usefulWork = execTask.getExecutionProfile().getUsefulWork()/pes.size();
 						//double usefulWork = gatherUsefulWorkStats(pe).getValue();
-						GSSAccumulator uwAcc;
+						DCwormsAccumulator uwAcc;
 						if(metCalc.getMetricsData().containsKey("UW_" + pe.getFullName())){
 							uwAcc = metCalc.getMetricsData().get("UW_" + pe.getFullName()).get(0);
 							uwAcc.add(usefulWork);
 						} else {
-							uwAcc = new GSSAccumulator();
+							uwAcc = new DCwormsAccumulator();
 							uwAcc.add(usefulWork);
 							metCalc.addMetricsData("UW_" + pe.getFullName(), uwAcc);
@@ -832,14 +830,14 @@
 			Executable exec = (Executable) execTask;
 
-			LinkedList<ResourceHistoryItem> resourceHistory = exec.getAllocatedResources();
+			LinkedList<ResourceItem> resourceHistory = exec.getAllocatedResources();
 			if(resourceHistory.size() == 0)
 				continue;
 
 			for(int i = 0; i < resourceHistory .size(); i++){
-				ResourceHistoryItem resHistItem = resourceHistory.get(i);
+				ResourceItem resHistItem = resourceHistory.get(i);
 				Map<ResourceUnitName, ResourceUnit> res = resHistItem.getResourceUnits();
 				ResourceUnit resUnit = res.get(StandardResourceUnitName.PE);
 				//ProcessingElements pes = (ProcessingElements) resUnit ;
-				LinkedList<ExecutionHistoryItem> execHistory = exec.getExecHistory();
+				LinkedList<ExecutionHistoryItem> execHistory = exec.getExecutionHistory();
 				long st = -1, et;
 				for(int j = 0; j < execHistory .size(); j++){
@@ -893,12 +891,12 @@
 
 								try{
-									double usefulWork = execTask.getResourceConsumptionProfile().getUsefulWork()/pes.size();
+									double usefulWork = execTask.getExecutionProfile().getUsefulWork()/pes.size();
 									usefulWork = ((et - st) / (1000 * getExecutionTime(execTask))) * usefulWork;
-									GSSAccumulator uwAcc;
+									DCwormsAccumulator uwAcc;
 									if(metCalc.getMetricsData().containsKey("UW_" + pe.getFullName())){
 										uwAcc = metCalc.getMetricsData().get("UW_" + pe.getFullName()).get(0);
 										uwAcc.add(usefulWork);
 									} else {
-										uwAcc = new GSSAccumulator();
+										uwAcc = new DCwormsAccumulator();
 										uwAcc.add(usefulWork);
 										metCalc.addMetricsData("UW_" + pe.getFullName(), uwAcc);
@@ -922,5 +920,5 @@
 		long previousTimestamp = 0;
 		int previousStatus = DCWormsTags.CREATED;
-		for(ExecutionHistoryItem execHistItem: execTask.getExecHistory()){
+		for(ExecutionHistoryItem execHistItem: execTask.getExecutionHistory()){
 			if(previousStatus == DCWormsTags.INEXEC){
 				executionTime = executionTime  + (execHistItem.getTimeStamp().getMillis()/1000 - previousTimestamp);
@@ -1033,5 +1031,5 @@
 		JobRegistry jr = new JobRegistryImpl(compResource.getFullName());
 		for(ExecTask task: jr.getFinishedTasks()){
-			usefulWork = usefulWork + task.getResourceConsumptionProfile().getUsefulWork();
+			usefulWork = usefulWork + task.getExecutionProfile().getUsefulWork();
 		}
 		ResourceUsefulWorkStats usefulWorkStats = new ResourceUsefulWorkStats(compResource.getFullName(), compResource.getType(), usageType, usefulWork, endSimulationTime);
@@ -1175,10 +1173,10 @@
 					if(ee.getAirFlowProfile() == null)
 						break;
-					List<AirFlowValue> airFlowHistory = ee.getAirFlowProfile().getAirThroughputHistory();
+					List<AirflowValue> airFlowHistory = ee.getAirFlowProfile().getAirflowHistory();
 					if(airFlowHistory.size() == 0)
 						break;
 					long endSimulationTime = DateTimeUtilsExt.currentTimeMillis();
-					airFlowHistory.add(new AirFlowValue(endSimulationTime, ee.getAirFlowProfile().getAirThroughputHistory().get(ee.getAirFlowProfile().getAirThroughputHistory().size()-1).getValue()));
-					for(AirFlowValue af:airFlowHistory){
+					airFlowHistory.add(new AirflowValue(endSimulationTime, ee.getAirFlowProfile().getAirflowHistory().get(ee.getAirFlowProfile().getAirflowHistory().size()-1).getValue()));
+					for(AirflowValue af:airFlowHistory){
 						airFlow.put(af.getTimestamp(), af.getValue());
 					}
@@ -1402,5 +1400,5 @@
 				resourceAirFlowDiagram = getResourceDynamicDiagram(resourceAirFlowDiagrams.get(resType), simulationTime, chartName,
 						subtitle, axisName);
-				if (!saveXYPlotChart(resourceAirFlowDiagram, fileName + "AirThroughput_" + resType))
+				if (!saveXYPlotChart(resourceAirFlowDiagram, fileName + "Airflow_" + resType))
 					return false;
 			}
@@ -2040,5 +2038,5 @@
 	}
 
-	public GSSAccumulator getStats(String name) {
+	public DCwormsAccumulator getStats(String name) {
 		return statsData.get(name);
 	}
Index: DCWoRMS/branches/coolemall/src/simulator/stats/implementation/JobStats.java
===================================================================
--- DCWoRMS/branches/coolemall/src/simulator/stats/implementation/JobStats.java	(revision 477)
+++ DCWoRMS/branches/coolemall/src/simulator/stats/implementation/JobStats.java	(revision 1396)
@@ -1,7 +1,5 @@
 package simulator.stats.implementation;
 
-import java.io.PrintStream;
-
-import simulator.stats.GSSAccumulator;
+import simulator.stats.DCwormsAccumulator;
 import simulator.stats.implementation.out.StatsSerializer;
 
@@ -14,13 +12,13 @@
 
 	protected String jobID;
-	protected GSSAccumulator meanTaskCompletionTime;
-	protected GSSAccumulator meanTaskExecutionTime;
-	protected GSSAccumulator meanTaskStartTime;
-	protected GSSAccumulator meanTaskFlowTime;
-	protected GSSAccumulator meanTaskWaitingTime;
-	protected GSSAccumulator meanTaskGQ_WaitingTime;
-	protected GSSAccumulator lateness;
-	protected GSSAccumulator tardiness;
-	protected GSSAccumulator makespan;
+	protected DCwormsAccumulator meanTaskCompletionTime;
+	protected DCwormsAccumulator meanTaskExecutionTime;
+	protected DCwormsAccumulator meanTaskStartTime;
+	protected DCwormsAccumulator meanTaskFlowTime;
+	protected DCwormsAccumulator meanTaskWaitingTime;
+	protected DCwormsAccumulator meanTaskGQ_WaitingTime;
+	protected DCwormsAccumulator lateness;
+	protected DCwormsAccumulator tardiness;
+	protected DCwormsAccumulator makespan;
 
 	JobStats(String jobID) {
@@ -35,13 +33,13 @@
 
 	private void init() {
-		this.meanTaskCompletionTime = new GSSAccumulator();
-		this.meanTaskExecutionTime = new GSSAccumulator();
-		this.meanTaskStartTime = new GSSAccumulator();
-		this.meanTaskFlowTime = new GSSAccumulator();
-		this.meanTaskWaitingTime = new GSSAccumulator();
-		this.meanTaskGQ_WaitingTime = new GSSAccumulator();
-		this.lateness = new GSSAccumulator();
-		this.tardiness = new GSSAccumulator();
-		this.makespan = new GSSAccumulator();
+		this.meanTaskCompletionTime = new DCwormsAccumulator();
+		this.meanTaskExecutionTime = new DCwormsAccumulator();
+		this.meanTaskStartTime = new DCwormsAccumulator();
+		this.meanTaskFlowTime = new DCwormsAccumulator();
+		this.meanTaskWaitingTime = new DCwormsAccumulator();
+		this.meanTaskGQ_WaitingTime = new DCwormsAccumulator();
+		this.lateness = new DCwormsAccumulator();
+		this.tardiness = new DCwormsAccumulator();
+		this.makespan = new DCwormsAccumulator();
 	}
 
@@ -50,37 +48,37 @@
 	}
 
-	public GSSAccumulator getMeanTaskCompletionTime() {
+	public DCwormsAccumulator getMeanTaskCompletionTime() {
 		return meanTaskCompletionTime;
 	}
 
-	public GSSAccumulator getMeanTaskExecutionTime() {
+	public DCwormsAccumulator getMeanTaskExecutionTime() {
 		return meanTaskExecutionTime;
 	}
 
-	public GSSAccumulator getMeanTaskStartTime() {
+	public DCwormsAccumulator getMeanTaskStartTime() {
 		return meanTaskStartTime;
 	}
 
-	public GSSAccumulator getMeanTaskFlowTime() {
+	public DCwormsAccumulator getMeanTaskFlowTime() {
 		return meanTaskFlowTime;
 	}
 
-	public GSSAccumulator getMeanTaskWaitingTime() {
+	public DCwormsAccumulator getMeanTaskWaitingTime() {
 		return meanTaskWaitingTime;
 	}
 
-	public GSSAccumulator getMeanTaskGQ_WaitingTime() {
+	public DCwormsAccumulator getMeanTaskGQ_WaitingTime() {
 		return meanTaskGQ_WaitingTime;
 	}
 
-	public GSSAccumulator getLateness() {
+	public DCwormsAccumulator getLateness() {
 		return lateness;
 	}
 
-	public GSSAccumulator getTardiness() {
+	public DCwormsAccumulator getTardiness() {
 		return tardiness;
 	}
 
-	public GSSAccumulator getMakespan() {
+	public DCwormsAccumulator getMakespan() {
 		return makespan;
 	}
Index: DCWoRMS/branches/coolemall/src/simulator/stats/implementation/GSSAccumulatorsStats.java
===================================================================
--- DCWoRMS/branches/coolemall/src/simulator/stats/implementation/GSSAccumulatorsStats.java	(revision 1277)
+++ DCWoRMS/branches/coolemall/src/simulator/stats/implementation/GSSAccumulatorsStats.java	(revision 1396)
@@ -1,26 +1,26 @@
 package simulator.stats.implementation;
 
-import simulator.stats.GSSAccumulator;
+import simulator.stats.DCwormsAccumulator;
 import simulator.stats.implementation.out.StatsSerializer;
 
 public class GSSAccumulatorsStats implements StatsInterface {
 
-	public GSSAccumulator meanTotalOccupancy;
-	public GSSAccumulator meanTotalLoad;
-	public GSSAccumulator meanQueueLength;
-	public GSSAccumulator meanEnergyUsage;
-	public GSSAccumulator meanAirFlow;
-	public GSSAccumulator meanTemperature;
+	public DCwormsAccumulator meanTotalOccupancy;
+	public DCwormsAccumulator meanTotalLoad;
+	public DCwormsAccumulator meanQueueLength;
+	public DCwormsAccumulator meanEnergyUsage;
+	public DCwormsAccumulator meanAirFlow;
+	public DCwormsAccumulator meanTemperature;
 
-	public GSSAccumulator meanTaskStartTime;
-	public GSSAccumulator meanTaskCompletionTime;
-	public GSSAccumulator meanTaskExecutionTime;
-	public GSSAccumulator meanTaskWaitingTime;
-	public GSSAccumulator meanTaskFlowTime;
-	public GSSAccumulator lateness;
-	public GSSAccumulator tardiness;
-	public GSSAccumulator delayedTasks;
-	public GSSAccumulator failedRequests;
-	public GSSAccumulator makespan;
+	public DCwormsAccumulator meanTaskStartTime;
+	public DCwormsAccumulator meanTaskCompletionTime;
+	public DCwormsAccumulator meanTaskExecutionTime;
+	public DCwormsAccumulator meanTaskWaitingTime;
+	public DCwormsAccumulator meanTaskFlowTime;
+	public DCwormsAccumulator lateness;
+	public DCwormsAccumulator tardiness;
+	public DCwormsAccumulator delayedTasks;
+	public DCwormsAccumulator failedRequests;
+	public DCwormsAccumulator makespan;
 
 	private String[] headers = { "Resource name", "mean", "stdev", "variance",
@@ -28,21 +28,21 @@
 
 	public GSSAccumulatorsStats() {
-		meanTotalOccupancy = new GSSAccumulator();
-		meanTotalLoad = new GSSAccumulator();
-		meanQueueLength = new GSSAccumulator();
-		meanEnergyUsage = new GSSAccumulator(); 
-		meanAirFlow = new GSSAccumulator(); 
-		meanTemperature = new GSSAccumulator(); 
+		meanTotalOccupancy = new DCwormsAccumulator();
+		meanTotalLoad = new DCwormsAccumulator();
+		meanQueueLength = new DCwormsAccumulator();
+		meanEnergyUsage = new DCwormsAccumulator(); 
+		meanAirFlow = new DCwormsAccumulator(); 
+		meanTemperature = new DCwormsAccumulator(); 
 		
-		meanTaskStartTime = new GSSAccumulator();
-		meanTaskCompletionTime = new GSSAccumulator();
-		meanTaskExecutionTime = new GSSAccumulator();
-		meanTaskWaitingTime = new GSSAccumulator();
-		meanTaskFlowTime = new GSSAccumulator();
-		lateness = new GSSAccumulator();
-		tardiness = new GSSAccumulator();
-		delayedTasks = new GSSAccumulator();
-		failedRequests = new GSSAccumulator();
-		makespan = new GSSAccumulator();
+		meanTaskStartTime = new DCwormsAccumulator();
+		meanTaskCompletionTime = new DCwormsAccumulator();
+		meanTaskExecutionTime = new DCwormsAccumulator();
+		meanTaskWaitingTime = new DCwormsAccumulator();
+		meanTaskFlowTime = new DCwormsAccumulator();
+		lateness = new DCwormsAccumulator();
+		tardiness = new DCwormsAccumulator();
+		delayedTasks = new DCwormsAccumulator();
+		failedRequests = new DCwormsAccumulator();
+		makespan = new DCwormsAccumulator();
 	}
 
Index: DCWoRMS/branches/coolemall/src/simulator/stats/implementation/AccumulatedResourceStats.java
===================================================================
--- DCWoRMS/branches/coolemall/src/simulator/stats/implementation/AccumulatedResourceStats.java	(revision 477)
+++ DCWoRMS/branches/coolemall/src/simulator/stats/implementation/AccumulatedResourceStats.java	(revision 1396)
@@ -1,5 +1,5 @@
 package simulator.stats.implementation;
 
-import simulator.stats.GSSAccumulator;
+import simulator.stats.DCwormsAccumulator;
 import simulator.stats.implementation.out.StatsSerializer;
 
@@ -12,6 +12,6 @@
 
 	// accumulated resource statistic
-	protected GSSAccumulator resourceLoad;
-	protected GSSAccumulator resourceReservationLoad;
+	protected DCwormsAccumulator resourceLoad;
+	protected DCwormsAccumulator resourceReservationLoad;
 	protected String resourceName;
 
@@ -21,6 +21,6 @@
 	public AccumulatedResourceStats(String resourceName) {
 		this.resourceName = resourceName;
-		this.resourceLoad = new GSSAccumulator();
-		this.resourceReservationLoad = new GSSAccumulator();
+		this.resourceLoad = new DCwormsAccumulator();
+		this.resourceReservationLoad = new DCwormsAccumulator();
 	}
 
@@ -37,9 +37,9 @@
 	}
 
-	public GSSAccumulator getResourceLoad() {
+	public DCwormsAccumulator getResourceLoad() {
 		return this.resourceLoad;
 	}
 
-	public GSSAccumulator getResourceReservationLoad() {
+	public DCwormsAccumulator getResourceReservationLoad() {
 		return this.resourceReservationLoad;
 	}
Index: DCWoRMS/branches/coolemall/src/simulator/stats/implementation/TaskStats.java
===================================================================
--- DCWoRMS/branches/coolemall/src/simulator/stats/implementation/TaskStats.java	(revision 1362)
+++ DCWoRMS/branches/coolemall/src/simulator/stats/implementation/TaskStats.java	(revision 1396)
@@ -108,5 +108,5 @@
 		long previousTimestamp = 0;		
 		int previousStatus = DCWormsTags.CREATED;
-		for(ExecutionHistoryItem execHistItem: task.getExecHistory()){
+		for(ExecutionHistoryItem execHistItem: task.getExecutionHistory()){
 			if(previousStatus == DCWormsTags.INEXEC){
 				executionTime = executionTime  + (execHistItem.getTimeStamp().getMillis()/1000 - previousTimestamp);
Index: DCWoRMS/branches/coolemall/src/simulator/stats/StatisticsInfo.java
===================================================================
--- DCWoRMS/branches/coolemall/src/simulator/stats/StatisticsInfo.java	(revision 477)
+++ DCWoRMS/branches/coolemall/src/simulator/stats/StatisticsInfo.java	(revision 1396)
@@ -9,11 +9,11 @@
 
 	/** The mean value */
-	protected GSSAccumulator mean;
+	protected DCwormsAccumulator mean;
 	/** The standard deviation value */
-	protected GSSAccumulator stdev;
+	protected DCwormsAccumulator stdev;
 	/** The minimal value */
-	protected GSSAccumulator max;
+	protected DCwormsAccumulator max;
 	/** The maximal value */
-	protected GSSAccumulator min;
+	protected DCwormsAccumulator min;
 	/**
 	 * @param mean
@@ -22,5 +22,5 @@
 	 * @param min
 	 */
-	public StatisticsInfo(GSSAccumulator mean, GSSAccumulator stdev, GSSAccumulator max, GSSAccumulator min) {
+	public StatisticsInfo(DCwormsAccumulator mean, DCwormsAccumulator stdev, DCwormsAccumulator max, DCwormsAccumulator min) {
 		this.mean = mean;
 		this.stdev = stdev;
@@ -31,5 +31,5 @@
 	 * @return the maximal value
 	 */
-	public GSSAccumulator getMax() {
+	public DCwormsAccumulator getMax() {
 		return max;
 	}
@@ -37,5 +37,5 @@
 	 * @return the mean value
 	 */
-	public GSSAccumulator getMean() {
+	public DCwormsAccumulator getMean() {
 		return mean;
 	}
@@ -43,5 +43,5 @@
 	 * @return the minimal value
 	 */
-	public GSSAccumulator getMin() {
+	public DCwormsAccumulator getMin() {
 		return min;
 	}
@@ -49,5 +49,5 @@
 	 * @return the standard deviation value
 	 */
-	public GSSAccumulator getStdev() {
+	public DCwormsAccumulator getStdev() {
 		return stdev;
 	}
Index: DCWoRMS/branches/coolemall/src/simulator/stats/CoolEmAllMetricsCalculator.java
===================================================================
--- DCWoRMS/branches/coolemall/src/simulator/stats/CoolEmAllMetricsCalculator.java	(revision 1331)
+++ DCWoRMS/branches/coolemall/src/simulator/stats/CoolEmAllMetricsCalculator.java	(revision 1396)
@@ -51,5 +51,5 @@
 			
 			double roomPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Room")){
+			for(DCwormsAccumulator acc: metricsData.get("Room")){
 				roomPower = roomPower + acc.getSum();
 			}
@@ -66,5 +66,5 @@
 		try{
 			double itComputingPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Processor")){
+			for(DCwormsAccumulator acc: metricsData.get("Processor")){
 				itComputingPower = itComputingPower + acc.getSum();
 			}
@@ -81,13 +81,13 @@
 		try{
 			double totalSitePower = 0; 
-			for(GSSAccumulator acc: metricsData.get("Rack")){
+			for(DCwormsAccumulator acc: metricsData.get("Rack")){
 				totalSitePower = totalSitePower + acc.getSum();
 			}
 			double nodeComputingPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Node")){
+			for(DCwormsAccumulator acc: metricsData.get("Node")){
 				nodeComputingPower = nodeComputingPower+ acc.getSum();
 			}
 			double itComputingPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Processor")){
+			for(DCwormsAccumulator acc: metricsData.get("Processor")){
 				itComputingPower = itComputingPower + acc.getSum();
 			}
@@ -105,9 +105,9 @@
 		try{
 			double nodeComputingPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Node")){
+			for(DCwormsAccumulator acc: metricsData.get("Node")){
 				nodeComputingPower = nodeComputingPower+ acc.getSum();
 			}
 			double itComputingPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Processor")){
+			for(DCwormsAccumulator acc: metricsData.get("Processor")){
 				itComputingPower = itComputingPower + acc.getSum();
 			}
@@ -126,10 +126,10 @@
 			
 			double roomPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Room")){
+			for(DCwormsAccumulator acc: metricsData.get("Room")){
 				roomPower = roomPower + acc.getSum();
 			}
 			
 			double totalSitePower = 0;
-			for(GSSAccumulator acc: metricsData.get("Rack")){
+			for(DCwormsAccumulator acc: metricsData.get("Rack")){
 				totalSitePower = totalSitePower + acc.getSum();
 			}
@@ -137,9 +137,9 @@
 		
 			double nodeComputingPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Node")){
+			for(DCwormsAccumulator acc: metricsData.get("Node")){
 				nodeComputingPower = nodeComputingPower+ acc.getSum();
 			}
 			double itComputingPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Processor")){
+			for(DCwormsAccumulator acc: metricsData.get("Processor")){
 				itComputingPower = itComputingPower + acc.getSum();
 			}
@@ -159,10 +159,10 @@
 			
 			double roomPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Room")){
+			for(DCwormsAccumulator acc: metricsData.get("Room")){
 				roomPower = roomPower + acc.getSum();
 			}
 			
 			double totalSitePower = 0;
-			for(GSSAccumulator acc: metricsData.get("Rack")){
+			for(DCwormsAccumulator acc: metricsData.get("Rack")){
 				totalSitePower = totalSitePower + acc.getSum();
 			}
@@ -183,5 +183,5 @@
 			for(String key: metricsData.keySet()){
 				if(key.contains("UW_")){
-					for(GSSAccumulator acc: metricsData.get(key)){
+					for(DCwormsAccumulator acc: metricsData.get(key)){
 						usefulWork= usefulWork + acc.getSum();
 					}
@@ -203,5 +203,5 @@
 			for(String key: metricsData.keySet()){
 				if(key.contains("/")){
-					for(GSSAccumulator acc: metricsData.get(key)){
+					for(DCwormsAccumulator acc: metricsData.get(key)){
 						usefulWork= usefulWork + acc.getSum();
 					}
@@ -209,5 +209,5 @@
 			}
 			double totalSitePower = 0; 
-			for(GSSAccumulator acc: metricsData.get("Rack")){
+			for(DCwormsAccumulator acc: metricsData.get("Rack")){
 				totalSitePower = totalSitePower + acc.getSum();
 			}
@@ -228,5 +228,5 @@
 			double maxPower = 0;
 			
-			for(GSSAccumulator acc: metricsData.get("Rack_MAX")){
+			for(DCwormsAccumulator acc: metricsData.get("Rack_MAX")){
 				maxPower = maxPower + acc.getSum();
 			}
@@ -246,5 +246,5 @@
 			double maxPower = 0;
 			
-			for(GSSAccumulator acc: metricsData.get("Room_MAX")){
+			for(DCwormsAccumulator acc: metricsData.get("Room_MAX")){
 				maxPower = maxPower + acc.getSum();
 			}
@@ -263,19 +263,19 @@
 		try{
 			double inletsPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Inlet")){
+			for(DCwormsAccumulator acc: metricsData.get("Inlet")){
 				inletsPower = inletsPower + acc.getSum();
 			}
 			
 			double outletsPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Outlet")){
+			for(DCwormsAccumulator acc: metricsData.get("Outlet")){
 				outletsPower = outletsPower + acc.getSum();
 			}
 			
 			double nodeComputingPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Node")){
+			for(DCwormsAccumulator acc: metricsData.get("Node")){
 				nodeComputingPower = nodeComputingPower+ acc.getSum();
 			}
 			double itComputingPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Processor")){
+			for(DCwormsAccumulator acc: metricsData.get("Processor")){
 				itComputingPower = itComputingPower + acc.getSum();
 			}
@@ -294,5 +294,5 @@
 		try{
 			double roomPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Rack")){
+			for(DCwormsAccumulator acc: metricsData.get("Rack")){
 				roomPower = roomPower + acc.getSum();
 			}
@@ -309,5 +309,5 @@
 		try{
 			double coolingDevicePower = 0;
-			for(GSSAccumulator acc: metricsData.get("CoolingDevice")){
+			for(DCwormsAccumulator acc: metricsData.get("CoolingDevice")){
 				coolingDevicePower = coolingDevicePower + acc.getSum();
 			}
@@ -327,5 +327,5 @@
 			for(String key: metricsData.keySet()){
 				if(key.contains("FlowPump")){
-					for(GSSAccumulator acc: metricsData.get(key)){
+					for(DCwormsAccumulator acc: metricsData.get(key)){
 						flowPump = flowPump + acc.getSum();
 					}
@@ -346,34 +346,34 @@
 		try{
 			double roomPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Room")){
+			for(DCwormsAccumulator acc: metricsData.get("Room")){
 				roomPower = roomPower + acc.getSum();
 			}
 			
 			double totalSitePower = 0;
-			for(GSSAccumulator acc: metricsData.get("Rack")){
+			for(DCwormsAccumulator acc: metricsData.get("Rack")){
 				totalSitePower = totalSitePower + acc.getSum();
 			}
 			
 			double coolingDevicePower = 0;
-			for(GSSAccumulator acc: metricsData.get("CoolingDevice")){
+			for(DCwormsAccumulator acc: metricsData.get("CoolingDevice")){
 				coolingDevicePower = coolingDevicePower + acc.getSum();
 			}
 			
 			double inletsPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Inlet")){
+			for(DCwormsAccumulator acc: metricsData.get("Inlet")){
 				inletsPower = inletsPower + acc.getSum();
 			}
 			
 			double outletsPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Outlet")){
+			for(DCwormsAccumulator acc: metricsData.get("Outlet")){
 				outletsPower = outletsPower + acc.getSum();
 			}
 			
 			double nodeComputingPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Node")){
+			for(DCwormsAccumulator acc: metricsData.get("Node")){
 				nodeComputingPower = nodeComputingPower+ acc.getSum();
 			}
 			double itComputingPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Processor")){
+			for(DCwormsAccumulator acc: metricsData.get("Processor")){
 				itComputingPower = itComputingPower + acc.getSum();
 			}
@@ -394,5 +394,5 @@
 			
 			double roomPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Room")){
+			for(DCwormsAccumulator acc: metricsData.get("Room")){
 				roomPower = roomPower + acc.getSum();
 			}
@@ -411,5 +411,5 @@
 			
 			double roomPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Rack")){
+			for(DCwormsAccumulator acc: metricsData.get("Rack")){
 				roomPower = roomPower + acc.getSum();
 			}
@@ -427,5 +427,5 @@
 			double itComputingEnergy = 0;
 			
-			for(GSSAccumulator acc: metricsData.get("Processor_CALC")){
+			for(DCwormsAccumulator acc: metricsData.get("Processor_CALC")){
 				itComputingEnergy = itComputingEnergy + acc.getSum();
 			}
Index: DCWoRMS/branches/coolemall/src/simulator/stats/DCwormsAccumulator.java
===================================================================
--- DCWoRMS/branches/coolemall/src/simulator/stats/DCwormsAccumulator.java	(revision 1396)
+++ DCWoRMS/branches/coolemall/src/simulator/stats/DCwormsAccumulator.java	(revision 1396)
@@ -0,0 +1,137 @@
+/**
+ * 
+ */
+package simulator.stats;
+
+
+import simulator.DataCenterWorkloadSimulator;
+import gridsim.Accumulator;
+
+/**
+ * This class temporarily adds new methods to {@link Accumulator} class.
+ * 
+ * @author Stanislaw Szczepanowski
+ * 
+ */
+public class DCwormsAccumulator extends Accumulator {
+
+	public DCwormsAccumulator() {
+		super();
+	}
+
+	public DCwormsAccumulator(Accumulator acc) {
+		n_ = acc.getCount();
+		mean_ = acc.getMean();
+		sqrMean_ = acc.getStandardDeviation() + (mean_ * mean_);
+		min_ = acc.getMin();
+		max_ = acc.getMax();
+		last_ = acc.getLast();
+	}
+
+	/**
+	 * This method must be overloaded, since it returns the wrong value.
+	 */
+	public double getStandardDeviation() {
+		return Math.sqrt(getVariance());
+	}
+
+	/**
+	 * Calculates the variance of accumulated items
+	 * 
+	 * @return the Standard Deviation of accumulated items
+	 * @pre $none
+	 * @post $none
+	 */
+	public double getVariance() {
+		return sqrMean_ - (mean_ * mean_);
+	}
+
+	public boolean equals(Object obj) {
+		if (!(obj instanceof DCwormsAccumulator))
+			return false;
+
+		DCwormsAccumulator otherAcc = (DCwormsAccumulator) obj;
+		if (Double.compare(this.last_, otherAcc.last_) != 0)
+			return false;
+		if (Double.compare(this.max_, otherAcc.max_) != 0)
+			return false;
+		if (Double.compare(this.mean_, otherAcc.mean_) != 0)
+			return false;
+		if (Double.compare(this.min_, otherAcc.min_) != 0)
+			return false;
+		if (Double.compare(this.n_, otherAcc.n_) != 0)
+			return false;
+		if (Double.compare(this.sqrMean_, otherAcc.sqrMean_) != 0)
+			return false;
+
+		return true;
+	}
+
+	public String toString() {
+		String accumulatorSeparator = ";";
+		StringBuffer buffer = new StringBuffer(50);
+
+		buffer.append(accumulatorSeparator);
+		buffer.append(DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
+				.getMean()));
+		buffer.append(accumulatorSeparator);
+		buffer.append(DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
+				.getStandardDeviation()));
+		buffer.append(accumulatorSeparator);
+		buffer.append(DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
+				.getVariance()));
+		buffer.append(accumulatorSeparator);
+		buffer.append(DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
+				.getMin()));
+		buffer.append(accumulatorSeparator);
+		buffer.append(DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
+				.getMax()));
+		buffer.append(accumulatorSeparator);
+		buffer.append(DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
+				.getSum()));
+		buffer.append(accumulatorSeparator);
+		buffer.append(DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
+				.getCount()));
+		buffer.append(accumulatorSeparator);
+
+		return buffer.toString();
+	}
+
+	public String toFormatedString() {
+
+		String accumulatorSeparator = "; ";
+		StringBuffer buffer = new StringBuffer(50);
+
+		buffer.append(accumulatorSeparator);
+		buffer.append(String.format("%16s",
+				DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
+						.getMean())));
+		buffer.append(accumulatorSeparator);
+		buffer.append(String.format("%16s",
+				DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
+						.getStandardDeviation())));
+		buffer.append(accumulatorSeparator);
+		buffer.append(String.format("%16s",
+				DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
+						.getVariance())));
+		buffer.append(accumulatorSeparator);
+		buffer.append(String.format("%16s",
+				DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
+						.getMin())));
+		buffer.append(accumulatorSeparator);
+		buffer.append(String.format("%16s",
+				DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
+						.getMax())));
+		buffer.append(accumulatorSeparator);
+		buffer.append(String.format("%16s",
+				DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
+						.getSum())));
+		buffer.append(accumulatorSeparator);
+		buffer.append(String.format("%16s",
+				DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
+						.getCount())));
+		buffer.append(accumulatorSeparator);
+
+		return buffer.toString();
+	}
+}
Index: DCWoRMS/branches/coolemall/src/simulator/stats/DCwormsMetricsCalculator.java
===================================================================
--- DCWoRMS/branches/coolemall/src/simulator/stats/DCwormsMetricsCalculator.java	(revision 1377)
+++ DCWoRMS/branches/coolemall/src/simulator/stats/DCwormsMetricsCalculator.java	(revision 1396)
@@ -5,5 +5,4 @@
 
 import simulator.stats.implementation.MetricsStats;
-import example.energy.coolemall.CoolEmAllTestbedMeasurements;
 
 public class DCwormsMetricsCalculator extends AbstractMetricsCalculator{
@@ -45,5 +44,5 @@
 			
 			double roomPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Room")){
+			for(DCwormsAccumulator acc: metricsData.get("Room")){
 				roomPower = roomPower + acc.getSum();
 			}
@@ -61,5 +60,5 @@
 		try{
 			double itComputingPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Processor")){
+			for(DCwormsAccumulator acc: metricsData.get("Processor")){
 				itComputingPower = itComputingPower + acc.getSum();
 			}
@@ -76,13 +75,13 @@
 		try{
 			double totalSitePower = 0; 
-			for(GSSAccumulator acc: metricsData.get("Rack")){
+			for(DCwormsAccumulator acc: metricsData.get("Rack")){
 				totalSitePower = totalSitePower + acc.getSum();
 			}
 			double nodeComputingPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Node")){
+			for(DCwormsAccumulator acc: metricsData.get("Node")){
 				nodeComputingPower = nodeComputingPower+ acc.getSum();
 			}
 			double itComputingPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Processor")){
+			for(DCwormsAccumulator acc: metricsData.get("Processor")){
 				itComputingPower = itComputingPower + acc.getSum();
 			}
@@ -101,10 +100,10 @@
 			
 			double roomPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Room")){
+			for(DCwormsAccumulator acc: metricsData.get("Room")){
 				roomPower = roomPower + acc.getSum();
 			}
 			
 			double totalSitePower = 0;
-			for(GSSAccumulator acc: metricsData.get("Rack")){
+			for(DCwormsAccumulator acc: metricsData.get("Rack")){
 				totalSitePower = totalSitePower + acc.getSum();
 			}
@@ -112,9 +111,9 @@
 		
 			double nodeComputingPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Node")){
+			for(DCwormsAccumulator acc: metricsData.get("Node")){
 				nodeComputingPower = nodeComputingPower+ acc.getSum();
 			}
 			double itComputingPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Processor")){
+			for(DCwormsAccumulator acc: metricsData.get("Processor")){
 				itComputingPower = itComputingPower + acc.getSum();
 			}
@@ -134,10 +133,10 @@
 			
 			double roomPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Room")){
+			for(DCwormsAccumulator acc: metricsData.get("Room")){
 				roomPower = roomPower + acc.getSum();
 			}
 			
 			double totalSitePower = 0;
-			for(GSSAccumulator acc: metricsData.get("Rack")){
+			for(DCwormsAccumulator acc: metricsData.get("Rack")){
 				totalSitePower = totalSitePower + acc.getSum();
 			}
@@ -158,5 +157,5 @@
 			for(String key: metricsData.keySet()){
 				if(key.contains("/")){
-					for(GSSAccumulator acc: metricsData.get(key)){
+					for(DCwormsAccumulator acc: metricsData.get(key)){
 						usefulWork= usefulWork + acc.getSum();
 					}
@@ -178,5 +177,5 @@
 			for(String key: metricsData.keySet()){
 				if(key.contains("/")){
-					for(GSSAccumulator acc: metricsData.get(key)){
+					for(DCwormsAccumulator acc: metricsData.get(key)){
 						usefulWork= usefulWork + acc.getSum();
 					}
@@ -184,5 +183,5 @@
 			}
 			double totalSitePower = 0; 
-			for(GSSAccumulator acc: metricsData.get("Rack")){
+			for(DCwormsAccumulator acc: metricsData.get("Rack")){
 				totalSitePower = totalSitePower + acc.getSum();
 			}
@@ -204,5 +203,5 @@
 			double maxPower = 0;
 			
-			for(GSSAccumulator acc: metricsData.get("Room_MAX")){
+			for(DCwormsAccumulator acc: metricsData.get("Room_MAX")){
 				maxPower = maxPower + acc.getSum();
 			}
@@ -221,5 +220,5 @@
 		try{
 			double coolingDevicePower = 0;
-			for(GSSAccumulator acc: metricsData.get("CoolingDevice")){
+			for(DCwormsAccumulator acc: metricsData.get("CoolingDevice")){
 				coolingDevicePower = coolingDevicePower + acc.getSum();
 			}
@@ -237,5 +236,5 @@
 			
 			double roomPower = 0;
-			for(GSSAccumulator acc: metricsData.get("Room")){
+			for(DCwormsAccumulator acc: metricsData.get("Room")){
 				roomPower = roomPower + acc.getSum();
 			}
@@ -252,5 +251,5 @@
 		try{
 			double itComputingEnergy = 0;
-			for(GSSAccumulator acc: metricsData.get("Processor_CALC")){
+			for(DCwormsAccumulator acc: metricsData.get("Processor_CALC")){
 				itComputingEnergy = itComputingEnergy + acc.getSum();
 			}
Index: DCWoRMS/branches/coolemall/src/simulator/stats/SimulationStatistics.java
===================================================================
--- DCWoRMS/branches/coolemall/src/simulator/stats/SimulationStatistics.java	(revision 477)
+++ DCWoRMS/branches/coolemall/src/simulator/stats/SimulationStatistics.java	(revision 1396)
@@ -44,5 +44,5 @@
 	public String getOutputFolderName();
 
-	public GSSAccumulator getStats(String resourcesTotalLoad);
+	public DCwormsAccumulator getStats(String resourcesTotalLoad);
 
 	public boolean accumulatedStats();
Index: DCWoRMS/branches/coolemall/src/simulator/stats/MetricsCalculator.java
===================================================================
--- DCWoRMS/branches/coolemall/src/simulator/stats/MetricsCalculator.java	(revision 1299)
+++ DCWoRMS/branches/coolemall/src/simulator/stats/MetricsCalculator.java	(revision 1396)
@@ -10,7 +10,7 @@
 	public List<MetricsStats> calulateMetrics();
 	
-	public void addMetricsData(String resourceTypeName, GSSAccumulator resourceEnergyAccumulator);
+	public void addMetricsData(String resourceTypeName, DCwormsAccumulator resourceEnergyAccumulator);
 	
-	public Map<String, List<GSSAccumulator>> getMetricsData();
+	public Map<String, List<DCwormsAccumulator>> getMetricsData();
 	
 }
Index: DCWoRMS/branches/coolemall/src/simulator/stats/GSSAccumulator.java
===================================================================
--- DCWoRMS/branches/coolemall/src/simulator/stats/GSSAccumulator.java	(revision 477)
+++ 	(revision )
@@ -1,138 +1,0 @@
-/**
- * 
- */
-package simulator.stats;
-
-import java.io.PrintStream;
-
-import simulator.DataCenterWorkloadSimulator;
-import gridsim.Accumulator;
-
-/**
- * This class temporarily adds new methods to {@link Accumulator} class.
- * 
- * @author Stanislaw Szczepanowski
- * 
- */
-public class GSSAccumulator extends Accumulator {
-
-	public GSSAccumulator() {
-		super();
-	}
-
-	public GSSAccumulator(Accumulator acc) {
-		n_ = acc.getCount();
-		mean_ = acc.getMean();
-		sqrMean_ = acc.getStandardDeviation() + (mean_ * mean_);
-		min_ = acc.getMin();
-		max_ = acc.getMax();
-		last_ = acc.getLast();
-	}
-
-	/**
-	 * This method must be overloaded, since it returns the wrong value.
-	 */
-	public double getStandardDeviation() {
-		return Math.sqrt(getVariance());
-	}
-
-	/**
-	 * Calculates the variance of accumulated items
-	 * 
-	 * @return the Standard Deviation of accumulated items
-	 * @pre $none
-	 * @post $none
-	 */
-	public double getVariance() {
-		return sqrMean_ - (mean_ * mean_);
-	}
-
-	public boolean equals(Object obj) {
-		if (!(obj instanceof GSSAccumulator))
-			return false;
-
-		GSSAccumulator otherAcc = (GSSAccumulator) obj;
-		if (Double.compare(this.last_, otherAcc.last_) != 0)
-			return false;
-		if (Double.compare(this.max_, otherAcc.max_) != 0)
-			return false;
-		if (Double.compare(this.mean_, otherAcc.mean_) != 0)
-			return false;
-		if (Double.compare(this.min_, otherAcc.min_) != 0)
-			return false;
-		if (Double.compare(this.n_, otherAcc.n_) != 0)
-			return false;
-		if (Double.compare(this.sqrMean_, otherAcc.sqrMean_) != 0)
-			return false;
-
-		return true;
-	}
-
-	public String toString() {
-		String accumulatorSeparator = ";";
-		StringBuffer buffer = new StringBuffer(50);
-
-		buffer.append(accumulatorSeparator);
-		buffer.append(DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
-				.getMean()));
-		buffer.append(accumulatorSeparator);
-		buffer.append(DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
-				.getStandardDeviation()));
-		buffer.append(accumulatorSeparator);
-		buffer.append(DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
-				.getVariance()));
-		buffer.append(accumulatorSeparator);
-		buffer.append(DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
-				.getMin()));
-		buffer.append(accumulatorSeparator);
-		buffer.append(DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
-				.getMax()));
-		buffer.append(accumulatorSeparator);
-		buffer.append(DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
-				.getSum()));
-		buffer.append(accumulatorSeparator);
-		buffer.append(DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
-				.getCount()));
-		buffer.append(accumulatorSeparator);
-
-		return buffer.toString();
-	}
-
-	public String toFormatedString() {
-
-		String accumulatorSeparator = "; ";
-		StringBuffer buffer = new StringBuffer(50);
-
-		buffer.append(accumulatorSeparator);
-		buffer.append(String.format("%16s",
-				DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
-						.getMean())));
-		buffer.append(accumulatorSeparator);
-		buffer.append(String.format("%16s",
-				DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
-						.getStandardDeviation())));
-		buffer.append(accumulatorSeparator);
-		buffer.append(String.format("%16s",
-				DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
-						.getVariance())));
-		buffer.append(accumulatorSeparator);
-		buffer.append(String.format("%16s",
-				DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
-						.getMin())));
-		buffer.append(accumulatorSeparator);
-		buffer.append(String.format("%16s",
-				DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
-						.getMax())));
-		buffer.append(accumulatorSeparator);
-		buffer.append(String.format("%16s",
-				DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
-						.getSum())));
-		buffer.append(accumulatorSeparator);
-		buffer.append(String.format("%16s",
-				DataCenterWorkloadSimulator.DFAULT_NUMBER_FORMAT.format(this
-						.getCount())));
-		buffer.append(accumulatorSeparator);
-
-		return buffer.toString();
-	}
-}
Index: DCWoRMS/branches/coolemall/src/simulator/reader/ResourceReader.java
===================================================================
--- DCWoRMS/branches/coolemall/src/simulator/reader/ResourceReader.java	(revision 1374)
+++ DCWoRMS/branches/coolemall/src/simulator/reader/ResourceReader.java	(revision 1396)
@@ -26,5 +26,4 @@
 import schedframe.Parameters;
 import schedframe.SimulatedEnvironment;
-import schedframe.exceptions.ResourceException;
 import schedframe.resources.CoolEmAllResourceFactory;
 import schedframe.resources.Resource;
Index: DCWoRMS/branches/coolemall/src/simulator/ConfigurationOptions.java
===================================================================
--- DCWoRMS/branches/coolemall/src/simulator/ConfigurationOptions.java	(revision 1299)
+++ DCWoRMS/branches/coolemall/src/simulator/ConfigurationOptions.java	(revision 1396)
@@ -187,5 +187,5 @@
 	
 	public String [] resForEnergyChart;
-	public String [] resForAirFlowChart;
+	public String [] resForAirflowChart;
 	public String [] resForTemperatureChart;
 	public String [] resForUtilizationChart;
@@ -195,5 +195,5 @@
 	public double inletRoomAirTempeature;
 	public double ambientAirTempeature;
-	public double airFlowVolume;
+	public double airflowVolume;
 	public double alpha;
 	
@@ -334,6 +334,6 @@
 		
 		try {
-			co.resForAirFlowChart = bundle.getString(CREATEDIAGRAMS_AIRFLOW).split(";");
-			if(co.resForAirFlowChart.length > 0){
+			co.resForAirflowChart = bundle.getString(CREATEDIAGRAMS_AIRFLOW).split(";");
+			if(co.resForAirflowChart.length > 0){
 				co.creatediagrams_resairflow = true;
 			}
@@ -416,7 +416,7 @@
 		
 		try {
-			co.airFlowVolume = Double.valueOf(bundle.getString(AIR_FLOW_VOLUME)).doubleValue();
-		} catch(MissingResourceException e){
-			co.airFlowVolume = -1;
+			co.airflowVolume = Double.valueOf(bundle.getString(AIR_FLOW_VOLUME)).doubleValue();
+		} catch(MissingResourceException e){
+			co.airflowVolume = -1;
 		}
 		
@@ -427,5 +427,5 @@
 		}
 		
-		ConfigurationOptions.coolingData = new CoolingModelData(co.pressureDrop, co.outletRoomAirTempeature, co.inletRoomAirTempeature, co.ambientAirTempeature, co.airFlowVolume, co.alpha);
+		ConfigurationOptions.coolingData = new CoolingModelData(co.pressureDrop, co.outletRoomAirTempeature, co.inletRoomAirTempeature, co.ambientAirTempeature, co.airflowVolume, co.alpha);
 		return co;
 	}
