package org.opennms.netmgt.model; import java.io.Serializable; import java.util.ArrayList; import java.util.List; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; import org.apache.commons.lang.builder.ToStringBuilder; @XmlRootElement(name="group") @XmlAccessorType(XmlAccessType.FIELD) public class OnmsGroup implements Serializable { private static final long serialVersionUID = -7658664550834146185L; @XmlElement(name="name", required=true) private String m_name; @XmlElement(name="comments", required=false) private String m_comments; @XmlElement(name="user", required=false) private List<String> m_users = new ArrayList<String>(); public OnmsGroup() { } public OnmsGroup(final String groupName) { m_name = groupName; } public String getName() { return m_name; } public void setName(final String name) { m_name = name; } public String getComments() { return m_comments; } public void setComments(final String comments) { m_comments = comments; } public List<String> getUsers() { return m_users; } public void setUsers(final List<String> users) { m_users = users; } public void addUser(final String userName) { if (m_users == null) { m_users = new ArrayList<String>(); } m_users.add(userName.intern()); } public void removeUser(final String userName) { if (m_users == null) return; m_users.remove(userName); } @Override public String toString() { return new ToStringBuilder(this) .append("name", m_name) .append("comments", m_comments) .append("users", m_users) .toString(); } }