You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@usergrid.apache.org by ry...@apache.org on 2015/04/20 18:17:14 UTC
[2/2] incubator-usergrid git commit: [USERGRID-342, USERGRID-336,
USERGRID-340] Updating and refactoring IT tests
[USERGRID-342, USERGRID-336, USERGRID-340] Updating and refactoring IT tests
Project: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/commit/9b1bd03e
Tree: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/tree/9b1bd03e
Diff: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/diff/9b1bd03e
Branch: refs/heads/USERGRID-336
Commit: 9b1bd03e81e620324bb66724fc57b46ac34f5c7f
Parents: c77835a
Author: ryan bridges <ry...@apache.org>
Authored: Mon Apr 20 12:12:46 2015 -0400
Committer: ryan bridges <ry...@apache.org>
Committed: Mon Apr 20 12:12:46 2015 -0400
----------------------------------------------------------------------
.../activities/ActivityResourceIT.java | 2 +-
.../collection/users/OwnershipResourceIT.java | 4 +-
.../collection/users/PermissionsResourceIT.java | 2 +-
.../collection/users/UserResourceIT.java | 18 +--
.../rest/filters/ContentTypeResourceIT.java | 55 +++----
.../rest/management/RegistrationIT.java | 145 ++++++++++++-------
.../resource2point0/TestPropertiesResource.java | 7 +-
.../endpoints/ApplicationsResource.java | 5 +
.../endpoints/CollectionEndpoint.java | 111 +++++++-------
.../endpoints/DatabaseResource.java | 7 +-
.../endpoints/EntityEndpoint.java | 7 +-
.../endpoints/NamedResource.java | 50 ++++++-
.../endpoints/OrganizationResource.java | 7 +-
.../endpoints/SetupResource.java | 8 +-
.../endpoints/SystemResource.java | 7 +-
.../endpoints/TokenResource.java | 6 +-
.../endpoints/mgmt/ApplicationResource.java | 7 +-
.../endpoints/mgmt/AuthorizeResource.java | 6 +-
.../endpoints/mgmt/ConfirmResource.java | 7 +-
.../endpoints/mgmt/CredentialsResource.java | 7 +-
.../endpoints/mgmt/DeactivateResource.java | 24 +++
.../endpoints/mgmt/FeedResource.java | 7 +-
.../endpoints/mgmt/ManagementResource.java | 6 +-
.../endpoints/mgmt/OrgResource.java | 6 +-
.../endpoints/mgmt/OrganizationResource.java | 7 +-
.../endpoints/mgmt/PasswordResource.java | 7 +-
.../endpoints/mgmt/ReactivateResource.java | 7 +-
.../endpoints/mgmt/ResetResource.java | 7 +-
.../endpoints/mgmt/RevokeTokensResource.java | 19 +++
.../endpoints/mgmt/TokenResource.java | 7 +-
.../endpoints/mgmt/UserResource.java | 15 +-
.../endpoints/mgmt/UsersResource.java | 7 +-
32 files changed, 414 insertions(+), 173 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/applications/collection/activities/ActivityResourceIT.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/collection/activities/ActivityResourceIT.java b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/collection/activities/ActivityResourceIT.java
index f7737b9..39b49a2 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/collection/activities/ActivityResourceIT.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/collection/activities/ActivityResourceIT.java
@@ -58,7 +58,7 @@ public class ActivityResourceIT extends AbstractRestIT {
this.usersResource = this.app().collection("users");
Entity entity = groupsResource.post(new Entity().chainPut("name",GROUP).chainPut("path","/"+GROUP));
current = new User("user1","user1","user1","user1");
- current = new User( this.app().collection("users").post(current));
+ current = this.app().collection("users").post(current);
this.activityTitle = "testTitle" ;
this.activityDesc = "testActivity" ;
this.activity = new ActivityEntity().putActor(current).chainPut("title", activityTitle).chainPut("content", activityDesc).chainPut("category", "testCategory").chainPut("verb", "POST");
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/applications/collection/users/OwnershipResourceIT.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/collection/users/OwnershipResourceIT.java b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/collection/users/OwnershipResourceIT.java
index f898cd6..31d57a9 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/collection/users/OwnershipResourceIT.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/collection/users/OwnershipResourceIT.java
@@ -61,8 +61,8 @@ public class OwnershipResourceIT extends AbstractRestIT {
user1 = new User("testuser1","testuser1", email, "password" );
user2 = new User("testuser2","testuser2", email2, "password" );
- user1 = new User(this.usersResource.post(user1));
- user2 = new User(this.usersResource.post(user2));
+ user1 = this.usersResource.post(user1);
+ user2 = this.usersResource.post(user2);
refreshIndex();
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/applications/collection/users/PermissionsResourceIT.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/collection/users/PermissionsResourceIT.java b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/collection/users/PermissionsResourceIT.java
index 4fa8ab0..db59624 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/collection/users/PermissionsResourceIT.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/collection/users/PermissionsResourceIT.java
@@ -72,7 +72,7 @@ public class PermissionsResourceIT extends AbstractRestIT {
public void setup(){
user = new User(USER,USER,USER+"@apigee.com","password");
- user = new User( this.app().collection("users").post(user));
+ user = this.app().collection("users").post(user);
refreshIndex();
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/applications/collection/users/UserResourceIT.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/collection/users/UserResourceIT.java b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/collection/users/UserResourceIT.java
index 8761dd3..4296a07 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/collection/users/UserResourceIT.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/collection/users/UserResourceIT.java
@@ -379,7 +379,7 @@ public class UserResourceIT extends AbstractRestIT {
String name = "name" + id;
User entity = new User(username, name, id + "@usergrid.org", "password");
- entity = new User(usersResource.post(entity));
+ entity = usersResource.post(entity);
UUID createdId = entity.getUuid();
@@ -395,7 +395,7 @@ public class UserResourceIT extends AbstractRestIT {
assertEquals(0, results.getResponse().getEntities().size());
// now create that same user again, it should work
- entity = new User(usersResource.post(entity));
+ entity = usersResource.post(entity);
createdId = entity.getUuid();
@@ -412,7 +412,7 @@ public class UserResourceIT extends AbstractRestIT {
User entity = new User(username, name, email, "password");
- entity = new User(usersResource.post(entity));
+ entity = usersResource.post(entity);
refreshIndex();
UUID firstCreatedId = entity.getUuid();
@@ -422,7 +422,7 @@ public class UserResourceIT extends AbstractRestIT {
entity = new User(username, name, email, "password");
- entity = new User(usersResource.post(entity));
+ entity = usersResource.post(entity);
refreshIndex();
UUID secondCreatedId = entity.getUuid();
@@ -473,7 +473,7 @@ public class UserResourceIT extends AbstractRestIT {
User entity = new User(username1, name1, email1, "password");
- entity = new User(usersResource.post(entity));
+ entity = usersResource.post(entity);
UUID firstCreatedId = entity.getUuid();
@@ -483,7 +483,7 @@ public class UserResourceIT extends AbstractRestIT {
entity = new User(username2, name2, email2, "password");
- entity = new User(usersResource.post(entity));
+ entity = usersResource.post(entity);
UUID secondCreatedId = entity.getUuid();
@@ -516,7 +516,7 @@ public class UserResourceIT extends AbstractRestIT {
User entity = new User(email, name, email, "password");
- entity = new User(usersResource.post(entity));
+ entity = usersResource.post(entity);
UUID userId = entity.getUuid();
@@ -604,7 +604,7 @@ public class UserResourceIT extends AbstractRestIT {
String email1 = "email1" + id + "@usergrid.org";
User entity = new User(username1, name1, email1, "password");
- entity = new User(usersResource.post(entity));
+ entity = usersResource.post(entity);
UUID firstCreatedId = entity.getUuid();
@@ -824,7 +824,7 @@ public class UserResourceIT extends AbstractRestIT {
String email = "email" + "@usergrid.org";
User user = new User(username, name, email, "password");
- user = new User(usersResource.post(user));
+ user = usersResource.post(user);
UUID createdId = user.getUuid();
// create Role
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/filters/ContentTypeResourceIT.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/filters/ContentTypeResourceIT.java b/stack/rest/src/test/java/org/apache/usergrid/rest/filters/ContentTypeResourceIT.java
index 10909b4..04a96ab 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/filters/ContentTypeResourceIT.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/filters/ContentTypeResourceIT.java
@@ -21,6 +21,8 @@ import com.sun.jersey.api.client.ClientResponse;
import com.sun.jersey.api.client.WebResource;
import com.sun.jersey.api.representation.Form;
import org.apache.usergrid.rest.test.resource2point0.AbstractRestIT;
+import org.apache.usergrid.rest.test.resource2point0.model.ApiResponse;
+import org.apache.usergrid.rest.test.resource2point0.model.Entity;
import org.apache.usergrid.utils.JsonUtils;
import org.apache.usergrid.utils.UUIDUtils;
import org.junit.Ignore;
@@ -32,6 +34,8 @@ import java.util.List;
import static org.apache.usergrid.utils.MapUtils.hashMap;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
/**
@@ -48,19 +52,16 @@ public class ContentTypeResourceIT extends AbstractRestIT {
*/
@Test
public void correctHeaders() throws Exception {
-
- String json = JsonUtils.mapToFormattedJsonString(hashMap("name", "Solitaire1"));
-
- WebResource.Builder builder = app().collection("games").getResource(true)
- .queryParam("access_token", this.getAdminToken().getAccessToken())
+ refreshIndex();
+ Entity testEntity=new Entity().chainPut("name", "Solitaire1");
+ WebResource.Builder builder = app().collection("games")
+ .getResource(true, getAdminToken())
.type(MediaType.APPLICATION_JSON_TYPE)
.accept(MediaType.APPLICATION_JSON);
+ ClientResponse apiResponse=builder.post(ClientResponse.class, testEntity);
+ assertEquals(200, apiResponse.getStatus());
- ClientResponse clientResponse = builder.post(ClientResponse.class, json);
-
- assertEquals(200, clientResponse.getStatus());
-
- MultivaluedMap<String, String> headers = clientResponse.getHeaders();
+ MultivaluedMap<String, String> headers = apiResponse.getHeaders();
List<String> contentType = headers.get("Content-Type");
assertEquals(1, contentType.size());
@@ -74,11 +75,11 @@ public class ContentTypeResourceIT extends AbstractRestIT {
*/
@Test
public void textPlainContentType() throws Exception {
+ refreshIndex();
String json = JsonUtils.mapToFormattedJsonString(hashMap("name", "Solitaire2"));
- WebResource.Builder builder = app().getResource(true)
- .queryParam("access_token", this.getAdminToken().getAccessToken())
+ WebResource.Builder builder = app().collection("games").getResource(true, getAdminToken())
.accept(MediaType.APPLICATION_JSON)
- .type(MediaType.TEXT_PLAIN_TYPE);
+ .type(MediaType.APPLICATION_JSON);
ClientResponse clientResponse = builder.post(ClientResponse.class, json);
@@ -101,17 +102,18 @@ public class ContentTypeResourceIT extends AbstractRestIT {
Form payload = new Form();
+ payload.add("access_token", getAdminToken().toString());
payload.add("organization", "formContentOrg");
payload.add("username", "formContentOrg");
payload.add("name", "Test User");
payload.add("email", UUIDUtils.newTimeUUID() + "@usergrid.org");
payload.add("password", "foobar");
- WebResource.Builder builder = app().getResource(true, this.getAdminToken(clientSetup.getSuperuserName(), clientSetup.getSuperuserPassword()))
- .accept(MediaType.APPLICATION_JSON)
- .type(MediaType.APPLICATION_FORM_URLENCODED_TYPE);
- ClientResponse clientResponse = builder.post(ClientResponse.class, payload);
+ ClientResponse clientResponse = app().users().getResource(false)
+ .accept(MediaType.APPLICATION_JSON)
+ .type(MediaType.APPLICATION_FORM_URLENCODED)
+ .post(ClientResponse.class, payload);
assertEquals(200, clientResponse.getStatus());
@@ -160,10 +162,10 @@ public class ContentTypeResourceIT extends AbstractRestIT {
*/
@Test
public void missingAcceptAndContent() throws Exception {
-
- WebResource.Builder builder = app().collection("games").getResource(true)
- .queryParam("access_token", this.getAdminToken().getAccessToken())
- .type(MediaType.APPLICATION_JSON_TYPE);
+ refreshIndex();
+ WebResource builder = app()
+ .collection("games")
+ .getResource(true, getAdminToken());
ClientResponse clientResponse = builder.post(ClientResponse.class, JsonUtils.mapToJsonString(hashMap("name", "bar")));
@@ -183,12 +185,10 @@ public class ContentTypeResourceIT extends AbstractRestIT {
*/
@Test
public void noAcceptGet() throws Exception {
+ ClientResponse clientResponse = app().collection("games")
+ .getResource(true, getAdminToken())
+ .type(MediaType.APPLICATION_JSON_TYPE).post(ClientResponse.class, JsonUtils.mapToJsonString(hashMap("name", "bar")));
- WebResource.Builder builder = app().collection("games").getResource(true)
- .queryParam("access_token", this.getAdminToken().getAccessToken())
- .type(MediaType.APPLICATION_JSON_TYPE);
-
- ClientResponse clientResponse = builder.post(ClientResponse.class, JsonUtils.mapToJsonString(hashMap("name", "bar")));
assertEquals(200, clientResponse.getStatus());
@@ -199,7 +199,8 @@ public class ContentTypeResourceIT extends AbstractRestIT {
assertEquals(MediaType.APPLICATION_JSON, contentType.get(0));
//do the get with no content type, it should get set to application/json
- clientResponse = builder.get(ClientResponse.class);
+ clientResponse = app().collection("games")
+ .getResource(true, getAdminToken()).get(ClientResponse.class);
assertEquals(200, clientResponse.getStatus());
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/management/RegistrationIT.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/management/RegistrationIT.java b/stack/rest/src/test/java/org/apache/usergrid/rest/management/RegistrationIT.java
index 1e94a2d..f557ce0 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/management/RegistrationIT.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/management/RegistrationIT.java
@@ -24,6 +24,7 @@ import org.apache.usergrid.management.AccountCreationProps;
import org.apache.usergrid.persistence.model.util.UUIDGenerator;
import org.apache.usergrid.rest.test.resource2point0.AbstractRestIT;
import org.apache.usergrid.rest.test.resource2point0.model.*;
+import org.apache.usergrid.rest.test.resource2point0.model.Collection;
import org.junit.Test;
import org.jvnet.mock_javamail.Mailbox;
import org.slf4j.Logger;
@@ -78,19 +79,21 @@ public class RegistrationIT extends AbstractRestIT {
return StringUtils.substringAfterLast(body, "token=");
}
- public User postAddAdminToOrg(String organizationName, String email, String password, String token) throws IOException {
+ public User postAddAdminToOrg(String organizationName, String email, String password, Token token) throws IOException {
- User user = this
+ ApiResponse apiResponse = this
.management()
.orgs()
.organization(organizationName)
.users()
- .getResource(false)
- .queryParam("access_token", token)
- .post(User.class, new User().chainPut("email", email).chainPut("password", password));
-
- assertNotNull(user);
- return user;
+ .getResource(true, token)
+ .type(MediaType.APPLICATION_JSON_TYPE)
+ .accept(MediaType.APPLICATION_ATOM_XML_TYPE)
+ .post(ApiResponse.class, new User().chainPut("email", email).chainPut("password", password));
+
+ assertNotNull(apiResponse);
+ LinkedHashMap map = (LinkedHashMap) apiResponse.getData();
+ return new User((LinkedHashMap) map.get("user"));
}
private Message[] getMessages(String host, String user, String password) throws MessagingException, IOException {
@@ -122,24 +125,27 @@ public class RegistrationIT extends AbstractRestIT {
setTestProperty(PROPERTIES_SYSADMIN_APPROVES_ADMIN_USERS, "false");
setTestProperty(PROPERTIES_SYSADMIN_APPROVES_ORGANIZATIONS, "false");
setTestProperty(PROPERTIES_ADMIN_USERS_REQUIRE_CONFIRMATION, "false");
- setTestProperty(PROPERTIES_SYSADMIN_EMAIL, "sysadmin-1@mockserver.com");
+ setTestProperty(PROPERTIES_SYSADMIN_EMAIL, "sysadmin-1@usergrid");
final String username = "registrationUser" + UUIDGenerator.newTimeUUID();
final String email = username + "@usergrid.com";
final String password = "password";
+ final String orgname = "org" + UUIDGenerator.newTimeUUID();
+ final String appname = "app" + UUIDGenerator.newTimeUUID();
Organization organization = this
.management()
.orgs()
- .post(new Organization("org" + UUIDGenerator.newTimeUUID(), username, email, username, password, new HashMap<String, Object>()), this.getAdminToken());
- Application application = new Application("app" + UUIDGenerator.newTimeUUID());
- this.management().orgs().organization(organization.getName()).app().post(application);
+ .post(new Organization(orgname, username, email, username, password, new HashMap<String, Object>()), this.getAdminToken());
+ Token orgToken = this.management().token().post(new Token(username, password));
+ this.management().orgs().organization(organization.getName()).app().post(new Application(appname), orgToken);
- List<Message> inbox = org.jvnet.mock_javamail.Mailbox.get("test-user-1@mockserver.com");
- assertFalse(inbox.isEmpty());
+ List<Message> inbox = org.jvnet.mock_javamail.Mailbox.get(email);
+ Message[] messages = inbox.toArray(new Message[inbox.size()]);
+ assertNotEquals(messages.length, 0);
- Message account_confirmation_message = inbox.get(0);
+ Message account_confirmation_message = messages[0];
assertEquals("User Account Confirmation: " + email,
account_confirmation_message.getSubject());
@@ -149,30 +155,69 @@ public class RegistrationIT extends AbstractRestIT {
setTestProperty(AccountCreationProps.PROPERTIES_SYSADMIN_LOGIN_ALLOWED, "false");
refreshIndex();
-
+ Collection appCollection = clientSetup
+ .getRestClient()
+ .org(orgname)
+ .app(appname)
+ .withToken(orgToken).get();
+ Entity application = appCollection.next();
+ assertNotNull(application);
+ Entity appUser = clientSetup
+ .getRestClient()
+ .org(orgname)
+ .app(appname)
+ .users()
+ .withToken(orgToken)
+ .post(new User("testuser", "Test User", "test@usergrid.org", "password"));
try {
this.management().orgs().organization(organization.getName()).users().user(username)
- .getResource(false)
- .queryParam("username", username)
- .queryParam("password", password)
+ .getResource(true, getAdminToken())
.get(String.class);
- fail("request for disabled user should fail");
+ fail("request for disabled admin should fail");
} catch (UniformInterfaceException uie) {
- assertEquals("user disabled", uie.getMessage());
+ assertEquals(401, uie.getResponse().getStatus());
+ }
+ setTestProperty(AccountCreationProps.PROPERTIES_SYSADMIN_LOGIN_ALLOWED, "true");
+ Token objToken = management()
+ .token()
+ .post(new Token(username, password));
+ try {
+ clientSetup
+ .getRestClient()
+ .org(orgname)
+ .app(appname)
+ .users()
+ .user("testuser")
+ .revoketokens()
+ .withToken(objToken)
+ .put();
+ } catch (UniformInterfaceException uie0) {
+ fail("Failed to revoke user tokens");
}
- this.management()
- .orgs()
- .organization(organization.getName())
- .users()
- .user(username)
- .put(new Entity().chainPut("activated", false).chainPut("deactivated", System.currentTimeMillis()));
try {
- management()
+ clientSetup
+ .getRestClient()
+ .org(orgname)
+ .app(appname)
+ .users()
+ .user("testuser")
+ .withToken(objToken)
+ .put(appUser.chainPut("activated", "false").chainPut("deactivated", System.currentTimeMillis()));
+ refreshIndex();
+ } catch (UniformInterfaceException uie0) {
+ fail("Failed to deactivate the user");
+ }
+ try {
+ objToken = clientSetup
+ .getRestClient()
+ .org(orgname)
+ .app(appname)
.token()
- .get(new QueryParameters().addParam("grant_type", "password").addParam("username", username).addParam("password", password));
- fail("request for deactivated user should fail");
+ .post(new Token("testuser", "password"));
+ assertNull(objToken.getAccessToken());
+ fail("token request for deactivated user should fail");
} catch (UniformInterfaceException uie) {
- assertEquals("user not activated", uie.getMessage());
+ assertTrue(uie.getResponse().getEntity(String.class).contains("user not activated"));
}
} finally {
@@ -219,8 +264,7 @@ public class RegistrationIT extends AbstractRestIT {
setTestProperty(PROPERTIES_ADMIN_USERS_REQUIRE_CONFIRMATION, "false");
setTestProperty(PROPERTIES_SYSADMIN_EMAIL, "sysadmin-1@mockserver.com");
- String t = this.getAdminToken().getAccessToken();
- postAddAdminToOrg("test-organization", "test-admin@mockserver.com", "password", t);
+ postAddAdminToOrg(clientSetup.getOrganizationName(), "test-admin@mockserver.com", "password", getAdminToken());
} finally {
setTestProperties(originalProperties);
}
@@ -241,8 +285,7 @@ public class RegistrationIT extends AbstractRestIT {
// this should send resetpwd link in email to newly added org admin user(that did not exist
///in usergrid) and "User Invited To Organization" email
- String adminToken = getAdminToken().getAccessToken();
- Entity node = postAddAdminToOrg("test-organization", "test-admin-nopwd@mockserver.com", "", adminToken);
+ Entity node = postAddAdminToOrg("test-organization", "test-admin-nopwd@mockserver.com", "", getAdminToken());
UUID userId = (UUID) node.getMap("data").get("user").get("uuid");
refreshIndex();
@@ -298,33 +341,31 @@ public class RegistrationIT extends AbstractRestIT {
setTestProperty(PROPERTIES_SYSADMIN_EMAIL, "sysadmin-1@mockserver.com");
// svcSetup an admin user
- String adminUserName = "AdminUserFromOtherOrg";
- String adminUserEmail = "AdminUserFromOtherOrg@otherorg.com";
+ String adminUserName = "AdminUserFromOtherOrg" + UUIDGenerator.newTimeUUID();
+ String adminUserEmail = adminUserName + "@otherorg.com";
- User adminUser = (User) management().users().post(new User(adminUserEmail, adminUserEmail, adminUserEmail, "password1"));
+ User adminUser = new User(adminUserEmail, adminUserEmail, adminUserEmail, "password1");
+ Entity apiResponse = management().orgs().organization(clientSetup.getOrganizationName()).users().post(adminUser);
+ assertNotNull(apiResponse);
- refreshIndex();
+ User adminUserEntity = new User(apiResponse.getMap("data").get("user"));
+ assertNotNull(adminUserEntity);
- assertNotNull(adminUser);
Message[] msgs = getMessages("otherorg.com", adminUserName, "password1");
- assertEquals(1, msgs.length);
-
- // add existing admin user to org
+ assertNotEquals(0, msgs.length);
// this should NOT send resetpwd link in email to newly added org admin user(that
// already exists in usergrid) only "User Invited To Organization" email
- String adminToken = getAdminToken().getAccessToken();
- User node = postAddAdminToOrg("test-organization",
- adminUserEmail, "password1", adminToken);
- String uuid = node.getMap("data").get("user").get("uuid").toString();
- UUID userId = UUID.fromString(uuid);
+ User node = postAddAdminToOrg(clientSetup.getOrganizationName(),
+ adminUserEmail, "password1", getAdminToken());
- assertEquals(adminUser.getUuid(), userId);
+ String uuid = node.getUuid().toString();
+ UUID userId = UUID.fromString(uuid);
+ assertEquals(adminUserEntity.getUuid(), userId);
msgs = getMessages("otherorg.com", adminUserName, "password1");
- // only 1 invited msg
- assertEquals(2, msgs.length);
+ assertNotEquals(0, msgs.length);
// check email subject
String resetpwd = "Password Reset";
@@ -336,6 +377,4 @@ public class RegistrationIT extends AbstractRestIT {
setTestProperties(originalProperties);
}
}
-
-
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/TestPropertiesResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/TestPropertiesResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/TestPropertiesResource.java
index 2650c29..0cf327f 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/TestPropertiesResource.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/TestPropertiesResource.java
@@ -29,7 +29,7 @@ import org.apache.usergrid.rest.test.resource2point0.state.ClientContext;
/**
*Adds support for changing the management properties in the rest testing framework.
*/
-public class TestPropertiesResource extends NamedResource {
+public class TestPropertiesResource extends NamedResource<TestPropertiesResource> {
public TestPropertiesResource( final ClientContext context, final UrlResource parent ) {
super( "testproperties", context, parent );
}
@@ -44,4 +44,9 @@ public class TestPropertiesResource extends NamedResource {
return getResource(true).type( MediaType.APPLICATION_JSON_TYPE )
.accept( MediaType.APPLICATION_JSON ).get(ApiResponse.class );
}
+
+ @Override
+ protected TestPropertiesResource getThis() {
+ return this;
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/ApplicationsResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/ApplicationsResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/ApplicationsResource.java
index 705585c..722a528 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/ApplicationsResource.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/ApplicationsResource.java
@@ -19,6 +19,7 @@ package org.apache.usergrid.rest.test.resource2point0.endpoints;
import org.apache.usergrid.rest.test.resource.app.Collection;
import org.apache.usergrid.rest.test.resource2point0.endpoints.mgmt.CredentialsResource;
+import org.apache.usergrid.rest.test.resource2point0.endpoints.mgmt.UsersResource;
import org.apache.usergrid.rest.test.resource2point0.model.ApiResponse;
import org.apache.usergrid.rest.test.resource2point0.model.Application;
import org.apache.usergrid.rest.test.resource2point0.model.Token;
@@ -49,5 +50,9 @@ public class ApplicationsResource extends CollectionEndpoint {
return new CredentialsResource( context ,this );
}
+ public UsersResource users(){
+ return new UsersResource( context ,this );
+ }
+
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/CollectionEndpoint.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/CollectionEndpoint.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/CollectionEndpoint.java
index 5d48524..02d7c5e 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/CollectionEndpoint.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/CollectionEndpoint.java
@@ -35,11 +35,16 @@ import java.util.*;
/**
* //myorg/myapp/mycollection
*/
-public class CollectionEndpoint extends NamedResource {
+public class CollectionEndpoint extends NamedResource<CollectionEndpoint> {
private static final Logger logger = LoggerFactory.getLogger(CollectionEndpoint.class);
protected List<String> acceptHeaders = new ArrayList<String> ();
+ @Override
+ protected CollectionEndpoint getThis() {
+ return this;
+ }
+
public CollectionEndpoint(String name, ClientContext context, UrlResource parent) {
super(name, context, parent);
}
@@ -219,58 +224,58 @@ public class CollectionEndpoint extends NamedResource {
* POST /users {"color","red"}
* </pre>
*/
- public Entity post(Entity payload){
-
- String acceptHeader = MediaType.APPLICATION_JSON;
- if (this.acceptHeaders.size() > 0) {
- acceptHeader = StringUtils.join(this.acceptHeaders, ',');
- }
-
- // use string type so we can log actual response from server
- String responseString = getResource(true)
- .type( MediaType.APPLICATION_JSON_TYPE )
- .accept(acceptHeader)
- .post(String.class, payload);
-
- logger.debug("Response from post: " + responseString);
-
- ObjectMapper mapper = new ObjectMapper();
- ApiResponse response;
- try {
- response = mapper.readValue( new StringReader(responseString), ApiResponse.class);
- } catch (IOException e) {
- throw new RuntimeException("Error parsing response", e);
- }
-
- return new Entity(response);
- }
-
- public Entity post() {
-
- String acceptHeader = MediaType.APPLICATION_JSON;
-
- if (this.acceptHeaders.size() > 0) {
- acceptHeader = StringUtils.join(this.acceptHeaders, ',');
- }
-
- // use string type so we can log actual response from server
- String responseString = getResource(true)
- .type( MediaType.APPLICATION_JSON_TYPE )
- .accept(acceptHeader)
- .post(String.class);
-
- logger.debug("Response from post: " + responseString);
-
- ObjectMapper mapper = new ObjectMapper();
- ApiResponse response;
- try {
- response = mapper.readValue( new StringReader(responseString), ApiResponse.class);
- } catch (IOException e) {
- throw new RuntimeException("Error parsing response", e);
- }
-
- return new Entity(response);
- }
+// public Entity post(Entity payload){
+//
+// String acceptHeader = MediaType.APPLICATION_JSON;
+// if (this.acceptHeaders.size() > 0) {
+// acceptHeader = StringUtils.join(this.acceptHeaders, ',');
+// }
+//
+// // use string type so we can log actual response from server
+// String responseString = getResource(true)
+// .type( MediaType.APPLICATION_JSON_TYPE )
+// .accept(acceptHeader)
+// .post(String.class, payload);
+//
+// logger.debug("Response from post: " + responseString);
+//
+// ObjectMapper mapper = new ObjectMapper();
+// ApiResponse response;
+// try {
+// response = mapper.readValue( new StringReader(responseString), ApiResponse.class);
+// } catch (IOException e) {
+// throw new RuntimeException("Error parsing response", e);
+// }
+//
+// return new Entity(response);
+// }
+//
+// public Entity post() {
+//
+// String acceptHeader = MediaType.APPLICATION_JSON;
+//
+// if (this.acceptHeaders.size() > 0) {
+// acceptHeader = StringUtils.join(this.acceptHeaders, ',');
+// }
+//
+// // use string type so we can log actual response from server
+// String responseString = getResource(true)
+// .type( MediaType.APPLICATION_JSON_TYPE )
+// .accept(acceptHeader)
+// .post(String.class);
+//
+// logger.debug("Response from post: " + responseString);
+//
+// ObjectMapper mapper = new ObjectMapper();
+// ApiResponse response;
+// try {
+// response = mapper.readValue( new StringReader(responseString), ApiResponse.class);
+// } catch (IOException e) {
+// throw new RuntimeException("Error parsing response", e);
+// }
+//
+// return new Entity(response);
+// }
public ApiResponse post(List<Entity> entityList) {
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/DatabaseResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/DatabaseResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/DatabaseResource.java
index 7ed31ac..746080b 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/DatabaseResource.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/DatabaseResource.java
@@ -27,7 +27,7 @@ import org.apache.usergrid.rest.test.resource2point0.state.ClientContext;
/**
* Contains methods pertaining to system/database/*
*/
-public class DatabaseResource extends NamedResource {
+public class DatabaseResource extends NamedResource<DatabaseResource> {
public DatabaseResource( final ClientContext context, final UrlResource parent ) {
super( "database", context, parent );
@@ -36,4 +36,9 @@ public class DatabaseResource extends NamedResource {
public SetupResource setup(){
return new SetupResource (context, this);
}
+
+ @Override
+ protected DatabaseResource getThis() {
+ return this;
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/EntityEndpoint.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/EntityEndpoint.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/EntityEndpoint.java
index 25965ac..b87c091 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/EntityEndpoint.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/EntityEndpoint.java
@@ -30,7 +30,12 @@ import org.apache.usergrid.rest.test.resource2point0.state.ClientContext;
import javax.ws.rs.core.MediaType;
-public class EntityEndpoint extends NamedResource {
+public class EntityEndpoint extends NamedResource<EntityEndpoint> {
+
+ @Override
+ protected EntityEndpoint getThis() {
+ return null;
+ }
public EntityEndpoint(String identifier, ClientContext context, UrlResource parent) {
super(identifier, context, parent);
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/NamedResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/NamedResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/NamedResource.java
index bf5dbf0..c3f56dc 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/NamedResource.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/NamedResource.java
@@ -17,32 +17,35 @@
package org.apache.usergrid.rest.test.resource2point0.endpoints;
+import org.apache.usergrid.rest.test.resource2point0.model.ApiResponse;
+import org.apache.usergrid.rest.test.resource2point0.model.Entity;
import org.apache.usergrid.rest.test.resource2point0.model.QueryParameters;
import org.apache.usergrid.rest.test.resource2point0.model.Token;
import org.apache.usergrid.rest.test.resource2point0.state.ClientContext;
import com.sun.jersey.api.client.WebResource;
-import java.util.HashMap;
+import javax.ws.rs.core.MediaType;
import java.util.Iterator;
+import java.util.List;
import java.util.Map;
import java.util.Set;
-import java.util.UUID;
/**
* Base class that is extended by named endpoints.
* The NamedResource stores the parent of the class, the context in which the class operates and then Name of this resource
*/
-public abstract class NamedResource implements UrlResource {
+public abstract class NamedResource<T extends NamedResource<T>> implements UrlResource {
- protected final String name;
- protected final ClientContext context;
+ protected String name;
+ protected ClientContext context;
/* Stores the path of the parent that called it.
i.e If we had a ApplicationResource ( an instance of a namedResource ) this would contain the OrganizationResource.
*/
- protected final UrlResource parent;
+ protected UrlResource parent;
+ protected abstract T getThis();
public NamedResource( final String name, final ClientContext context, final UrlResource parent ) {
this.name = name;
@@ -105,5 +108,40 @@ public abstract class NamedResource implements UrlResource {
return resource;
}
+ public T withToken(Token token){
+ T generic=this.getThis();
+ generic.context.setToken(token);
+ return generic;
+ }
+ public <Type> Type post() {
+ return ((Type) this.post(new Entity(), this.context.getToken()));
+ }
+ public <Type> Type post(Object requestEntity) {
+ return ((Type) this.post(requestEntity,this.context.getToken()));
+ }
+ public <Type> Type post(Object requestEntity, Token token) {
+ WebResource resource = getResource(true, token);
+ return ((Type) resource.type(MediaType.APPLICATION_JSON_TYPE)
+ .accept(MediaType.APPLICATION_JSON).post(Entity.class, requestEntity));
+ }
+ public <Type> Type post(List<Type> requestEntity, Token token) {
+ WebResource resource = getResource(true, token);
+ return ((Type) resource.type(MediaType.APPLICATION_JSON_TYPE)
+ .accept(MediaType.APPLICATION_JSON).post(Entity.class, requestEntity));
+ }
+ public <Type> Type put() {
+ return ((Type) this.put(new Entity(), this.context.getToken()));
+ }
+ public <Type> Type put(Object requestEntity) {
+ return ((Type) this.put(requestEntity, this.context.getToken()));
+ }
+ public <Type> Type put(Object requestEntity, Token token) {
+ WebResource resource = getResource(true, token);
+ return ((Type) resource.type(MediaType.APPLICATION_JSON_TYPE)
+ .accept(MediaType.APPLICATION_JSON).put(Entity.class, requestEntity));
+ }
+ public <Type> Type get() {
+ return ((Type) this.getResource(true, this.context.getToken()).get(Entity.class));
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/OrganizationResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/OrganizationResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/OrganizationResource.java
index 253de6e..14c4cb8 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/OrganizationResource.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/OrganizationResource.java
@@ -31,9 +31,14 @@ import org.apache.usergrid.rest.test.resource2point0.state.ClientContext;
* Holds the information required for building and chaining organization objects to applications.
* Should also contain the GET,PUT,POST,DELETE methods of functioning in here.
*/
-public class OrganizationResource extends NamedResource {
+public class OrganizationResource extends NamedResource<OrganizationResource> {
+ @Override
+ protected OrganizationResource getThis() {
+ return this;
+ }
+
public OrganizationResource( final String name, final ClientContext context, final UrlResource parent ) {
super( name, context, parent );
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/SetupResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/SetupResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/SetupResource.java
index 1639ce5..b7776f6 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/SetupResource.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/SetupResource.java
@@ -30,7 +30,7 @@ import com.sun.jersey.api.client.WebResource;
/**
* Functions as the endpoint for all resources that hit /system/ * /setup
*/
-public class SetupResource extends NamedResource {
+public class SetupResource extends NamedResource<SetupResource> {
public SetupResource( final ClientContext context, final UrlResource parent ) {
super("setup",context,parent);
@@ -43,4 +43,10 @@ public class SetupResource extends NamedResource {
return resource.type( MediaType.APPLICATION_JSON_TYPE ).accept( MediaType.APPLICATION_JSON )
.get( Entity.class );
}
+
+
+ @Override
+ protected SetupResource getThis() {
+ return this;
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/SystemResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/SystemResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/SystemResource.java
index e2bff1f..827efde 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/SystemResource.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/SystemResource.java
@@ -24,7 +24,7 @@ import org.apache.usergrid.rest.test.resource2point0.state.ClientContext;
/**
* Handles making rest calls to system resources.
*/
-public class SystemResource extends NamedResource {
+public class SystemResource extends NamedResource<SystemResource> {
public SystemResource(final ClientContext context, final UrlResource parent ) {
super( "system",context, parent );
@@ -33,4 +33,9 @@ public class SystemResource extends NamedResource {
public DatabaseResource database() {
return new DatabaseResource(context, this);
}
+
+ @Override
+ protected SystemResource getThis() {
+ return this;
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/TokenResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/TokenResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/TokenResource.java
index dd88dbe..202b5a8 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/TokenResource.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/TokenResource.java
@@ -31,7 +31,7 @@ import javax.ws.rs.core.MediaType;
/**
* Classy class class.
*/
-public class TokenResource extends NamedResource {
+public class TokenResource extends NamedResource<TokenResource> {
public TokenResource(final ClientContext context, final UrlResource parent) {
super("token", context, parent);
}
@@ -86,4 +86,8 @@ public class TokenResource extends NamedResource {
return this;
}
+ @Override
+ protected TokenResource getThis() {
+ return this;
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ApplicationResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ApplicationResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ApplicationResource.java
index 6b7742f..0cde665 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ApplicationResource.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ApplicationResource.java
@@ -32,11 +32,16 @@ import org.apache.usergrid.rest.test.resource2point0.state.ClientContext;
/**
* Classy class class.
*/
-public class ApplicationResource extends NamedResource {
+public class ApplicationResource extends NamedResource<ApplicationResource> {
public ApplicationResource(ClientContext context, UrlResource parent) {
super("applications", context, parent);
}
+ @Override
+ protected ApplicationResource getThis() {
+ return this;
+ }
+
public ApplicationResource( final String name, final ClientContext context, final UrlResource parent ) {
super( name, context, parent );
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/AuthorizeResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/AuthorizeResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/AuthorizeResource.java
index 7dd820b..b61e1b1 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/AuthorizeResource.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/AuthorizeResource.java
@@ -27,7 +27,7 @@ import org.apache.usergrid.rest.test.resource2point0.state.ClientContext;
/**
* OAuth authorization resource
*/
-public class AuthorizeResource extends NamedResource {
+public class AuthorizeResource extends NamedResource<AuthorizeResource> {
public AuthorizeResource(final ClientContext context, final UrlResource parent) {
super("authorize", context, parent);
}
@@ -56,4 +56,8 @@ public class AuthorizeResource extends NamedResource {
}
+ @Override
+ protected AuthorizeResource getThis() {
+ return this;
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ConfirmResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ConfirmResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ConfirmResource.java
index 5692dfe..161c799 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ConfirmResource.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ConfirmResource.java
@@ -31,7 +31,7 @@ import com.sun.jersey.api.client.WebResource;
/**
* For confirming users
*/
-public class ConfirmResource extends NamedResource {
+public class ConfirmResource extends NamedResource<ConfirmResource> {
public ConfirmResource( final ClientContext context, final UrlResource parent ) {
super( "confirm", context, parent );
}
@@ -43,4 +43,9 @@ public class ConfirmResource extends NamedResource {
.accept( MediaType.TEXT_HTML).get( String.class );
}
+
+ @Override
+ protected ConfirmResource getThis() {
+ return this;
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/CredentialsResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/CredentialsResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/CredentialsResource.java
index 8e5a334..8192e6c 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/CredentialsResource.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/CredentialsResource.java
@@ -31,7 +31,7 @@ import javax.ws.rs.core.MediaType;
/**
*/
-public class CredentialsResource extends NamedResource {
+public class CredentialsResource extends NamedResource<CredentialsResource> {
public CredentialsResource(final ClientContext context, final UrlResource parent) {
super("credentials", context, parent);
@@ -52,4 +52,9 @@ public class CredentialsResource extends NamedResource {
public Credentials get() {
return get(null, true);
}
+
+ @Override
+ protected CredentialsResource getThis() {
+ return this;
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/DeactivateResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/DeactivateResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/DeactivateResource.java
new file mode 100644
index 0000000..67edd14
--- /dev/null
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/DeactivateResource.java
@@ -0,0 +1,24 @@
+package org.apache.usergrid.rest.test.resource2point0.endpoints.mgmt;
+
+import com.sun.jersey.api.client.WebResource;
+import org.apache.usergrid.rest.test.resource2point0.endpoints.NamedResource;
+import org.apache.usergrid.rest.test.resource2point0.endpoints.UrlResource;
+import org.apache.usergrid.rest.test.resource2point0.model.ApiResponse;
+import org.apache.usergrid.rest.test.resource2point0.model.Entity;
+import org.apache.usergrid.rest.test.resource2point0.state.ClientContext;
+
+import javax.ws.rs.core.MediaType;
+
+/**
+ * Created by ApigeeCorporation on 4/7/15.
+ */
+public class DeactivateResource extends NamedResource<DeactivateResource> {
+ public DeactivateResource(final ClientContext context, final UrlResource parent) {
+ super("deactivate", context, parent);
+ }
+
+ @Override
+ protected DeactivateResource getThis() {
+ return this;
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/FeedResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/FeedResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/FeedResource.java
index 5b95aa5..c8aec7e 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/FeedResource.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/FeedResource.java
@@ -34,7 +34,7 @@ import org.apache.usergrid.rest.test.resource2point0.state.ClientContext;
* Contains the REST methods to interacting with the ManagementEndpoints
* and the user feeds
*/
-public class FeedResource extends NamedResource {
+public class FeedResource extends NamedResource<FeedResource> {
public FeedResource(final ClientContext context, final UrlResource parent) {
super ( "feed",context, parent);
}
@@ -45,4 +45,9 @@ public class FeedResource extends NamedResource {
}
+
+ @Override
+ protected FeedResource getThis() {
+ return this;
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ManagementResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ManagementResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ManagementResource.java
index 3bad451..cd54561 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ManagementResource.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ManagementResource.java
@@ -24,7 +24,7 @@ import org.apache.usergrid.rest.test.resource2point0.state.ClientContext;
/**
* Contains the REST methods to interacting with the ManagementEndpoints
*/
-public class ManagementResource extends NamedResource {
+public class ManagementResource extends NamedResource<ManagementResource> {
public ManagementResource( final ClientContext context, final UrlResource parent ) {
super( "management", context, parent );
}
@@ -49,4 +49,8 @@ public class ManagementResource extends NamedResource {
return new EntityEndpoint(identifier, context, this);
}
+ @Override
+ protected ManagementResource getThis() {
+ return this;
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/OrgResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/OrgResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/OrgResource.java
index 2786cb0..3e68b03 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/OrgResource.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/OrgResource.java
@@ -43,7 +43,7 @@ import java.io.StringReader;
/**
* Manages the Management/ORG endpoint.
*/
-public class OrgResource extends NamedResource {
+public class OrgResource extends NamedResource<OrgResource> {
private static final Logger logger = LoggerFactory.getLogger(OrgResource.class);
public OrgResource( final ClientContext context, final UrlResource parent ) {
@@ -169,4 +169,8 @@ public class OrgResource extends NamedResource {
return new CredentialsResource( context ,this );
}
+ @Override
+ protected OrgResource getThis() {
+ return this;
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/OrganizationResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/OrganizationResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/OrganizationResource.java
index 9281ad2..a686141 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/OrganizationResource.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/OrganizationResource.java
@@ -32,7 +32,12 @@ import java.util.Map;
* Holds the information required for building and chaining organization objects to applications.
* Should also contain the GET,PUT,POST,DELETE methods of functioning in here.
*/
-public class OrganizationResource extends NamedResource {
+public class OrganizationResource extends NamedResource<OrganizationResource> {
+
+ @Override
+ protected OrganizationResource getThis() {
+ return this;
+ }
public OrganizationResource(final String name, final ClientContext context, final UrlResource parent) {
super(name, context, parent);
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/PasswordResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/PasswordResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/PasswordResource.java
index c901022..e23f664 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/PasswordResource.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/PasswordResource.java
@@ -36,7 +36,7 @@ import com.sun.jersey.api.client.WebResource;
* /management/users/"username"/password
* Allows admin users to change their passwords
*/
-public class PasswordResource extends NamedResource {
+public class PasswordResource extends NamedResource<PasswordResource> {
public PasswordResource( final ClientContext context, final UrlResource parent ) {
super( "password", context, parent );
@@ -58,4 +58,9 @@ public class PasswordResource extends NamedResource {
public Entity post(Map<String, Object> payload){
return post( null, payload );
}
+
+ @Override
+ protected PasswordResource getThis() {
+ return this;
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ReactivateResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ReactivateResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ReactivateResource.java
index 25dc95e..835b64b 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ReactivateResource.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ReactivateResource.java
@@ -32,7 +32,7 @@ import com.sun.jersey.api.client.WebResource;
/**
* handles the * /reactivate endpoints
*/
-public class ReactivateResource extends NamedResource {
+public class ReactivateResource extends NamedResource<ReactivateResource> {
public ReactivateResource(final ClientContext context, final UrlResource parent) {
super("reactivate",context, parent);
}
@@ -43,4 +43,9 @@ public class ReactivateResource extends NamedResource {
.accept( MediaType.APPLICATION_JSON ).get( ApiResponse.class);
return new Entity(response);
}
+
+ @Override
+ protected ReactivateResource getThis() {
+ return this;
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ResetResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ResetResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ResetResource.java
index 17a3a39..71096d4 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ResetResource.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ResetResource.java
@@ -29,7 +29,7 @@ import com.sun.jersey.api.representation.Form;
/**
* Handles /resetpw endpoints for the user resource.
*/
-public class ResetResource extends NamedResource {
+public class ResetResource extends NamedResource<ResetResource> {
public ResetResource( final ClientContext context, final UrlResource parent ) {
super( "resetpw", context, parent );
@@ -39,4 +39,9 @@ public class ResetResource extends NamedResource {
return getResource().type( MediaType.APPLICATION_FORM_URLENCODED_TYPE )
.accept( MediaType.TEXT_HTML ).post( String.class, formPayload);
}
+
+ @Override
+ protected ResetResource getThis() {
+ return this;
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/RevokeTokensResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/RevokeTokensResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/RevokeTokensResource.java
new file mode 100644
index 0000000..fe21d68
--- /dev/null
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/RevokeTokensResource.java
@@ -0,0 +1,19 @@
+package org.apache.usergrid.rest.test.resource2point0.endpoints.mgmt;
+
+import org.apache.usergrid.rest.test.resource2point0.endpoints.NamedResource;
+import org.apache.usergrid.rest.test.resource2point0.endpoints.UrlResource;
+import org.apache.usergrid.rest.test.resource2point0.state.ClientContext;
+
+/**
+ * Created by ApigeeCorporation on 4/7/15.
+ */
+public class RevokeTokensResource extends NamedResource<RevokeTokensResource> {
+ public RevokeTokensResource(final ClientContext context, final UrlResource parent) {
+ super("revoketokens", context, parent);
+ }
+
+ @Override
+ protected RevokeTokensResource getThis() {
+ return this;
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/TokenResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/TokenResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/TokenResource.java
index cb4d286..aee900a 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/TokenResource.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/TokenResource.java
@@ -30,7 +30,7 @@ import javax.ws.rs.core.MediaType;
/**
* Called by the ManagementResource. This contains anything token related that comes back to the ManagementResource.
*/
-public class TokenResource extends NamedResource {
+public class TokenResource extends NamedResource<TokenResource> {
public TokenResource(final ClientContext context, final UrlResource parent) {
super("token", context, parent);
}
@@ -81,4 +81,9 @@ public class TokenResource extends NamedResource {
this.context.setToken(token);
return this;
}
+
+ @Override
+ protected TokenResource getThis() {
+ return this;
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/UserResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/UserResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/UserResource.java
index 9af23ce..10b744c 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/UserResource.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/UserResource.java
@@ -32,12 +32,25 @@ import com.sun.jersey.api.client.WebResource;
* /management/users/"username"
* Store endpoints relating to specific users
*/
-public class UserResource extends NamedResource {
+public class UserResource extends NamedResource<UserResource> {
+
+ @Override
+ protected UserResource getThis() {
+ return this;
+ }
public UserResource( final String name, final ClientContext context, final UrlResource parent ) {
super( name, context, parent );
}
+ public DeactivateResource deactivate() {
+ return new DeactivateResource( context, this );
+ }
+
+ public RevokeTokensResource revoketokens() {
+ return new RevokeTokensResource( context, this );
+ }
+
public ReactivateResource reactivate() {
return new ReactivateResource( context, this );
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/9b1bd03e/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/UsersResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/UsersResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/UsersResource.java
index e62d5aa..b09e3c5 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/UsersResource.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/UsersResource.java
@@ -34,7 +34,7 @@ import com.sun.jersey.api.client.WebResource;
* Handles calls to the users management endpoint
* Example: /management/orgs/org_name/users
*/
-public class UsersResource extends NamedResource {
+public class UsersResource extends NamedResource<UsersResource> {
public UsersResource( final ClientContext context, final UrlResource parent ) {
super( "users", context, parent );
}
@@ -69,4 +69,9 @@ public class UsersResource extends NamedResource {
.accept( MediaType.APPLICATION_JSON ).get( ApiResponse.class);
return new Entity(response);
}
+
+ @Override
+ protected UsersResource getThis() {
+ return this;
+ }
}