package tmcsim.cadmodels; import java.io.Serializable; import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.Node; /** * IncidentInquiryServices extends from IncidentInquiryLogEntry * to provide a model object containing information used to display a service * unit assigned. Data for a service includes the service's name and * the confidential and public phone numbers.
*
* This element parses and creates the following XML schema in its toXML() and * fromXML() methods. The ROOT element is the parameter for those methods.
*
*
* /
*
*
*
*

* * @author Matthew Cechini * @version */ @SuppressWarnings("serial") public class IncidentInquiryServices extends IncidentInquiryLogEntry implements Serializable { /** * Enumeration with XML tag names. * @author Matthew Cechini */ private static enum XML_TAGS { /** Service's name. */ SERVICE ("SERVICE"), /** Service's confidential phone number. */ CONF_PHONE_NUM ("CONF_PHONE_NUM"), /** Service's public phone number. */ PUB_PHONE_NUM ("PUB_PHONE_NUM"); public String tag; private XML_TAGS(String t) { tag = t; } } /** Service's name. */ public String serviceName; /** Service's confidential phone number. */ public String confPhoneNum; /** Service's public phone number. */ public String publicPhoneNum; /** * Constructor. Initialize all Service data to empty strings. * * @param newPosInfo String containing position info for this log entry */ public IncidentInquiryServices(String newPosInfo) { super(newPosInfo, "0000"); serviceName = ""; confPhoneNum = ""; publicPhoneNum = ""; } /** * Constructor. Parse parameter node for Service log entry data. * * @param theNode Node containing data for this Service log entry */ public IncidentInquiryServices(Node theNode) { fromXML(theNode); } public void toXML(Element currElem) { Document theDoc = currElem.getOwnerDocument(); Element tempElem = null; tempElem = theDoc.createElement(XML_TAGS.SERVICE.tag); tempElem.appendChild(theDoc.createTextNode(serviceName)); currElem.appendChild(tempElem); tempElem = theDoc.createElement(XML_TAGS.CONF_PHONE_NUM.tag); tempElem.appendChild(theDoc.createTextNode(confPhoneNum)); currElem.appendChild(tempElem); tempElem = theDoc.createElement(XML_TAGS.PUB_PHONE_NUM.tag); tempElem.appendChild(theDoc.createTextNode(publicPhoneNum)); currElem.appendChild(tempElem); super.toXML(currElem); } public void fromXML(Node modelNode) { Node childNode = null; childNode = modelNode.getFirstChild(); serviceName = childNode.getTextContent(); childNode = childNode.getNextSibling(); confPhoneNum = childNode.getTextContent(); childNode = childNode.getNextSibling(); publicPhoneNum = childNode.getTextContent(); childNode = childNode.getNextSibling(); super.fromXML(childNode); } }