/* * $Id: LocationImpl.java,v 1.2 2006/09/25 08:52:36 acaproni Exp $ * * $Date: 2006/09/25 08:52:36 $ * $Revision: 1.2 $ * $Author: acaproni $ * * Copyright CERN, All Rights Reserved. */ package cern.laser.client.impl.data; import java.io.Serializable; import cern.laser.business.data.Building; import cern.laser.client.data.Location; public class LocationImpl implements Location, Cloneable, Serializable { private String buildingNb; private String floor; private String room; private String site; private Integer zone; private String position; private String map; private String mnemonic; public LocationImpl(cern.laser.business.data.Location location) { if (location == null) { throw new IllegalArgumentException("parameter can not be null"); } floor = location.getFloor(); room = location.getRoom(); position = location.getPosition(); mnemonic = location.getMnemonic(); Building building = location.getBuilding(); if (building != null) { buildingNb = building.getBuildingNumber(); site = building.getSite(); zone = building.getZone(); map = building.getMap(); } } public String getBuilding() { return buildingNb; } public String getFloor() { return floor; } public String getRoom() { return room; } public String getSite() { return site; } public Integer getZone() { return zone; } public String getPosition() { return position; } public String getMap() { return map; } public String getMnemonic() { return mnemonic; } public void setBuildingNb(String newBuilding) { buildingNb = newBuilding; } public void setFloor(String newFloor) { floor = newFloor; } public void setMap(String newMap) { map = newMap; } public void setMnemonic(String newMnemonic) { mnemonic = newMnemonic; } public void setPosition(String newPosition) { position = newPosition; } public void setRoom(String newRoom) { room = newRoom; } public void setSite(String newSite) { site = newSite; } public void setZone(Integer newZone) { zone = newZone; } public boolean equals(Object obj) { if ((obj == null) || (!(obj instanceof Location))) { return false; } return toString().equals(obj.toString()); } public int hashCode() { return toString().hashCode(); } public Object clone() throws CloneNotSupportedException { try { LocationImpl location = (LocationImpl) super.clone(); return location; } catch (Exception e) { throw new CloneNotSupportedException("clone failed : " + e.getMessage()); } } public String toString() { StringBuffer str_buf = new StringBuffer(); str_buf.append("\nBUILDING : "); str_buf.append(getBuilding()); str_buf.append("\nSITE : "); str_buf.append(getSite()); str_buf.append("\nZONE : "); str_buf.append(getZone()); str_buf.append("\nFLOOR : "); str_buf.append(getFloor()); str_buf.append("\nROOM : "); str_buf.append(getRoom()); str_buf.append("\nPOSITION : "); str_buf.append(getPosition()); str_buf.append("\nMAP : "); str_buf.append(getMap()); str_buf.append("\nMNEMONIC : "); str_buf.append(getMnemonic()); return str_buf.toString(); } }