/* * The contents of this file are subject to the Mozilla Public License * Version 1.1 (the "License"); you may not use this file except in * compliance with the License. You may obtain a copy of the License at * http://www.mozilla.org/MPL/ * * Software distributed under the License is distributed on an "AS IS" * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the * License for the specific language governing rights and limitations * under the License. * * The Original Code is available at http://www.abiquo.com/..... * * The Initial Developer of the Original Code is Soluciones Grid, S.L. (www.abiquo.com), * Consell de Cent 296, Principal 2�, 08007 Barcelona, Spain. * * No portions of the Code have been created by third parties. * All Rights Reserved. * * Contributor(s): ______________________________________. * * Graphical User Interface of this software may be used under the terms * of the Common Public Attribution License Version 1.0 (the "CPAL License", * available at http://cpal.abiquo.com/), in which case the * provisions of CPAL License are applicable instead of those above. In relation * of this portions of the Code, a Legal Notice according to Exhibits A and B of * CPAL Licence should be provided in any distribution of the corresponding Code * to Graphical User Interface. */ package com.abiquo.abiserver.pojo.infrastructure; import java.util.HashSet; import com.abiquo.abiserver.business.hibernate.pojohb.IPojoHB; import com.abiquo.abiserver.business.hibernate.pojohb.infrastructure.HypervisorHB; import com.abiquo.abiserver.business.hibernate.pojohb.infrastructure.StateHB; import com.abiquo.abiserver.business.hibernate.pojohb.infrastructure.VirtualmachineHB; import com.abiquo.abiserver.business.hibernate.pojohb.infrastructure.VirtualmachinenetworkmoduleHB; import com.abiquo.abiserver.business.hibernate.pojohb.virtualimage.VirtualimageHB; import com.abiquo.abiserver.pojo.IPojo; import com.abiquo.abiserver.pojo.virtualimage.VirtualImage; public class VirtualMachine extends InfrastructureElement implements IPojo { /* ------------- Public atributes ------------- */ private VirtualImage virtualImage; private String UUID; private String description; private int ram; private int cpu; private long hd; private int vdrpPort; private String vdrpIP; private State state; private boolean highDisponibility; /* ------------- Constructor ------------- */ public VirtualMachine() { super(); virtualImage = new VirtualImage(); UUID = ""; description = ""; ram = 0; cpu = 0; hd = 0; vdrpPort = 0; vdrpIP = ""; state = new State(); highDisponibility = false; } public VirtualImage getVirtualImage() { return virtualImage; } public void setVirtualImage(VirtualImage virtualImage) { this.virtualImage = virtualImage; } public String getUUID() { return UUID; } public void setUUID(String uuid) { UUID = uuid; } public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } public int getRam() { return ram; } public void setRam(int ram) { this.ram = ram; } public int getCpu() { return cpu; } public void setCpu(int cpu) { this.cpu = cpu; } public long getHd() { return hd; } public void setHd(long hd) { this.hd = hd; } public int getVdrpPort() { return vdrpPort; } public void setVdrpPort(int vdrpPort) { this.vdrpPort = vdrpPort; } public String getVdrpIP() { return vdrpIP; } public void setVdrpIP(String vdrpIP) { this.vdrpIP = vdrpIP; } public State getState() { return state; } public void setState(State state) { this.state = state; } public boolean isHighDisponibility() { return highDisponibility; } public boolean getHighDisponibility() { return this.highDisponibility; } public void setHighDisponibility(boolean highDisponibility) { this.highDisponibility = highDisponibility; } public IPojoHB toPojoHB() { VirtualmachineHB virtualMachineHB = new VirtualmachineHB(); virtualMachineHB.setIdVm(this.getId()); HyperVisor hypervisor = (HyperVisor) this.getAssignedTo(); virtualMachineHB.setHypervisor((HypervisorHB) hypervisor.toPojoHB()); virtualMachineHB.setState((StateHB) this.state.toPojoHB()); virtualMachineHB.setImage((VirtualimageHB) this.virtualImage.toPojoHB()); virtualMachineHB.setUuid(this.UUID); virtualMachineHB.setName(this.getName()); virtualMachineHB.setDescription(this.description); virtualMachineHB.setRam(this.ram); virtualMachineHB.setCpu(this.cpu); virtualMachineHB.setHd(this.hd); virtualMachineHB.setVdrpIp(this.vdrpIP); virtualMachineHB.setVdrpPort(this.vdrpPort); virtualMachineHB.setHighDisponibility(this.highDisponibility ? 1 : 0); virtualMachineHB .setVirtualmachinenetworkmodules(new HashSet<VirtualmachinenetworkmoduleHB>(0)); return virtualMachineHB; } }