Skip to content

Commit 71ca8a6

Browse files
committed
Refactoring
Signed-off-by: Manoel Campos <[email protected]>
1 parent 30ae7c2 commit 71ca8a6

File tree

6 files changed

+75
-90
lines changed

6 files changed

+75
-90
lines changed

src/main/java/org/cloudsimplus/automation/CloudSimulation.java

Lines changed: 48 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@
2424

2525
import ch.qos.logback.classic.Level;
2626
import cloudreports.models.*;
27-
import org.cloudsimplus.allocationpolicies.VmAllocationPolicy;
2827
import org.cloudsimplus.brokers.DatacenterBroker;
2928
import org.cloudsimplus.brokers.DatacenterBrokerSimple;
3029
import org.cloudsimplus.builders.tables.CloudletsTableBuilder;
@@ -35,15 +34,11 @@
3534
import org.cloudsimplus.datacenters.DatacenterSimple;
3635
import org.cloudsimplus.hosts.Host;
3736
import org.cloudsimplus.hosts.HostSimple;
38-
import org.cloudsimplus.provisioners.ResourceProvisioner;
3937
import org.cloudsimplus.resources.DatacenterStorage;
4038
import org.cloudsimplus.resources.Pe;
4139
import org.cloudsimplus.resources.PeSimple;
4240
import org.cloudsimplus.resources.SanStorage;
43-
import org.cloudsimplus.schedulers.cloudlet.CloudletScheduler;
44-
import org.cloudsimplus.schedulers.vm.VmScheduler;
4541
import org.cloudsimplus.util.Log;
46-
import org.cloudsimplus.utilizationmodels.UtilizationModel;
4742
import org.cloudsimplus.vms.Vm;
4843
import org.cloudsimplus.vms.VmSimple;
4944

@@ -98,9 +93,6 @@ public CloudSimulation(YamlCloudScenario scenario, final String label) {
9893
this.datacenters = new ArrayList<>();
9994
this.logEnabled = false;
10095

101-
this.vmsToBrokerMap = new HashMap<>();
102-
this.cloudletsToBrokerMap = new HashMap<>();
103-
10496
this.brokers = new HashMap<>();
10597
this.vmsToBrokerMap = new HashMap<>();
10698
this.cloudletsToBrokerMap = new HashMap<>();
@@ -115,34 +107,33 @@ public CloudSimulation(YamlCloudScenario scenario, final String label) {
115107
*/
116108
private Map<DatacenterBroker, CustomerRegistry> createBrokers() {
117109
final int totalBrokerAmount = scenario.getCustomers().stream().mapToInt(CustomerRegistry::getAmount).sum();
118-
final Map<DatacenterBroker, CustomerRegistry> list = new HashMap<>(totalBrokerAmount);
119-
int brokerCount = 0;
120-
for (CustomerRegistry cr: scenario.getCustomers()) {
110+
final var map = new HashMap<DatacenterBroker, CustomerRegistry>(totalBrokerAmount);
111+
for (final CustomerRegistry cr: scenario.getCustomers()) {
121112
for (int i = 0; i < cr.getAmount(); i++) {
122-
list.put(new DatacenterBrokerSimple(cloudsimplus), cr);
113+
map.put(new DatacenterBrokerSimple(cloudsimplus), cr);
123114
}
124115
}
125116

126-
return list;
117+
return map;
127118
}
128119

129120
/**
130121
* Creates the list of VMs in CloudSim Plus for each customer represented by a {@link DatacenterBroker}.
131122
*
132123
* @param crMap a Map between a {@link DatacenterBroker} representing a customer in CloudSim Plus
133124
* and the {@link CustomerRegistry} object used to create VMs and Cloudlets for such a broker.
134-
* @return the a map containing the list of created VMs for each customer (DatacenterBroker).
125+
* @return a map containing the list of created VMs for each customer (DatacenterBroker).
135126
* @see #createBrokers()
136127
*/
137128
private Map<DatacenterBroker, List<Vm>> createVmListForAllBrokers(
138129
final Map<DatacenterBroker, CustomerRegistry> crMap)
139130
{
140-
final Map<DatacenterBroker, List<Vm>> vmMap = new HashMap<>(crMap.size());
131+
final var vmMap = new HashMap<DatacenterBroker, List<Vm>>(crMap.size());
141132

142133
int createdVms = 0;
143-
for (DatacenterBroker broker : crMap.keySet()) {
144-
List<Vm> vms = createVmListForOneBroker(broker, crMap.get(broker), createdVms++);
145-
vmMap.put(broker, vms);
134+
for (var broker : crMap.keySet()) {
135+
final var vmList = createVmListForOneBroker(broker, crMap.get(broker), createdVms++);
136+
vmMap.put(broker, vmList);
146137
}
147138

148139
return vmMap;
@@ -154,7 +145,7 @@ private Map<DatacenterBroker, List<Vm>> createVmListForAllBrokers(
154145
* @param broker {@link DatacenterBroker} representing a customer in CloudSim Plus, for who VMs will be created
155146
* @param cr {@link CustomerRegistry} object used to create VMs and Cloudlets for such a broker
156147
* @param createdVms the number of VMs already created
157-
* @return the a map containing the list of created VMs for the given customer (DatacenterBroker)
148+
* @return a map containing the list of created VMs for the given customer (DatacenterBroker)
158149
* @see #createBrokers()
159150
*/
160151
private List<Vm> createVmListForOneBroker(
@@ -163,21 +154,21 @@ private List<Vm> createVmListForOneBroker(
163154
final int createdVms) throws RuntimeException
164155
{
165156
final int totalVmsAmount = cr.getVms().stream().mapToInt(VmRegistry::getAmount).sum();
166-
final List<Vm> list = new ArrayList<>(totalVmsAmount);
157+
final var vmList = new ArrayList<Vm>(totalVmsAmount);
167158
for (VmRegistry vmr : cr.getVms()) {
168159
for (int i = 0; i < vmr.getAmount(); i++) {
169-
list.add(createVm(createdVms+i, broker, vmr));
160+
vmList.add(createVm(createdVms+i, broker, vmr));
170161
}
171162
}
172163

173-
return list;
164+
return vmList;
174165
}
175166

176167
private Vm createVm(final int id,
177168
final DatacenterBroker broker,
178169
final VmRegistry vmr) throws RuntimeException
179170
{
180-
CloudletScheduler scheduler = PolicyLoader.cloudletScheduler(vmr);
171+
final var scheduler = PolicyLoader.cloudletScheduler(vmr);
181172
final Vm vm = new VmSimple(id, vmr.getMips(), vmr.getPes());
182173
vm
183174
.setRam(vmr.getRam())
@@ -199,22 +190,22 @@ private Vm createVm(final int id,
199190
private Map<DatacenterBroker, List<Cloudlet>> createCloudlets(
200191
final Map<DatacenterBroker, CustomerRegistry> brokerRegistries)
201192
{
202-
final Map<DatacenterBroker, List<Cloudlet>> map = new HashMap<>(brokerRegistries.size());
193+
final var map = new HashMap<DatacenterBroker, List<Cloudlet>>(brokerRegistries.size());
203194
int createdCloudlets = 0;
204-
for (DatacenterBroker broker : brokerRegistries.keySet()) {
195+
for (var broker : brokerRegistries.keySet()) {
205196
final int cloudletsNum =
206197
brokerRegistries.get(broker)
207198
.getCloudlets()
208199
.stream()
209200
.mapToInt(CloudletRegistry::getAmount)
210201
.sum();
211-
List<Cloudlet> cloudlets = new ArrayList<>(cloudletsNum);
202+
final var cloudletList = new ArrayList<Cloudlet>(cloudletsNum);
212203
for (CloudletRegistry up : brokerRegistries.get(broker).getCloudlets()) {
213204
for (int i = 0; i < up.getAmount(); i++) {
214-
cloudlets.add(createCloudlet(++createdCloudlets, up, broker));
205+
cloudletList.add(createCloudlet(++createdCloudlets, up, broker));
215206
}
216207
}
217-
map.put(broker, cloudlets);
208+
map.put(broker, cloudletList);
218209
}
219210

220211
return map;
@@ -225,11 +216,11 @@ private Cloudlet createCloudlet(
225216
final CloudletRegistry up,
226217
final DatacenterBroker broker) throws RuntimeException
227218
{
228-
UtilizationModel cpuUtilization = PolicyLoader.utilizationModel(up.getUtilizationModelCpu());
229-
UtilizationModel ramUtilization = PolicyLoader.utilizationModel(up.getUtilizationModelRam());
230-
UtilizationModel bwUtilization = PolicyLoader.utilizationModel(up.getUtilizationModelBw());
219+
final var cpuUtilization = PolicyLoader.utilizationModel(up.getUtilizationModelCpu());
220+
final var ramUtilization = PolicyLoader.utilizationModel(up.getUtilizationModelRam());
221+
final var bwUtilization = PolicyLoader.utilizationModel(up.getUtilizationModelBw());
231222

232-
final Cloudlet cloudlet = new CloudletSimple(id, up.getLength(), up.getPes());
223+
final var cloudlet = new CloudletSimple(id, up.getLength(), up.getPes());
233224
cloudlet
234225
.setFileSize(up.getFileSize())
235226
.setOutputSize(up.getOutputSize())
@@ -267,7 +258,7 @@ private List<Datacenter> createDatacenters() throws IllegalArgumentException {
267258
String datacenterName;
268259
int datacenterCount = 0;
269260
final int datacenterNumber = scenario.getDatacenters().stream().mapToInt(DatacenterRegistry::getAmount).sum();
270-
final List<Datacenter> datacenterList = new ArrayList<>(datacenterNumber);
261+
final var datacenterList = new ArrayList<Datacenter>(datacenterNumber);
271262
for (DatacenterRegistry dcr : scenario.getDatacenters()) {
272263
int hostCount = 0;
273264
for (int i = 0; i < dcr.getAmount(); i++) {
@@ -277,7 +268,7 @@ private List<Datacenter> createDatacenters() throws IllegalArgumentException {
277268
hostCount += hostList.size();
278269

279270
try {
280-
Datacenter dc = createDataCenter(datacenterName, dcr, hostList);
271+
final var dc = createDataCenter(datacenterName, dcr, hostList);
281272
datacenterList.add(dc);
282273
} catch (Exception e) {
283274
e.printStackTrace(System.out);
@@ -304,7 +295,7 @@ private List<Host> createHosts(
304295
{
305296
int hostId;
306297
final int hostNumber = dcr.getHosts().stream().mapToInt(HostRegistry::getAmount).sum();
307-
final List<Host> hostList = new ArrayList<>(hostNumber);
298+
final var hostList = new ArrayList<Host>(hostNumber);
308299
for (HostRegistry hr : dcr.getHosts()) {
309300
for (int i = 0; i < hr.getAmount(); i++) {
310301
List<Pe> peList = createHostProcessingElements(hr);
@@ -330,22 +321,22 @@ private Datacenter createDataCenter(
330321
final List<Host> hostList)
331322
{
332323

333-
final List<SanStorage> storageList = createSan(dcr);
334-
final VmAllocationPolicy allocationPolicy = PolicyLoader.vmAllocationPolicy(dcr);
324+
final var storageList = createSan(dcr);
325+
final var allocationPolicy = PolicyLoader.vmAllocationPolicy(dcr);
335326

336-
Datacenter dc = new DatacenterSimple(cloudsimplus, hostList, allocationPolicy);
327+
final var dc = new DatacenterSimple(cloudsimplus, hostList, allocationPolicy);
337328
dc.setSchedulingInterval(dcr.getSchedulingInterval())
338329
.setDatacenterStorage(new DatacenterStorage(storageList));
339330
setDatacenterCharacteristics(dc, dcr);
340331
return dc;
341332
}
342333

343334
private Host createHost(final int hostId, final HostRegistry hr, final List<Pe> peList) throws RuntimeException {
344-
ResourceProvisioner ramProvisioner = PolicyLoader.newResourceProvisioner(hr);
345-
ResourceProvisioner bwProvisioner = PolicyLoader.newResourceProvisioner(hr);
346-
VmScheduler vmScheduler = PolicyLoader.vmScheduler(hr.getVmScheduler());
335+
final var ramProvisioner = PolicyLoader.newResourceProvisioner(hr);
336+
final var bwProvisioner = PolicyLoader.newResourceProvisioner(hr);
337+
final var vmScheduler = PolicyLoader.vmScheduler(hr.getVmScheduler());
347338

348-
Host host = new HostSimple(hr.getRam(), hr.getBw(), hr.getStorage(), peList);
339+
final var host = new HostSimple(hr.getRam(), hr.getBw(), hr.getStorage(), peList);
349340
host
350341
.setRamProvisioner(ramProvisioner)
351342
.setBwProvisioner(bwProvisioner)
@@ -372,13 +363,13 @@ private int generateHostId(final HostRegistry hr, final int currentHostCount) {
372363
* @see YamlCloudScenario#getDatacenters()
373364
*/
374365
private List<SanStorage> createSan(final DatacenterRegistry dcr) throws IllegalArgumentException {
375-
final List<SanStorage> list = new ArrayList<>(dcr.getSans().size());
366+
final var storageList = new ArrayList<SanStorage>(dcr.getSans().size());
376367
for (SanStorageRegistry sr : dcr.getSans()) {
377-
SanStorage san = new SanStorage(sr.getCapacity(), sr.getBandwidth(), sr.getNetworkLatency());
378-
list.add(san);
368+
final var san = new SanStorage(sr.getCapacity(), sr.getBandwidth(), sr.getNetworkLatency());
369+
storageList.add(san);
379370
}
380371

381-
return list;
372+
return storageList;
382373
}
383374

384375
/**
@@ -390,8 +381,7 @@ private List<SanStorage> createSan(final DatacenterRegistry dcr) throws IllegalA
390381
* @param dcr The abstract DatacenterRegistry information, obtained from the YAML file,
391382
* to be used to define the Datacenter characteristics.
392383
*/
393-
private void setDatacenterCharacteristics(
394-
Datacenter dc, final DatacenterRegistry dcr)
384+
private void setDatacenterCharacteristics(final Datacenter dc, final DatacenterRegistry dcr)
395385
{
396386
dc.getCharacteristics()
397387
.setArchitecture(dcr.getArchitecture())
@@ -411,12 +401,12 @@ private void setDatacenterCharacteristics(
411401
* @return Returns the list of PEs created.
412402
*/
413403
private List<Pe> createHostProcessingElements(final HostRegistry hr) {
414-
final List<Pe> list = new ArrayList<>(hr.getPes());
404+
final var peList = new ArrayList<Pe>(hr.getPes());
415405
for (int i = 0; i < hr.getPes(); i++) {
416-
list.add(new PeSimple(hr.getMips(), PolicyLoader.newPeProvisioner(hr)));
406+
peList.add(new PeSimple(hr.getMips(), PolicyLoader.newPeProvisioner(hr)));
417407
}
418408

419-
return list;
409+
return peList;
420410
}
421411

422412
/**
@@ -437,18 +427,18 @@ public void run() {
437427
this.vmsToBrokerMap = createVmListForAllBrokers(brokers);
438428
this.cloudletsToBrokerMap = createCloudlets(brokers);
439429

440-
for (DatacenterBroker broker : brokers.keySet()) {
430+
for (final var broker : brokers.keySet()) {
441431
broker.submitVmList(vmsToBrokerMap.get(broker));
442432
broker.submitCloudletList(cloudletsToBrokerMap.get(broker));
443433
}
444434

445435
cloudsimplus.start();
446436

447437
if(showResults) {
448-
for (DatacenterBroker broker : brokers.keySet()) {
449-
List<Cloudlet> list = broker.getCloudletFinishedList();
450-
list.sort(comparingLong((Cloudlet c) -> c.getVm().getId()).thenComparingLong(Cloudlet::getId));
451-
new CloudletsTableBuilder(list)
438+
for (final var broker : brokers.keySet()) {
439+
final var cloudletList = broker.getCloudletFinishedList();
440+
cloudletList.sort(comparingLong((Cloudlet c) -> c.getVm().getId()).thenComparingLong(Cloudlet::getId));
441+
new CloudletsTableBuilder(cloudletList)
452442
.setTitle(broker.getName())
453443
.build();
454444
}
@@ -607,7 +597,7 @@ public boolean isLogEnabled() {
607597
return logEnabled;
608598
}
609599

610-
public CloudSimulation setLogEnabled(boolean logEnabled) {
600+
public CloudSimulation setLogEnabled(final boolean logEnabled) {
611601
this.logEnabled = logEnabled;
612602
return this;
613603
}
@@ -616,7 +606,7 @@ public boolean isPrintScenariosConfiguration() {
616606
return printScenariosConfiguration;
617607
}
618608

619-
public CloudSimulation setPrintScenariosConfiguration(boolean printScenariosConfiguration) {
609+
public CloudSimulation setPrintScenariosConfiguration(final boolean printScenariosConfiguration) {
620610
this.printScenariosConfiguration = printScenariosConfiguration;
621611
return this;
622612
}

src/main/java/org/cloudsimplus/automation/LogUtils.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ public class LogUtils {
3636
private static String colSeparator="|\t";
3737

3838
/**
39-
* Print a array of objects like a table.
39+
* Print an array of objects like a table.
4040
* @param captions The captions of the table
4141
* @param dataArray The data to be printed.
4242
* @see LogUtils#printCaptions(java.lang.String[])

0 commit comments

Comments
 (0)