/* * 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.math.BigDecimal; import java.util.ArrayList; import java.util.HashSet; import java.util.Set; import com.abiquo.abiserver.business.hibernate.pojohb.IPojoHB; import com.abiquo.abiserver.business.hibernate.pojohb.infrastructure.DnsHB; import com.abiquo.abiserver.business.hibernate.pojohb.infrastructure.NetworkmoduleHB; import com.abiquo.abiserver.business.hibernate.pojohb.infrastructure.NetworkmoduleIdHB; import com.abiquo.abiserver.pojo.IPojo; public class NetworkModule implements IPojo { /* ------------- Public atributes ------------- */ private int id; private Boolean dhcp; private String ip; private String subNetMask; private String gateway; private BigDecimal bw; private ArrayList<DNS> dns; /* ------------- Constructor ------------- */ public NetworkModule() { id = 0; dhcp = false; ip = ""; subNetMask = ""; gateway = ""; bw = new BigDecimal(0); dns = new ArrayList<DNS>(); } public int getId() { return id; } public void setId(int id) { this.id = id; } public Boolean getDhcp() { return dhcp; } public void setDhcp(Boolean dhcp) { this.dhcp = dhcp; } public String getIp() { return ip; } public void setIp(String ip) { this.ip = ip; } public String getSubNetMask() { return subNetMask; } public void setSubNetMask(String subNetMask) { this.subNetMask = subNetMask; } public String getGateway() { return gateway; } public void setGateway(String gateway) { this.gateway = gateway; } public BigDecimal getBw() { return bw; } public void setBw(BigDecimal bw) { this.bw = bw; } public ArrayList<DNS> getDns() { return dns; } public void setDns(ArrayList<DNS> dns) { this.dns = dns; } public IPojoHB toPojoHB() { NetworkmoduleHB networkModuleHB = new NetworkmoduleHB(); NetworkmoduleIdHB networkModuleId = new NetworkmoduleIdHB(); networkModuleId.setIdNetworkModule(this.id); networkModuleHB.setId(networkModuleId); networkModuleHB.setDhcp(this.dhcp ? 1 : 0); networkModuleHB.setIp(this.getIp()); networkModuleHB.setGateway(this.getGateway()); networkModuleHB.setsubnetMask(this.subNetMask); networkModuleHB.setBw(this.bw); // Setting the DNS Set<DnsHB> dnsHBList = new HashSet<DnsHB>(); DnsHB dnsHB; for (DNS dns : this.dns) { dnsHB = (DnsHB) dns.toPojoHB(); dnsHBList.add(dnsHB); } networkModuleHB.setDnses(dnsHBList); return networkModuleHB; } }