Remove the redundant gss top-level directory.
[pithos] / src / gr / ebs / gss / client / rest / resource / UserSearchResource.java
1 /*
2  * Copyright 2009 Electronic Business Systems Ltd.
3  *
4  * This file is part of GSS.
5  *
6  * GSS is free software: you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation, either version 3 of the License, or
9  * (at your option) any later version.
10  *
11  * GSS is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with GSS.  If not, see <http://www.gnu.org/licenses/>.
18  */
19 package gr.ebs.gss.client.rest.resource;
20
21 import java.util.ArrayList;
22 import java.util.List;
23
24 import com.google.gwt.json.client.JSONArray;
25 import com.google.gwt.json.client.JSONObject;
26 import com.google.gwt.json.client.JSONParser;
27
28 /**
29  * A container for the results of a search query for users.
30  *
31  * @author past
32  */
33 public class UserSearchResource extends RestResource {
34
35         public UserSearchResource(String aUri) {
36                 super(aUri);
37         }
38
39         List<UserResource> users = new ArrayList<UserResource>();
40
41         @Override
42         public void createFromJSON(String text) {
43                 JSONArray json = JSONParser.parse(text).isArray();
44                 if (json != null)
45                         for (int i = 0; i < json.size(); i++) {
46                                 JSONObject j = json.get(i).isObject();
47                                 if (j != null) {
48                                         String username = unmarshallString(j, "username");
49                                         String name = unmarshallString(j, "name");
50                                         String home = unmarshallString(j, "home");
51                                         UserResource user = new UserResource(home);
52                                         user.setName(name);
53                                         user.setUsername(username);
54                                         users.add(user);
55                                 }
56                         }
57         }
58
59         /**
60          * Retrieve the users.
61          *
62          * @return the users
63          */
64         public List<UserResource> getUsers() {
65                 return users;
66         }
67
68         /**
69          * Modify the users.
70          *
71          * @param newUsers the users to set
72          */
73         public void setUsers(List<UserResource> newUsers) {
74                 users = newUsers;
75         }
76
77 }