summaryrefslogtreecommitdiffstats
path: root/base/common/src/com/netscape/certsrv/group/GroupMemberCollection.java
diff options
context:
space:
mode:
authorEndi Sukma Dewata <edewata@redhat.com>2012-05-19 11:12:12 -0500
committerEndi Sukma Dewata <edewata@redhat.com>2012-05-31 12:01:49 -0500
commitafa68fa3c69d1617a312f1f2f75f7e6c27bb06c7 (patch)
tree21d1c2774b0d6512f8c708d34a966c5d25077076 /base/common/src/com/netscape/certsrv/group/GroupMemberCollection.java
parent770cc205a0108be22922c46a39d162dc31c55724 (diff)
downloadpki-afa68fa3c69d1617a312f1f2f75f7e6c27bb06c7.tar.gz
pki-afa68fa3c69d1617a312f1f2f75f7e6c27bb06c7.tar.xz
pki-afa68fa3c69d1617a312f1f2f75f7e6c27bb06c7.zip
Added group REST service.
The group REST service is based on UsrGrpAdminServlet. It provides an interface to manage groups and group members. Ticket #160
Diffstat (limited to 'base/common/src/com/netscape/certsrv/group/GroupMemberCollection.java')
-rw-r--r--base/common/src/com/netscape/certsrv/group/GroupMemberCollection.java83
1 files changed, 83 insertions, 0 deletions
diff --git a/base/common/src/com/netscape/certsrv/group/GroupMemberCollection.java b/base/common/src/com/netscape/certsrv/group/GroupMemberCollection.java
new file mode 100644
index 000000000..d19d939ad
--- /dev/null
+++ b/base/common/src/com/netscape/certsrv/group/GroupMemberCollection.java
@@ -0,0 +1,83 @@
+// --- BEGIN COPYRIGHT BLOCK ---
+// This program is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation; version 2 of the License.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License along
+// with this program; if not, write to the Free Software Foundation, Inc.,
+// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+//
+// (C) 2012 Red Hat, Inc.
+// All rights reserved.
+// --- END COPYRIGHT BLOCK ---
+
+package com.netscape.certsrv.group;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import javax.xml.bind.JAXBContext;
+import javax.xml.bind.Marshaller;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.jboss.resteasy.plugins.providers.atom.Link;
+
+/**
+ * @author Endi S. Dewata
+ */
+@XmlRootElement(name="GroupMembers")
+public class GroupMemberCollection {
+
+ Collection<GroupMemberData> members = new ArrayList<GroupMemberData>();
+ Collection<Link> links = new ArrayList<Link>();
+
+ @XmlElement(name="Member")
+ public Collection<GroupMemberData> getMembers() {
+ return members;
+ }
+
+ public void setMembers(Collection<GroupMemberData> members) {
+ this.members = members;
+ }
+
+ public void addMember(GroupMemberData member) {
+ members.add(member);
+ }
+
+ @XmlElement(name="Link")
+ public Collection<Link> getLinks() {
+ return links;
+ }
+
+ public void setLink(Collection<Link> links) {
+ this.links = links;
+ }
+
+ public void addLink(Link link) {
+ links.add(link);
+ }
+
+ public static void main(String args[]) throws Exception {
+
+ GroupMemberCollection response = new GroupMemberCollection();
+
+ GroupMemberData member1 = new GroupMemberData();
+ member1.setID("User 1");
+ response.addMember(member1);
+
+ GroupMemberData member2 = new GroupMemberData();
+ member2.setID("User 2");
+ response.addMember(member2);
+
+ JAXBContext context = JAXBContext.newInstance(GroupMemberCollection.class);
+ Marshaller marshaller = context.createMarshaller();
+ marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
+ marshaller.marshal(response, System.out);
+ }
+}