/* * Copyright 2005 Joe Walker * * Licensed under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.example.dwr.ticketcenter; import java.util.Date; import org.directwebremoting.Security; /** * @author Joe Walker [joe at getahead dot ltd dot uk] */ public class Call { private Date callStarted = new Date(); private String notes = ""; private boolean supervisorAlert = false; private String name; private String address; private String phoneNumber; private int id; private String handlerId; /** * @return the callStarted */ public Date getCallStarted() { return callStarted; } /** * @param callStarted the callStarted to set */ @SuppressWarnings({"AssignmentToDateFieldFromParameter"}) public void setCallStarted(Date callStarted) { this.callStarted = callStarted; } /** * @return A descriptive strong of roughly how long is it since the call started. */ public String getWaitTime() { long timePlain = new Date().getTime() - callStarted.getTime(); int time = 10000 * Math.round(timePlain / 10000); return "" + time; } /** * @return the notes */ public String getNotes() { return notes; } /** * @param notes the notes to set */ public void setNotes(String notes) { this.notes = notes; } /** * @return the supervisorAlert */ public boolean isSupervisorAlert() { return supervisorAlert; } /** * @param supervisorAlert the supervisorAlert to set */ public void setSupervisorAlert(boolean supervisorAlert) { this.supervisorAlert = supervisorAlert; } /** * @return the address */ public String getAddress() { return address; } /** * @param address the address to set */ public void setAddress(String address) { this.address = Security.escapeHtml(address); } /** * @return the id */ public int getId() { return id; } /** * @param id the id to set */ public void setId(int id) { this.id = id; } /** * @return the name */ public String getName() { return name; } /** * @param name the name to set */ public void setName(String name) { this.name = Security.escapeHtml(name); } /** * @return the phoneNumber */ public String getPhoneNumber() { return phoneNumber; } /** * @param phoneNumber the phoneNumber to set */ public void setPhoneNumber(String phoneNumber) { this.phoneNumber = phoneNumber; } /** * @return the handlerId */ protected String getHandlerId() { return handlerId; } /** * @param handlerId the handlerIdId to set */ protected void setHandlerId(String handlerId) { this.handlerId = handlerId; } /** * @return true if this call has a handler */ public boolean isHandled() { return handlerId != null; } /* (non-Javadoc) * @see java.lang.Object#equals(java.lang.Object) */ @Override public boolean equals(Object obj) { if (obj == null) { return false; } if (obj == this) { return true; } if (!this.getClass().equals(obj.getClass())) { return false; } Call that = (Call) obj; if (this.id != that.id) { return false; } return true; } /* (non-Javadoc) * @see java.lang.Object#hashCode() */ @Override public int hashCode() { return 5924 + id; } /* (non-Javadoc) * @see java.lang.Object#toString() */ @Override public String toString() { return "Person[id=" + id + ",name=" + name + "]"; } }