001 /*----------------------------------------------------------------------- 002 * Copyright (C) 2006 003 * Associated Universities, Inc. Washington DC, USA. 004 * This program is free software; you can redistribute it and/or 005 * modify it under the terms of the GNU General Public License as 006 * published by the Free Software Foundation; either version 2 of 007 * the License, or (at your option) any later version. 008 * 009 * This program is distributed in the hope that it will be useful, 010 * but WITHOUT ANY WARRANTY; without even the implied warranty of 011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 012 * GNU General Public License for more details. 013 * 014 * Correspondence concerning this software should be addressed as follows: 015 * Internet email: switz@nrao.edu 016 * Postal address: User Database 017 * National Radio Astronomy Observatory 018 * Post Office Box 0 019 * Socorro, NM 87801 USA 020 *-----------------------------------------------------------------------*/ 021 package edu.nrao.sss.model.user; 022 023 import edu.nrao.sss.xml.XMLTransform; 024 025 public class UserNote extends UpdateDetails implements XMLable { 026 027 private static final long serialVersionUID = 1L; 028 029 private String userNoteText; 030 031 public UserNote() { 032 super(); 033 } 034 035 public UserNote(UserNote userNote) { 036 super(userNote); 037 set(userNote); 038 } 039 040 public void copy(UserNote userNote) { 041 super.copy(userNote); 042 set(userNote); 043 } 044 045 public boolean equals(Object obj) { 046 if (null == obj) 047 return false; 048 if (!(obj instanceof UserNote)) 049 return false; 050 else { 051 UserNote mObj = (UserNote) obj; 052 return (this.getId() == mObj.getId()); 053 } 054 } 055 056 public String getUserNoteText() { 057 return userNoteText; 058 } 059 060 private void set(UserNote userNote) { 061 this.setUserNoteText(userNote.getUserNoteText()); 062 } 063 064 public void setUserNoteText(String userNoteText) { 065 this.userNoteText = userNoteText; 066 } 067 068 public final String toXML() { 069 StringBuffer result = new StringBuffer(); 070 result.append("<user-note>\n"); 071 result.append("<note-text>" + XMLTransform.encode(getUserNoteText()) 072 + "</note-text>\n"); 073 result.append("<updated-on>" 074 + XMLTransform.dateToXMLDateTime(getUpdatedOn()) 075 + "</updated-on>\n"); 076 result.append("<updated-by>" + getUpdatedBy() + "</updated-by>\n"); 077 result.append("</user-note>\n"); 078 return result.toString(); 079 } 080 081 }