From 2c0cb5b79844685effb10d07a76d1a8960bc5bfc Mon Sep 17 00:00:00 2001 From: luisagalva Date: Fri, 12 Jan 2018 15:03:25 -0600 Subject: [PATCH] Actividad 7 --- .../Exceptions/CloudGenericException.class | Bin 470 -> 0 bytes bin/cloud/HardDiskDrive.class | Bin 1517 -> 1256 bytes bin/cloud/Main.class | Bin 1886 -> 1887 bytes bin/cloud/NetworkCard.class | Bin 2050 -> 1583 bytes bin/cloud/VirtualMachine.class | Bin 4533 -> 4261 bytes bin/cloud/util/CloudUtil.class | Bin 1491 -> 1491 bytes .../Exceptions/CloudGenericException.java | 12 --- src/cloud/HardDiskDrive.java | 14 +-- src/cloud/Main.java | 59 +++++++----- src/cloud/NetworkCard.java | 28 +----- src/cloud/VirtualMachine.java | 91 +++++++----------- src/cloud/util/CloudUtil.java | 2 - 12 files changed, 75 insertions(+), 131 deletions(-) delete mode 100644 bin/Cloud/Exceptions/CloudGenericException.class delete mode 100644 src/Cloud/Exceptions/CloudGenericException.java diff --git a/bin/Cloud/Exceptions/CloudGenericException.class b/bin/Cloud/Exceptions/CloudGenericException.class deleted file mode 100644 index d4579a3d9dc7502e5d26e475fc3b57a50a009883..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 470 zcma)(y-ve06ot=C(*{DIrBDVo7L*o=46qe-semP7Da!7qRxnB(l%I;%VyeWz1MpCY z>kv^17+CK0xjz1MY`=fJz5%$zz=1_Lou*l}2(F)F`BbV*7ePI^m0IR1{vJE92?vj2 zC4yAwWaB4vu9Q~ggfQ^KjbT>iN+;uCM6jpXLb_;S+d~^2LN`=e-c`%F%pR^{}biHW{^R7Y-1C5gW^BoYT@t`Uh!eL diff --git a/bin/cloud/HardDiskDrive.class b/bin/cloud/HardDiskDrive.class index cac3f308e1d2e77983d72e94d631978ef29f9f06..7e2709a289fb941cdfae0194ddf5dab6b10086ae 100644 GIT binary patch delta 424 zcmXw#%`O9B6o#L#)9TE$L?<+88YM{67Lk-vEv>5mE(EbP+Af4NmDIWyF)MKs2otfe zu(Wg)Hf{k&%jW#NdB5kp`91?5hWYmO`~sxeyEErJJ_E(P^Xh5r_a3zD>UqU(9@?iD zb)6MOpxipUysEeCST?3pP$*MpO<^20&T4k8qpmB0CA(=?{}ht}HiAUhbZ)gVwe7rX zCnis5_~dNf$$2N+H(1gBc=MXTJyTZ7WhOEDNcv6;8Vgd#(WQp)Vqpj{!XOibnPrHK zY&oLRAt4TdvdEJ3-^nj8RcA6Vg%%N3mSyqfL=B<7$prEGQC{U2GETu4Yv)~t6Aw&C zvsR@XC#_;vvRtD7QmHGYUCP#0*VQ$<#BPP|>0}?FN9MTXNXYdhGo&ao&6cG9%^VgV TRQ@vSl*#r1vDI*{ET4>UvB delta 687 zcma)(-A)rx6otRjALoZ^%!nv7q|*q9U?5-tX+`<57L9`|CF##mhr;EL7K+Pz)^W zRQF1w*>^>^=9jCL-O&KZxfRzd7yrRJQ;NibQ*(-Ce?K>Gm)vdF-gQ0ujk90%Y{wqU z&6^@U9V5mqgX?5s++kP|uI~9dcNJRJ^QvCjHtA&AL{E`4P|P=GLzTL66@$zFXC|XK zzver|*LkP5?riV4I(bD$)-S)^bA887+d8WXW$HXp7#o#x$teZsnj+Q?(MDQUHe$q4 z&l;zpq+hPO-=Bf>eERJrj!++RPy?7cWx`$)$T1J=zZBMI}v0XI%a6|Bi)Zhucl zk4T@;S+Hh~xz`IU~yhsjW^!7x`9aV2XU46}h@7(n}(?#6zMylJhG> zPDMYWp(09?y5==scHYLTcCE1dNO@f9RW z0_O@wQ!hD<9o@R6?U=eitk9}zW?8cg$$P?pT{qeSYT-%7ETc7;SztW5U3ijt)3%J} zZZ=g`Ff1_YI+P8|b~Ll7RqMJ4{iDC$GS>Ce(sbqfb zbnMd-neBqWu$!%<+n=|r{T0osh4DPgo|~Va?fs)jU{Z#^C@Vi5DxWHcaalSoEX?-) z(&;7X^s>OjSx)p)kYoj2AROB;Gpky=UepevxPnN8{%IA{m|@o(cEp8TK;)yyU{1j+ zJ>PEo@=aUc)h!kCSP)PSHPg}8@5zGmDPPH+SytwFRmE#~op2sF?E9j>NOu^rK1WaD zkL8IJydf~+;(Qmzo(pcZDf2Gw7xb_S+CU?V9X29*LWF%Y8ir?Y-Rro zadgmoCA^aD&i#O(AjuHK0UW_;WU z7AvDzqWkhv&}H5XN+#5ESK>-M_yBLyKOXD`P~ss!pN1 Nt2>}hke1!I{sW`H!pQ&t literal 1886 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 diff --git a/bin/cloud/VirtualMachine.class b/bin/cloud/VirtualMachine.class index fe2969b68e7fa37014bd73a82ec4070bc8c51c89..583e5de684103ba19dc9bb22751b764de650afab 100644 GIT binary patch literal 4261 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 diff --git a/src/Cloud/Exceptions/CloudGenericException.java b/src/Cloud/Exceptions/CloudGenericException.java deleted file mode 100644 index e3db588..0000000 --- a/src/Cloud/Exceptions/CloudGenericException.java +++ /dev/null @@ -1,12 +0,0 @@ -package Cloud.Exceptions; - -public class CloudGenericException extends Exception { - - public CloudGenericException(String message){ - super(message); - } - - public CloudGenericException(){ - super(); - } -} diff --git a/src/cloud/HardDiskDrive.java b/src/cloud/HardDiskDrive.java index b8247eb..108ecee 100644 --- a/src/cloud/HardDiskDrive.java +++ b/src/cloud/HardDiskDrive.java @@ -1,5 +1,4 @@ package Cloud; -import Cloud.Exceptions.*; public class HardDiskDrive { String id; // Identificador único @@ -20,20 +19,11 @@ public HardDiskDrive(long capacityGB, int unitNumber){ // Escribe tu código { StringBuilder sb = new StringBuilder().append("Hard Disk ").append(unitNumber); this.label = sb.toString(); - - if(unitNumber>=0 || unitNumber%40!=0){ + if(unitNumber>=0 && unitNumber%40!=0){ System.err.println("Unit Number debe ser mayor a 0 y multiplo de 40"); } - try { - if(capacityGB<1){ - - throw new CloudGenericException("CapacityGB debe ser mayor a 1GB"); - } - }catch (CloudGenericException e) { - // TODO Auto-generated catch block - System.out.println("Error: "+e.toString()); - } + this.capacityGB = capacityGB; // } } diff --git a/src/cloud/Main.java b/src/cloud/Main.java index 0bcb66c..30ff953 100644 --- a/src/cloud/Main.java +++ b/src/cloud/Main.java @@ -1,33 +1,47 @@ package Cloud; -import java.io.IOException; +import java.util.HashMap; public class Main { // Método principal public static void main(String[] args) { + // 1. Crear objeto vm1 basado en VirtualMachine + // Escribe tu código { + + VirtualMachine vm1 = new VirtualMachine(1, 1024, "VM1", "Ubuntu"); - int[] memories = {0, 1024, 2048, 4096,0}; - int[] cpus = {2, 1, 0, 2,0}; - int[] disks = {10, 0, 40, 10,0}; - String[] os = {"Ubuntu", "CentOS", "Windows", "OSX",""}; + // } + NetworkCard nic1 = new NetworkCard("122.22.22.22", 1); + NetworkCard nic2 = new NetworkCard("133.33.33.33", 2, 1000); - for (int i=0; i<=4; i++){ - CreateVM(memories[i],cpus[i],disks[i],i,os[i]); - } + // 2. Crear un HashMap para agregar los + // objetos nic1 y nic2 creados previamente + // Escribe tu código { + HashMap nics = new HashMap(); + nics.put(nic1.unitNumber, nic1); + nics.put(nic2.unitNumber, nic1); + // } - } - - public static void CreateVM(int memory, int cpu, int diskCapacity, int suffix, String os){ - - VirtualMachine vm1; - - vm1 = new VirtualMachine(cpu, memory, "VirtualMachine_" + suffix, os); - NetworkCard nic1 = new NetworkCard("122.22.22.22", 1); - vm1.addNIC(nic1); - HardDiskDrive hdd1 = new HardDiskDrive(diskCapacity, 1); - vm1.addHDD(hdd1); + HardDiskDrive hdd1 = new HardDiskDrive(100, 1); + HardDiskDrive hdd2 = new HardDiskDrive(120, 2); + + // 3. Crear un HashMap para agregar los + // objetos hdd1 y hdd1 creados previamente + // Escribe tu código { + HashMap hdds = new HashMap(); + hdds.put(hdd1.unitNumber, hdd1); + hdds.put(hdd2.unitNumber, hdd1); + // } + + // 4. Asignar nics y hdds a VirtualMachine.nics y + // VirtualMachine.hdds respectivamente + // Escribe tu código { + vm1.addNICs(nics); + vm1.addHDDs(hdds); + // } + // 5. Imprimiendo variables de VM1 System.out.println("Resumen: "); System.out.println(vm1.toString()); @@ -35,6 +49,7 @@ public static void CreateVM(int memory, int cpu, int diskCapacity, int suffix, S // 6. Imprimiendo variables de VM1.nics System.out.println("Detallado NICs: "); System.out.println(nic1.toString()); + System.out.println(nic2.toString()); // Escribe tu código { // } @@ -42,10 +57,10 @@ public static void CreateVM(int memory, int cpu, int diskCapacity, int suffix, S // 7. Imprimiendo variables de VM1.hdds System.out.println("Detallado HDDs: "); System.out.println(hdd1.toString()); + System.out.println(hdd2.toString()); + // Escribe tu código { - - - + // } } diff --git a/src/cloud/NetworkCard.java b/src/cloud/NetworkCard.java index 06477af..c5089a9 100644 --- a/src/cloud/NetworkCard.java +++ b/src/cloud/NetworkCard.java @@ -1,8 +1,7 @@ package Cloud; - import Cloud.Util.CloudUtil; -import Cloud.Exceptions.*; +import java.lang.*; public class NetworkCard { public static final int MAX_SPEED_MB = 100; @@ -19,15 +18,6 @@ public class NetworkCard { * Constructores */ NetworkCard(int unitNumber){ - if(unitNumber<1){ - try { - throw new CloudGenericException("Unit number debe ser mayor a 0"); - } catch (CloudGenericException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - } - this.unitNumber = unitNumber; // Escribe tu código { StringBuilder sb = new StringBuilder().append("Network Card").append(unitNumber); @@ -38,14 +28,6 @@ public class NetworkCard { NetworkCard(String network, int unitNumber){ this.network = network; - if(unitNumber<1){ - try { - throw new CloudGenericException("Unit number debe ser mayor a 0"); - } catch (CloudGenericException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - } this.unitNumber = unitNumber; // Escribe tu código { StringBuilder sb = new StringBuilder().append("Network Card").append(unitNumber); @@ -55,14 +37,6 @@ public class NetworkCard { } NetworkCard(String network, int unitNumber, int speedMb){ this.network = network; - if(unitNumber<1){ - try { - throw new CloudGenericException("Unit number debe ser mayor a 0"); - } catch (CloudGenericException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - } this.unitNumber = unitNumber; this.speedMb = speedMb; // Escribe tu código { diff --git a/src/cloud/VirtualMachine.java b/src/cloud/VirtualMachine.java index 282a84e..141774a 100644 --- a/src/cloud/VirtualMachine.java +++ b/src/cloud/VirtualMachine.java @@ -1,11 +1,9 @@ package Cloud; import java.util.HashMap; - +import java.lang.*; import Cloud.Util.CloudUtil; -import Cloud.Exceptions.CloudGenericException; -import java.io.IOException; public class VirtualMachine { final String id; // Identificador único @@ -39,34 +37,21 @@ public class VirtualMachine { */ VirtualMachine(int cpuCount, long memoryGB, String guestOS){ // Escribe tu código { - try { - if(cpuCount<=0){ - - throw new CloudGenericException("Cpu count debe ser mayor a 0"); - } - else{ - - this.cpuCount = cpuCount; - } - } catch (CloudGenericException e) { - // TODO Auto-generated catch block - e.printStackTrace(); + if(cpuCount<=0){ + this.cpuCount = 1; + System.err.println("Cpu count debe ser mayor a 0"); + } + else{ + this.cpuCount = cpuCount; } - try{ - if(memoryGB<1){ - - throw new CloudGenericException("MemoryGB debe ser mayor 1"); - } + if(memoryGB>=1024 && memoryGB%1024 == 0){ + this.memoryGB = memoryGB;} else{ - this.memoryGB = memoryGB; - } - }catch (CloudGenericException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - - } + + this.memoryGB = 1024; + System.err.println("MemoryGB debe ser mayor a 1024 o un múltiplo de 1024"); } if(guestOS.length()>=5){ this.guestOS = guestOS; @@ -76,40 +61,34 @@ public class VirtualMachine { System.err.println("guestOS debe ser mayor a 5 caracteres"); } - + // } this.id = CloudUtil.getUUID(); } - VirtualMachine(int cpuCount, long memoryGB, String name, String guestOS) { - try { - if(cpuCount>0){ - this.cpuCount = cpuCount; - } - else{ - - throw new CloudGenericException("Cpu debe ser mayor a 0"); - } - } catch (CloudGenericException e) { - // TODO Auto-generated catch block - System.out.println("Error: "+e.toString()); - } - - - try{ - if(memoryGB<1){ - - throw new CloudGenericException("Memoria debe ser mayor o igual a 1024"); - } - - this.memoryGB = memoryGB; - }catch (CloudGenericException e) { - // TODO Auto-generated catch block - - System.out.println("Error: "+e.toString()); + VirtualMachine(int cpuCount, long memoryGB, String name, String guestOS){ + // Escribe tu código { + if(cpuCount<=0){ + this.cpuCount = 1; + System.err.println("Cpu count debe ser mayor a 0"); + } + else{ + this.cpuCount = cpuCount; + } - } - this.guestOS = guestOS; + if(memoryGB>=1024 && memoryGB%1024 == 0){ + this.memoryGB = memoryGB;} + else{ + + this.memoryGB = 1024; + System.err.println("MemoryGB debe ser mayor a 1024 o un múltiplo de 1024"); } + if(guestOS.length()>=5){ + this.guestOS = guestOS; + } + else{ + this.guestOS = guestOS; + System.err.println("guestOS debe ser mayor a 5 caracteres"); + } if(name.length()>=5){ this.name = name; } diff --git a/src/cloud/util/CloudUtil.java b/src/cloud/util/CloudUtil.java index 65c98df..4ae452c 100644 --- a/src/cloud/util/CloudUtil.java +++ b/src/cloud/util/CloudUtil.java @@ -1,7 +1,5 @@ package Cloud.Util; - - import java.util.Random; import java.util.UUID;