Merge branch 'USERGRID-744' into two-dot-o-dev
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpEntityManagerFactory.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpEntityManagerFactory.java
index 1f8ee5e..e3c17f0 100644
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpEntityManagerFactory.java
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpEntityManagerFactory.java
@@ -16,20 +16,12 @@
package org.apache.usergrid.corepersistence;
-import java.util.Arrays;
import java.util.HashMap;
-import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.TreeMap;
import java.util.UUID;
-import java.util.concurrent.atomic.AtomicBoolean;
-import org.apache.usergrid.corepersistence.index.IndexLocationStrategyFactory;
-import org.apache.usergrid.corepersistence.index.ReIndexRequestBuilder;
-import org.apache.usergrid.persistence.*;
-import org.apache.usergrid.persistence.graph.impl.SimpleSearchByEdge;
-import org.apache.usergrid.persistence.index.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeansException;
@@ -66,11 +58,14 @@
import org.apache.usergrid.persistence.entities.Application;
import org.apache.usergrid.persistence.exceptions.ApplicationAlreadyExistsException;
import org.apache.usergrid.persistence.exceptions.DuplicateUniquePropertyExistsException;
+import org.apache.usergrid.persistence.exceptions.EntityNotFoundException;
import org.apache.usergrid.persistence.graph.Edge;
import org.apache.usergrid.persistence.graph.GraphManager;
import org.apache.usergrid.persistence.graph.GraphManagerFactory;
import org.apache.usergrid.persistence.graph.SearchByEdgeType;
import org.apache.usergrid.persistence.graph.impl.SimpleSearchByEdgeType;
+import org.apache.usergrid.persistence.index.EntityIndex;
+import org.apache.usergrid.persistence.index.IndexRefreshCommand;
import org.apache.usergrid.persistence.model.entity.Id;
import org.apache.usergrid.persistence.model.entity.SimpleId;
import org.apache.usergrid.persistence.model.util.UUIDGenerator;
@@ -364,39 +359,45 @@
final ApplicationScope deleteApplicationScope = new ApplicationScopeImpl(deleteApplicationId);
Entity oldAppEntity = managementEm.get(new SimpleEntityRef( deleteTypeName, applicationUUID));
- Observable copyConnections = Observable.empty();
- if (oldAppEntity != null) {
- // ensure that there is not already a deleted app with the same name
- final EntityRef alias = managementEm.getAlias( createCollectionName, oldAppEntity.getName());
- if (alias != null) {
- throw new ConflictException("Cannot delete app with same name as already deleted app");
- }
- // make a copy of the app to delete application_info entity
- // and put it in a deleted_application_info collection
-
- final Entity newAppEntity = managementEm.create(new SimpleId(applicationUUID, createTypeName ), oldAppEntity.getProperties());
-
- // copy its connections too
-
- final Set<String> connectionTypes = managementEm.getConnectionTypes(oldAppEntity);
- copyConnections = Observable.from(connectionTypes).doOnNext(connType -> {
- try {
- final Results connResults =
- managementEm.getTargetEntities(oldAppEntity, connType, null, Query.Level.ALL_PROPERTIES);
- connResults.getEntities().forEach(entity -> {
- try {
- managementEm.createConnection(newAppEntity, connType, entity);
- } catch (Exception e) {
- throw new RuntimeException(e);
- }
- });
- } catch (Exception e) {
- throw new RuntimeException(e);
- }
- });
-
+ if(oldAppEntity == null){
+ throw new EntityNotFoundException( String.format("Could not find application with UUID '%s'", applicationUUID) );
}
+
+
+ // ensure that there is not already a deleted app with the same name
+
+ final EntityRef alias = managementEm.getAlias( createCollectionName, oldAppEntity.getName() );
+ if ( alias != null ) {
+ throw new ConflictException( "Cannot delete app with same name as already deleted app" );
+ }
+ // make a copy of the app to delete application_info entity
+ // and put it in a deleted_application_info collection
+
+ final Entity newAppEntity =
+ managementEm.create( new SimpleId( applicationUUID, createTypeName ), oldAppEntity.getProperties() );
+
+ // copy its connections too
+
+ final Set<String> connectionTypes = managementEm.getConnectionTypes( oldAppEntity );
+ Observable copyConnections = Observable.from( connectionTypes ).doOnNext( connType -> {
+ try {
+ final Results connResults =
+ managementEm.getTargetEntities( oldAppEntity, connType, null, Query.Level.ALL_PROPERTIES );
+ connResults.getEntities().forEach( entity -> {
+ try {
+ managementEm.createConnection( newAppEntity, connType, entity );
+ }
+ catch ( Exception e ) {
+ throw new RuntimeException( e );
+ }
+ } );
+ }
+ catch ( Exception e ) {
+ throw new RuntimeException( e );
+ }
+ } );
+
final Id managementAppId = CpNamingUtils.getManagementApplicationId();
final EntityIndex aei = getManagementIndex();
final GraphManager managementGraphManager = managerCache.getGraphManager(managementAppScope);
diff --git a/stack/rest/src/main/java/org/apache/usergrid/rest/applications/ApplicationResource.java b/stack/rest/src/main/java/org/apache/usergrid/rest/applications/ApplicationResource.java
index a35532d..bf350bc 100644
--- a/stack/rest/src/main/java/org/apache/usergrid/rest/applications/ApplicationResource.java
+++ b/stack/rest/src/main/java/org/apache/usergrid/rest/applications/ApplicationResource.java
@@ -20,23 +20,36 @@
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.util.Map;
-import java.util.Properties;
import java.util.UUID;
-import javax.ws.rs.*;
+import javax.ws.rs.Consumes;
+import javax.ws.rs.DELETE;
+import javax.ws.rs.DefaultValue;
+import javax.ws.rs.FormParam;
+import javax.ws.rs.GET;
+import javax.ws.rs.HeaderParam;
+import javax.ws.rs.POST;
+import javax.ws.rs.Path;
+import javax.ws.rs.Produces;
+import javax.ws.rs.QueryParam;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.PathSegment;
import javax.ws.rs.core.Response;
import javax.ws.rs.core.UriInfo;
-import org.apache.commons.lang.StringUtils;
-import org.apache.usergrid.rest.ApiResponse;
-import org.apache.usergrid.rest.security.annotations.RequireOrganizationAccess;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;
+
+import org.apache.amber.oauth2.common.error.OAuthError;
+import org.apache.amber.oauth2.common.exception.OAuthProblemException;
+import org.apache.amber.oauth2.common.message.OAuthResponse;
+import org.apache.amber.oauth2.common.message.types.GrantType;
+import org.apache.shiro.authz.UnauthorizedException;
+import org.apache.shiro.codec.Base64;
+
import org.apache.usergrid.management.ApplicationInfo;
import org.apache.usergrid.management.exceptions.DisabledAdminUserException;
import org.apache.usergrid.management.exceptions.DisabledAppUserException;
@@ -44,10 +57,10 @@
import org.apache.usergrid.management.exceptions.UnactivatedAppUserException;
import org.apache.usergrid.mq.QueueManager;
import org.apache.usergrid.persistence.EntityManager;
-import org.apache.usergrid.persistence.index.query.Identifier;
import org.apache.usergrid.persistence.SimpleEntityRef;
import org.apache.usergrid.persistence.entities.Application;
import org.apache.usergrid.persistence.entities.User;
+import org.apache.usergrid.persistence.index.query.Identifier;
import org.apache.usergrid.rest.AbstractContextResource;
import org.apache.usergrid.rest.applications.assets.AssetsResource;
import org.apache.usergrid.rest.applications.events.EventsResource;
@@ -56,16 +69,10 @@
import org.apache.usergrid.rest.exceptions.AuthErrorInfo;
import org.apache.usergrid.rest.exceptions.RedirectionException;
import org.apache.usergrid.rest.security.annotations.RequireApplicationAccess;
+import org.apache.usergrid.rest.security.annotations.RequireOrganizationAccess;
import org.apache.usergrid.security.oauth.AccessInfo;
import org.apache.usergrid.security.oauth.ClientCredentialsInfo;
-import org.apache.amber.oauth2.common.error.OAuthError;
-import org.apache.amber.oauth2.common.exception.OAuthProblemException;
-import org.apache.amber.oauth2.common.message.OAuthResponse;
-import org.apache.amber.oauth2.common.message.types.GrantType;
-import org.apache.shiro.authz.UnauthorizedException;
-import org.apache.shiro.codec.Base64;
-
import com.sun.jersey.api.json.JSONWithPadding;
import com.sun.jersey.api.view.Viewable;
@@ -488,66 +495,12 @@
}
- /**
- * Put on application URL will restore application if it was deleted.
- */
- @PUT
- @RequireOrganizationAccess
@Override
- public JSONWithPadding executePut( @Context UriInfo ui, String body,
- @QueryParam("callback") @DefaultValue("callback") String callback ) throws Exception {
-
- if ( applicationId == null ) {
- throw new IllegalArgumentException("Application ID not specified in request");
- }
-
- management.restoreApplication( applicationId );
-
- ApiResponse response = createApiResponse();
- response.setAction( "restore" );
- response.setApplication( services.getApplication() );
- response.setParams( ui.getQueryParameters() );
-
- return new JSONWithPadding( response, callback );
- }
-
-
@DELETE
@RequireOrganizationAccess
- @Override
- public JSONWithPadding executeDelete( @Context UriInfo ui,
- @QueryParam("callback") @DefaultValue("callback") String callback,
- @QueryParam("app_delete_confirm") String confirmDelete) throws Exception {
-
- if (!"confirm_delete_of_application_and_data".equals( confirmDelete ) ) {
- throw new IllegalArgumentException(
- "Cannot delete application without app_delete_confirm parameter");
- }
-
- Properties props = management.getProperties();
-
- // for now, only works in test mode
- String testProp = ( String ) props.get( "usergrid.test" );
- if ( testProp == null || !Boolean.parseBoolean( testProp ) ) {
- throw new UnsupportedOperationException();
- }
-
- if ( applicationId == null ) {
- throw new IllegalArgumentException("Application ID not specified in request");
- }
-
- management.deleteApplication( applicationId );
-
- LOG.debug( "ApplicationResource.delete() deleted appId = {}", applicationId);
-
- ApiResponse response = createApiResponse();
- response.setAction( "delete" );
- response.setApplication(services.getApplication());
- response.setParams(ui.getQueryParameters());
-
- LOG.debug( "ApplicationResource.delete() sending response ");
-
- return new JSONWithPadding( response, callback );
+ public JSONWithPadding executeDelete( @Context final UriInfo ui, @DefaultValue( "callback" ) final String callback,
+ final String confirmAppDelete ) throws Exception {
+ throw new UnsupportedOperationException( "Delete must be done from the management endpoint" );
}
diff --git a/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/OrganizationApplicationNotFoundExceptionMapper.java b/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/OrganizationApplicationNotFoundExceptionMapper.java
index 0d25021..8f4111a 100644
--- a/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/OrganizationApplicationNotFoundExceptionMapper.java
+++ b/stack/rest/src/main/java/org/apache/usergrid/rest/exceptions/OrganizationApplicationNotFoundExceptionMapper.java
@@ -27,6 +27,6 @@
extends AbstractExceptionMapper<OrganizationApplicationNotFoundException> {
@Override
public Response toResponse( OrganizationApplicationNotFoundException e ) {
- return super.toResponse( Response.Status.BAD_REQUEST, e );
+ return super.toResponse( Response.Status.NOT_FOUND, e );
}
}
diff --git a/stack/rest/src/main/java/org/apache/usergrid/rest/management/organizations/applications/ApplicationResource.java b/stack/rest/src/main/java/org/apache/usergrid/rest/management/organizations/applications/ApplicationResource.java
index fe11cb6..bcec775 100644
--- a/stack/rest/src/main/java/org/apache/usergrid/rest/management/organizations/applications/ApplicationResource.java
+++ b/stack/rest/src/main/java/org/apache/usergrid/rest/management/organizations/applications/ApplicationResource.java
@@ -38,6 +38,9 @@
import org.apache.usergrid.security.providers.SignInAsProvider;
import org.apache.usergrid.security.providers.SignInProviderFactory;
import org.apache.usergrid.services.ServiceManager;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;
@@ -49,6 +52,7 @@
import javax.ws.rs.core.UriInfo;
import java.util.HashMap;
import java.util.Map;
+import java.util.Properties;
import java.util.UUID;
import static javax.servlet.http.HttpServletResponse.SC_ACCEPTED;
@@ -73,6 +77,8 @@
})
public class ApplicationResource extends AbstractContextResource {
+ private static final Logger logger = LoggerFactory.getLogger(ApplicationResource.class);
+
@Autowired
protected ExportService exportService;
@@ -103,20 +109,6 @@
}
- @RequireOrganizationAccess
- @DELETE
- public JSONWithPadding deleteApplicationFromOrganizationByApplicationId(
- @Context UriInfo ui, @QueryParam("callback") @DefaultValue("callback") String callback )
- throws Exception {
-
- ApiResponse response = createApiResponse();
- response.setAction( "delete application from organization" );
-
- management.deleteOrganizationApplication( organization.getUuid(), applicationId );
-
- return new JSONWithPadding( response, callback );
- }
-
@RequireOrganizationAccess
@GET
@@ -393,4 +385,67 @@
return Response.status( SC_OK ).entity( null ).build();
}
+
+
+
+ /**
+ * Put on application URL will restore application if it was deleted.
+ */
+ @PUT
+ @RequireOrganizationAccess
+ public JSONWithPadding executePut( @Context UriInfo ui, String body,
+ @QueryParam("callback") @DefaultValue("callback") String callback ) throws Exception {
+
+ if ( applicationId == null ) {
+ throw new IllegalArgumentException("Application ID not specified in request");
+ }
+
+ management.restoreApplication( applicationId );
+
+ ApiResponse response = createApiResponse();
+ response.setAction( "restore" );
+ response.setApplication( emf.getEntityManager( applicationId ).getApplication() );
+ response.setParams( ui.getQueryParameters() );
+
+ return new JSONWithPadding( response, callback );
+ }
+
+
+ @DELETE
+ @RequireOrganizationAccess
+ public JSONWithPadding executeDelete( @Context UriInfo ui,
+ @QueryParam("callback") @DefaultValue("callback") String callback,
+ @QueryParam("app_delete_confirm") String confirmDelete) throws Exception {
+
+ if (!"confirm_delete_of_application_and_data".equals( confirmDelete ) ) {
+ throw new IllegalArgumentException(
+ "Cannot delete application without app_delete_confirm parameter");
+ }
+
+ Properties props = management.getProperties();
+
+ // for now, only works in test mode
+ String testProp = ( String ) props.get( "usergrid.test" );
+ if ( testProp == null || !Boolean.parseBoolean( testProp ) ) {
+ throw new UnsupportedOperationException();
+ }
+
+ if ( applicationId == null ) {
+ throw new IllegalArgumentException("Application ID not specified in request");
+ }
+
+ management.deleteApplication( applicationId );
+
+ logger.debug( "ApplicationResource.delete() deleted appId = {}", applicationId);
+
+ ApiResponse response = createApiResponse();
+ response.setAction( "delete" );
+ response.setApplication(emf.getEntityManager( applicationId ).getApplication());
+ response.setParams(ui.getQueryParameters());
+
+ logger.debug( "ApplicationResource.delete() sending response ");
+
+ return new JSONWithPadding( response, callback );
+ }
+
}
diff --git a/stack/rest/src/main/java/org/apache/usergrid/rest/management/organizations/applications/ApplicationsResource.java b/stack/rest/src/main/java/org/apache/usergrid/rest/management/organizations/applications/ApplicationsResource.java
index f8e2268..28eff4e 100644
--- a/stack/rest/src/main/java/org/apache/usergrid/rest/management/organizations/applications/ApplicationsResource.java
+++ b/stack/rest/src/main/java/org/apache/usergrid/rest/management/organizations/applications/ApplicationsResource.java
@@ -135,19 +135,6 @@
@RequireOrganizationAccess
- @Path(RootResource.APPLICATION_ID_PATH)
- @PUT
- public ApplicationResource restoreApplicationFromOrganizationByApplicationId(
- @Context UriInfo ui,
- @PathParam( "applicationId" )
- String applicationIdStr ) throws Exception {
-
- return getSubResource( ApplicationResource.class )
- .init( organization, UUID.fromString( applicationIdStr ) );
- }
-
-
- @RequireOrganizationAccess
@Path( "{applicationName}" )
public ApplicationResource applicationFromOrganizationByApplicationName(
@Context UriInfo ui, @PathParam( "applicationName" ) String applicationName ) throws Exception {
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/ApplicationCreateIT.java b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/ApplicationCreateIT.java
index 921027f..7ec562d 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/ApplicationCreateIT.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/ApplicationCreateIT.java
@@ -56,9 +56,9 @@
applicationMap.put( "name", appName );
this.management().token().setToken(orgAdminToken);
- this.management().orgs().organization( orgName ).apps().post(applicationMap );
+ this.management().orgs().org( orgName ).apps().post(applicationMap );
- Entity response = this.management().orgs().organization( orgName ).addToPath( "apps" ).addToPath( appName ).get();
+ Entity response = this.management().orgs().org( orgName ).addToPath( "apps" ).addToPath( appName ).get();
assertNotNull( response );
}
@@ -84,7 +84,7 @@
// test that we get all applications back from the management end-point
ManagementResponse orgAppResponse = clientSetup.getRestClient()
- .management().orgs().organization( orgName ).apps().getOrganizationApplications();
+ .management().orgs().org( orgName ).apps().getOrganizationApplications();
int count = 0;
for ( String name : orgAppResponse.getData().keySet() ) {
@@ -100,7 +100,7 @@
String orgName, String appName, Token orgAdminToken, List<Entity> entities) {
ApiResponse appCreateResponse = clientSetup.getRestClient()
- .management().orgs().organization( orgName ).app().post( new Application( appName ) );
+ .management().orgs().org( orgName ).app().post( new Application( appName ) );
UUID appId = appCreateResponse.getEntities().get(0).getUuid();
refreshIndex();
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/ApplicationDeleteIT.java b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/ApplicationDeleteIT.java
index a70fee1..d00ae74 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/ApplicationDeleteIT.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/ApplicationDeleteIT.java
@@ -18,39 +18,37 @@
package org.apache.usergrid.rest.applications;
-import com.fasterxml.jackson.databind.JsonNode;
-import com.sun.jersey.api.client.UniformInterfaceException;
-import org.apache.usergrid.rest.test.resource2point0.AbstractRestIT;
-import org.apache.usergrid.rest.test.resource2point0.endpoints.mgmt.ManagementResponse;
-import org.apache.usergrid.rest.test.resource2point0.model.*;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.UUID;
+
+import javax.ws.rs.core.MediaType;
+
import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Ignore;
import org.junit.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import net.jcip.annotations.NotThreadSafe;
-import javax.ws.rs.core.MediaType;
-import java.util.*;
+import org.apache.usergrid.rest.test.resource2point0.AbstractRestIT;
+import org.apache.usergrid.rest.test.resource2point0.endpoints.mgmt.ManagementResponse;
+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.Entity;
+import org.apache.usergrid.rest.test.resource2point0.model.Token;
+
+import com.fasterxml.jackson.databind.JsonNode;
+import com.sun.jersey.api.client.UniformInterfaceException;
import static org.junit.Assert.fail;
-@NotThreadSafe
+
public class ApplicationDeleteIT extends AbstractRestIT {
private static final Logger logger = LoggerFactory.getLogger(ApplicationDeleteIT.class);
public static final int INDEXING_WAIT = 3000;
- Token orgAdminToken;
- String orgName;
- @Before
- public void setup(){
- orgAdminToken = getAdminToken( clientSetup.getUsername(), clientSetup.getUsername());
- orgName = clientSetup.getOrganization().getName();
-
- }
/**
* Test most common use cases.
@@ -67,27 +65,32 @@
// create app with a collection of "things"
+ String orgName = clientSetup.getOrganization().getName();
+ String appToDeleteName = clientSetup.getAppName() + "_appToDelete";
+ Token orgAdminToken = getAdminToken( clientSetup.getUsername(), clientSetup.getUsername());
+
List<Entity> entities = new ArrayList<>();
- String appToDeleteName = clientSetup.getAppName() + UUID.randomUUID();
UUID appToDeleteId = createAppWithCollection(orgName, appToDeleteName, orgAdminToken, entities);
// delete the app
try {
- clientSetup.getRestClient()
- .org(orgName).app(appToDeleteId.toString()).getResource()
+ clientSetup.getRestClient() .management().orgs()
+ .org(orgName).apps().app(appToDeleteId.toString()).getResource()
.queryParam("access_token", orgAdminToken.getAccessToken())
.delete();
fail("Delete must fail without app_delete_confirm parameter");
- } catch ( Exception e ) {
- logger.error("Error", e);
+ } catch ( UniformInterfaceException expected ) {
+ Assert.assertEquals("Error must be 400", 400, expected.getResponse().getStatus() );
+ JsonNode node = mapper.readTree( expected.getResponse().getEntity( String.class ));
+ Assert.assertEquals("Cannot delete application without app_delete_confirm parameter", node.get("error_description").textValue());
}
- clientSetup.getRestClient()
- .org(orgName).app(appToDeleteId.toString() ).getResource()
+ clientSetup.getRestClient().management().orgs()
+ .org(orgName).apps().app(appToDeleteId.toString() ).getResource()
.queryParam("access_token", orgAdminToken.getAccessToken() )
.queryParam("app_delete_confirm", "confirm_delete_of_application_and_data")
.delete();
@@ -95,8 +98,8 @@
// test that we can no longer get the app
try {
- clientSetup.getRestClient()
- .org(orgName).app(appToDeleteName).getResource()
+ clientSetup.getRestClient().management().orgs()
+ .org(orgName).apps().app(appToDeleteName).getResource()
.queryParam("access_token", orgAdminToken.getAccessToken())
.type(MediaType.APPLICATION_JSON)
.get(ApiResponse.class);
@@ -104,11 +107,26 @@
fail("Must not be able to get deleted app");
} catch ( UniformInterfaceException expected ) {
- Assert.assertEquals("Error must be 400", 400, expected.getResponse().getStatus() );
+ Assert.assertEquals("Error must be 404", 404, expected.getResponse().getStatus() );
JsonNode node = mapper.readTree( expected.getResponse().getEntity( String.class ));
- Assert.assertEquals("organization_application_not_found", node.get("error").textValue());
+ Assert.assertEquals("entity_not_found", node.get("error").textValue());
}
+
+ try {
+ clientSetup.getRestClient().org( orgName ).app( appToDeleteName ).getResource()
+ .queryParam( "access_token", orgAdminToken.getAccessToken() ).type( MediaType.APPLICATION_JSON )
+ .get( ApiResponse.class );
+
+ fail( "Must not be able to get deleted app" );
+ }
+ catch ( UniformInterfaceException expected ) {
+ Assert.assertEquals( "Error must be 404", 404, expected.getResponse().getStatus() );
+ JsonNode node = mapper.readTree( expected.getResponse().getEntity( String.class ) );
+ Assert.assertEquals( "organization_application_not_found", node.get( "error" ).textValue() );
+ }
+
+
// test that we can no longer get deleted app's collection
try {
@@ -121,7 +139,7 @@
fail("Must not be able to get deleted app's collection");
} catch ( UniformInterfaceException expected ) {
- Assert.assertEquals("Error must be 400", 400, expected.getResponse().getStatus() );
+ Assert.assertEquals("Error must be 400", 404, expected.getResponse().getStatus() );
JsonNode node = mapper.readTree( expected.getResponse().getEntity( String.class ));
Assert.assertEquals("organization_application_not_found", node.get("error").textValue());
}
@@ -140,7 +158,7 @@
} catch ( UniformInterfaceException expected ) {
// TODO: why not a 404?
- Assert.assertEquals("Error must be 400", 400, expected.getResponse().getStatus() );
+ Assert.assertEquals("Error must be 400", 404, expected.getResponse().getStatus() );
JsonNode node = mapper.readTree( expected.getResponse().getEntity( String.class ));
Assert.assertEquals("organization_application_not_found", node.get("error").textValue());
}
@@ -151,7 +169,7 @@
refreshIndex();
ManagementResponse orgAppResponse = clientSetup.getRestClient()
- .management().orgs().organization( orgName ).apps().getOrganizationApplications();
+ .management().orgs().org( orgName ).apps().getOrganizationApplications();
for ( String appName : orgAppResponse.getData().keySet() ) {
if ( orgAppResponse.getData().get( appName ).equals( appToDeleteId.toString() )) {
@@ -162,21 +180,22 @@
// test that we cannot delete the application a second time
try {
- clientSetup.getRestClient()
- .org(orgName).app(appToDeleteId.toString()).getResource()
- .queryParam("access_token", orgAdminToken.getAccessToken())
- .delete();
+ clientSetup.getRestClient().management().orgs().org( orgName ).apps().app( appToDeleteId.toString() )
+ .getResource().queryParam( "access_token", orgAdminToken.getAccessToken() )
+ .queryParam( "app_delete_confirm", "confirm_delete_of_application_and_data" ).delete();
- } catch ( UniformInterfaceException expected ) {
- Assert.assertEquals("Error must be 404", 404, expected.getResponse().getStatus() );
- JsonNode node = mapper.readTree( expected.getResponse().getEntity( String.class ));
- Assert.assertEquals("not_found", node.get("error").textValue());
+ fail("Can't delete a non existent app twice");
+ }
+ catch ( UniformInterfaceException expected ) {
+ Assert.assertEquals( "Error must be 404", 404, expected.getResponse().getStatus() );
+ JsonNode node = mapper.readTree( expected.getResponse().getEntity( String.class ) );
+ Assert.assertEquals( "entity_not_found", node.get( "error" ).textValue() );
}
// test that we can create a new application with the same name
ApiResponse appCreateAgainResponse = clientSetup.getRestClient()
- .management().orgs().organization( orgName ).app().getResource()
+ .management().orgs().org( orgName ).app().getResource()
.queryParam( "access_token", orgAdminToken.getAccessToken() )
.type( MediaType.APPLICATION_JSON )
.post( ApiResponse.class, new Application( appToDeleteName ) );
@@ -198,9 +217,13 @@
*/
@Test
public void testAppRestore() throws Exception {
- String appToDeleteName = clientSetup.getAppName() + UUID.randomUUID();
// create app with a collection of "things"
+
+ String orgName = clientSetup.getOrganization().getName();
+ String appToDeleteName = clientSetup.getAppName() + "_appToDelete";
+ Token orgAdminToken = getAdminToken( clientSetup.getUsername(), clientSetup.getUsername());
+
List<Entity> entities = new ArrayList<>();
UUID appToDeleteId = createAppWithCollection(orgName, appToDeleteName, orgAdminToken, entities);
@@ -209,8 +232,8 @@
logger.debug("\n\nDeleting app\n");
- clientSetup.getRestClient()
- .org(orgName).app( appToDeleteName ).getResource()
+ clientSetup.getRestClient().management().orgs()
+ .org(orgName).apps().app( appToDeleteName ).getResource()
.queryParam("access_token", orgAdminToken.getAccessToken() )
.queryParam("app_delete_confirm", "confirm_delete_of_application_and_data")
.delete();
@@ -222,8 +245,8 @@
logger.debug("\n\nRestoring app\n");
- clientSetup.getRestClient()
- .org(orgName).app( appToDeleteId.toString() ).getResource()
+ clientSetup.getRestClient().management().orgs()
+ .org(orgName).apps().app( appToDeleteId.toString() ).getResource()
.queryParam("access_token", orgAdminToken.getAccessToken() )
.put();
@@ -234,7 +257,7 @@
logger.debug("\n\nGetting app list from management end-point\n");
ManagementResponse orgAppResponse = clientSetup.getRestClient()
- .management().orgs().organization( orgName ).apps().getOrganizationApplications();
+ .management().orgs().org( orgName ).apps().getOrganizationApplications();
boolean found = false;
for ( String appName : orgAppResponse.getData().keySet() ) {
@@ -274,21 +297,24 @@
*/
@Test
public void testAppRestoreConflict() throws Exception {
- String appToDeleteName = clientSetup.getAppName() + UUID.randomUUID();
// create app with a collection of "things"
+
+ String orgName = clientSetup.getOrganization().getName();
+ String appToDeleteName = clientSetup.getAppName() + "_appToDelete";
+ Token orgAdminToken = getAdminToken( clientSetup.getUsername(), clientSetup.getUsername());
+
List<Entity> entities = new ArrayList<>();
UUID appToDeleteId = createAppWithCollection(orgName, appToDeleteName, orgAdminToken, entities);
// delete the app
- clientSetup.getRestClient()
- .org( orgName ).app(appToDeleteId.toString() ).getResource()
+ clientSetup.getRestClient().management().orgs()
+ .org( orgName ).apps().app(appToDeleteId.toString() ).getResource()
.queryParam( "access_token", orgAdminToken.getAccessToken() )
.queryParam("app_delete_confirm", "confirm_delete_of_application_and_data")
.delete();
- refreshIndex();
// create new app with same name
@@ -298,8 +324,8 @@
try {
- clientSetup.getRestClient()
- .org(orgName).app(appToDeleteId.toString()).getResource()
+ clientSetup.getRestClient() .management().orgs()
+ .org(orgName).apps().app(appToDeleteId.toString()).getResource()
.queryParam("access_token", orgAdminToken.getAccessToken())
.put();
@@ -317,11 +343,11 @@
*/
@Test
public void testAppDeleteConflict() throws Exception {
- String appToDeleteName = clientSetup.getAppName() + UUID.randomUUID();
// create app with a collection of "things"
String orgName = clientSetup.getOrganization().getName();
+ String appToDeleteName = clientSetup.getAppName() + "_appToDelete";
Token orgAdminToken = getAdminToken( clientSetup.getUsername(), clientSetup.getUsername());
List<Entity> entities = new ArrayList<>();
@@ -330,12 +356,11 @@
// delete the app
- clientSetup.getRestClient()
- .org( orgName ).app(appToDeleteId.toString() ).getResource()
+ clientSetup.getRestClient().management().orgs().org( orgName ).apps().app( appToDeleteId.toString() ).getResource()
.queryParam( "access_token", orgAdminToken.getAccessToken() )
- .queryParam("app_delete_confirm", "confirm_delete_of_application_and_data")
+ .queryParam( "app_delete_confirm", "confirm_delete_of_application_and_data" )
.delete();
- refreshIndex();
+
// create new app with same name
UUID newAppId = createAppWithCollection(orgName, appToDeleteName, orgAdminToken, entities);
@@ -344,8 +369,7 @@
try {
- clientSetup.getRestClient()
- .org(orgName).app( newAppId.toString() ).getResource()
+ clientSetup.getRestClient().management().orgs().org( orgName ).apps().app( newAppId.toString() ).getResource()
.queryParam("access_token", orgAdminToken.getAccessToken())
.queryParam("app_delete_confirm", "confirm_delete_of_application_and_data")
.delete();
@@ -362,7 +386,7 @@
String orgName, String appName, Token orgAdminToken, List<Entity> entities) {
ApiResponse appCreateResponse = clientSetup.getRestClient()
- .management().orgs().organization( orgName ).app().getResource()
+ .management().orgs().org( orgName ).app().getResource()
.queryParam( "access_token", orgAdminToken.getAccessToken() )
.type( MediaType.APPLICATION_JSON )
.post( ApiResponse.class, new Application( appName ) );
@@ -386,7 +410,6 @@
entities.add( createResponse.getEntities().get(0) );
}
- refreshIndex();
return appId;
}
}
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/ApplicationResourceIT.java b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/ApplicationResourceIT.java
index 4ce3396..d4a3e06 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/ApplicationResourceIT.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/ApplicationResourceIT.java
@@ -130,7 +130,7 @@
//Create the organization resource
OrganizationResource orgResource = clientSetup.getRestClient()
- .management().orgs().organization(clientSetup.getOrganizationName());
+ .management().orgs().org( clientSetup.getOrganizationName() );
//retrieve the credentials
Credentials orgCredentials = new Credentials( orgResource.credentials().get(ApiResponse.class));
@@ -442,13 +442,13 @@
assertNotNull(entity);
refreshIndex();
//Retrieve an authentication token for the user
- Token tokenResponse = this.app().getResource(false).path(String.format("/%s/%s/token", orgName, appName))
+ Token tokenResponse = this.app().getResource(false).path("token")
.queryParam("grant_type", "password")
.queryParam("username", username)
.queryParam("password", "password")
- .accept(MediaType.APPLICATION_JSON)
- .type(MediaType.APPLICATION_JSON_TYPE)
- .get(Token.class);
+ .accept( MediaType.APPLICATION_JSON )
+ .type( MediaType.APPLICATION_JSON_TYPE )
+ .get( Token.class );
String token = tokenResponse.getAccessToken();
assertNotNull(token);
@@ -756,7 +756,7 @@
*/
public Credentials getOrgCredentials() throws IOException {
String orgName = clientSetup.getOrganizationName().toLowerCase();
- return new Credentials( clientSetup.getRestClient().management().orgs().organization(orgName).credentials().get(ApiResponse.class,null,true) );
+ return new Credentials( clientSetup.getRestClient().management().orgs().org( orgName ).credentials().get(ApiResponse.class,null,true) );
}
}
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/management/AdminUsersIT.java b/stack/rest/src/test/java/org/apache/usergrid/rest/management/AdminUsersIT.java
index 9306f2b..1277ae2 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/management/AdminUsersIT.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/management/AdminUsersIT.java
@@ -495,7 +495,7 @@
orgPropertiesPayload.put("properties", props);
- management().orgs().organization( clientSetup.getOrganizationName() ).put( orgPropertiesPayload );
+ management().orgs().org( clientSetup.getOrganizationName() ).put( orgPropertiesPayload );
//Creates a payload with the same password to verify we cannot change the password to itself.
Map<String, Object> payload = new HashMap<>( );
@@ -615,12 +615,12 @@
// management().token().setToken( organizationToken );
//Create admin user
- management().orgs().organization( clientSetup.getOrganizationName() ).users().post(ApiResponse.class ,adminUserPayload );
+ management().orgs().org( clientSetup.getOrganizationName() ).users().post(ApiResponse.class ,adminUserPayload );
refreshIndex();
//Retrieves the admin users
- ApiResponse adminUsers = management().orgs().organization( clientSetup.getOrganizationName() ).users().get(ApiResponse.class);
+ ApiResponse adminUsers = management().orgs().org( clientSetup.getOrganizationName() ).users().get(ApiResponse.class);
assertEquals("There need to be 2 admin users",2,( ( ArrayList ) adminUsers.getData() ).size());
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/management/ExportResourceIT.java b/stack/rest/src/test/java/org/apache/usergrid/rest/management/ExportResourceIT.java
index 8ed6777..0874fc7 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/management/ExportResourceIT.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/management/ExportResourceIT.java
@@ -53,7 +53,7 @@
public void exportApplicationUUIDRetTest() throws Exception {
try {
- management().orgs().organization( clientSetup.getOrganizationName() )
+ management().orgs().org( clientSetup.getOrganizationName() )
.app().addToPath( clientSetup.getAppUuid() ).addToPath( "export" );
}
catch ( UniformInterfaceException uie ) {
@@ -72,7 +72,7 @@
try {
- exportEntity = management().orgs().organization( clientSetup.getOrganizationName() )
+ exportEntity = management().orgs().org( clientSetup.getOrganizationName() )
.app().addToPath( clientSetup.getAppUuid()).addToPath( "collection" )
.addToPath( "users" ).addToPath( "export" ).post(ApiResponse.class,payloadBuilder() );
}
@@ -97,7 +97,7 @@
try {
- exportEntity = management().orgs().organization( clientSetup.getOrganizationName() )
+ exportEntity = management().orgs().org( clientSetup.getOrganizationName() )
.addToPath( "export" ).post( ApiResponse.class, payloadBuilder() );
}
catch ( UniformInterfaceException uie ) {
@@ -111,7 +111,7 @@
exportEntity = null;
try {
- exportEntity = management().orgs().organization( clientSetup.getOrganizationName() )
+ exportEntity = management().orgs().org( clientSetup.getOrganizationName() )
.addToPath( "export" ).addToPath( uuid ).get( ApiResponse.class );
}
catch ( UniformInterfaceException uie ) {
@@ -139,7 +139,7 @@
try {
- exportEntity = management().orgs().organization( clientSetup.getOrganizationName() )
+ exportEntity = management().orgs().org( clientSetup.getOrganizationName() )
.app().addToPath( clientSetup.getAppUuid() )
.addToPath( "export" ).post( ApiResponse.class, payloadBuilder() );
}
@@ -155,7 +155,7 @@
refreshIndex();
try {
- exportEntity = management().orgs().organization( clientSetup.getOrganizationName() )
+ exportEntity = management().orgs().org( clientSetup.getOrganizationName() )
.addToPath( "export" ).addToPath( uuid ).get( ApiResponse.class );
}
catch ( UniformInterfaceException uie ) {
@@ -174,7 +174,7 @@
ApiResponse exportEntity = null;
- exportEntity = management().orgs().organization( clientSetup.getOrganizationName() )
+ exportEntity = management().orgs().org( clientSetup.getOrganizationName() )
.app().addToPath( clientSetup.getAppUuid()).addToPath( "collection" )
.addToPath( "users" ).addToPath( "export" )
.post( ApiResponse.class, payloadBuilder() );
@@ -185,7 +185,7 @@
exportEntity = null;
try {
- exportEntity = management().orgs().organization( clientSetup.getOrganizationName() )
+ exportEntity = management().orgs().org( clientSetup.getOrganizationName() )
.addToPath( "export" ).addToPath( uuid ).get( ApiResponse.class );
}
catch ( UniformInterfaceException uie ) {
@@ -205,7 +205,7 @@
public void exportGetWrongUUID() throws Exception {
UUID fake = UUID.fromString( "AAAAAAAA-FFFF-FFFF-FFFF-AAAAAAAAAAAA" );
try {
- management().orgs().organization( clientSetup.getOrganizationName() )
+ management().orgs().org( clientSetup.getOrganizationName() )
.addToPath( "export" ).addToPath( fake.toString() ).get( ApiResponse.class );
fail( "Should not have been able to get fake uuid" );
}
@@ -221,7 +221,7 @@
@Test
public void exportPostApplicationNullPointerProperties() throws Exception {
try {
- management().orgs().organization( clientSetup.getOrganizationName() )
+ management().orgs().org( clientSetup.getOrganizationName() )
.app().addToPath( clientSetup.getAppUuid() )
.addToPath( "export" ).post( ApiResponse.class,
new HashMap<String, Object>() );
@@ -237,7 +237,7 @@
@Test
public void exportPostOrganizationNullPointerProperties() throws Exception {
try {
- management().orgs().organization( clientSetup.getOrganizationName() )
+ management().orgs().org( clientSetup.getOrganizationName() )
.addToPath( "export" ).post( ApiResponse.class, new HashMap<String, Object>() );
fail( "Should not have passed, The payload is empty." );
}
@@ -251,7 +251,7 @@
@Test
public void exportPostCollectionNullPointer() throws Exception {
try {
- management().orgs().organization( clientSetup.getOrganizationName() )
+ management().orgs().org( clientSetup.getOrganizationName() )
.app().addToPath( clientSetup.getAppUuid() )
.addToPath( "collection" ).addToPath( "users" )
.addToPath( "export" ).post( ApiResponse.class, new HashMap<String, Object>() );
@@ -269,7 +269,7 @@
UUID fake = UUID.fromString( "AAAAAAAA-FFFF-FFFF-FFFF-AAAAAAAAAAAA" );
try {
- management().orgs().organization( clientSetup.getOrganizationName() )
+ management().orgs().org( clientSetup.getOrganizationName() )
.app().addToPath( clientSetup.getAppUuid() )
.addToPath( "collection" ).addToPath( "users" )
.addToPath( "export" ).addToPath( fake.toString() ).get(ApiResponse.class ,false);
@@ -286,7 +286,7 @@
UUID fake = UUID.fromString( "AAAAAAAA-FFFF-FFFF-FFFF-AAAAAAAAAAAA" );
try {
- management().orgs().organization( clientSetup.getOrganizationName() )
+ management().orgs().org( clientSetup.getOrganizationName() )
.app().addToPath( clientSetup.getAppUuid() )
.addToPath( "export" ).addToPath( fake.toString() ).get(ApiResponse.class ,false);
fail( "Should not have passed as we didn't have an access token." );
@@ -302,7 +302,7 @@
UUID fake = UUID.fromString( "AAAAAAAA-FFFF-FFFF-FFFF-AAAAAAAAAAAA" );
try {
- management().orgs().organization( clientSetup.getOrganizationName() )
+ management().orgs().org( clientSetup.getOrganizationName() )
.addToPath( "export" ).addToPath( fake.toString() ).get(ApiResponse.class ,false);
fail( "Should not have passed as we didn't have an access token." );
}
@@ -320,7 +320,7 @@
properties.remove( "storage_info" );
try {
- management().orgs().organization( clientSetup.getOrganizationName() )
+ management().orgs().org( clientSetup.getOrganizationName() )
.addToPath( "export" ).post( ApiResponse.class, payload );
fail( "Should not have passed as we were missing an important part of the payload" );
@@ -340,7 +340,7 @@
properties.remove( "storage_info" );
try {
- management().orgs().organization( clientSetup.getOrganizationName() )
+ management().orgs().org( clientSetup.getOrganizationName() )
.app().addToPath( clientSetup.getAppUuid() )
.addToPath( "export" ).post( ApiResponse.class,
payload );
@@ -361,7 +361,7 @@
properties.remove( "storage_info" );
try {
- management().orgs().organization( clientSetup.getOrganizationName() )
+ management().orgs().org( clientSetup.getOrganizationName() )
.app().addToPath( clientSetup.getAppUuid() )
.addToPath( "collection" ).addToPath( "users" )
.addToPath( "export" ).post( ApiResponse.class,
@@ -383,7 +383,7 @@
properties.remove( "storage_provider" );
try {
- management().orgs().organization( clientSetup.getOrganizationName() )
+ management().orgs().org( clientSetup.getOrganizationName() )
.addToPath( "export" ).post( ApiResponse.class, payload );
fail( "Should not have passed as we were missing an important part of the payload" );
@@ -403,7 +403,7 @@
properties.remove( "storage_provider" );
try {
- management().orgs().organization( clientSetup.getOrganizationName() )
+ management().orgs().org( clientSetup.getOrganizationName() )
.app().addToPath( clientSetup.getAppUuid() )
.addToPath( "export" ).post( ApiResponse.class,
payload );
@@ -424,7 +424,7 @@
properties.remove( "storage_provider" );
try {
- management().orgs().organization( clientSetup.getOrganizationName() )
+ management().orgs().org( clientSetup.getOrganizationName() )
.app().addToPath( clientSetup.getAppUuid() )
.addToPath( "collection" ).addToPath( "users" )
.addToPath( "export" ).post( ApiResponse.class,
@@ -448,7 +448,7 @@
storage_info.remove( "s3_key" );
try {
- management().orgs().organization( clientSetup.getOrganizationName() )
+ management().orgs().org( clientSetup.getOrganizationName() )
.addToPath( "export" ).post( ApiResponse.class, payload );
fail( "Should not have passed as we were missing an important part of the payload" );
@@ -464,7 +464,7 @@
storage_info.remove( "s3_access_id");
try {
- management().orgs().organization( clientSetup.getOrganizationName() )
+ management().orgs().org( clientSetup.getOrganizationName() )
.addToPath( "export" ).post( ApiResponse.class, payload );
fail( "Should not have passed as we were missing an important part of the payload" );
@@ -480,7 +480,7 @@
storage_info.remove( "bucket_location" );
try {
- management().orgs().organization( clientSetup.getOrganizationName() )
+ management().orgs().org( clientSetup.getOrganizationName() )
.addToPath( "export" ).post( ApiResponse.class, payload );
fail( "Should not have passed as we were missing an important part of the payload" );
@@ -500,7 +500,7 @@
storage_info.remove( "s3_key" );
try {
- management().orgs().organization( clientSetup.getOrganizationName() )
+ management().orgs().org( clientSetup.getOrganizationName() )
.app().addToPath( clientSetup.getAppUuid() )
.addToPath( "export" ).post( ApiResponse.class, payload );
fail( "Should not have passed as we were missing an important part of the payload" );
@@ -517,7 +517,7 @@
storage_info.remove( "s3_access_id" );
try {
- management().orgs().organization( clientSetup.getOrganizationName() )
+ management().orgs().org( clientSetup.getOrganizationName() )
.app().addToPath( clientSetup.getAppUuid() )
.addToPath( "export" ).post( ApiResponse.class, payload );
fail( "Should not have passed as we were missing an important part of the payload" );
@@ -534,7 +534,7 @@
storage_info.remove( "bucket_location" );
try {
- management().orgs().organization( clientSetup.getOrganizationName() )
+ management().orgs().org( clientSetup.getOrganizationName() )
.app().addToPath( clientSetup.getAppUuid() )
.addToPath( "export" ).post( ApiResponse.class, payload );
fail( "Should not have passed as we were missing an important part of the payload" );
@@ -555,7 +555,7 @@
storage_info.remove( "s3_key" );
try {
- management().orgs().organization( clientSetup.getOrganizationName() )
+ management().orgs().org( clientSetup.getOrganizationName() )
.app().addToPath( clientSetup.getAppUuid() )
.addToPath( "collection" ).addToPath( "users" )
.addToPath( "export" ).post( ApiResponse.class, payload );
@@ -573,7 +573,7 @@
storage_info.remove( "s3_access_id" );
try {
- management().orgs().organization( clientSetup.getOrganizationName() )
+ management().orgs().org( clientSetup.getOrganizationName() )
.app().addToPath( clientSetup.getAppUuid() )
.addToPath( "collection" ).addToPath( "users" )
.addToPath( "export" ).post( ApiResponse.class, payload );
@@ -591,7 +591,7 @@
storage_info.remove( "bucket_location" );
try {
- management().orgs().organization( clientSetup.getOrganizationName() )
+ management().orgs().org( clientSetup.getOrganizationName() )
.app().addToPath( clientSetup.getAppUuid() )
.addToPath( "collection" ).addToPath( "users" )
.addToPath( "export" ).post( ApiResponse.class, payload );
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/management/ImportResourceIT.java b/stack/rest/src/test/java/org/apache/usergrid/rest/management/ImportResourceIT.java
index e33d488..34371b6 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/management/ImportResourceIT.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/management/ImportResourceIT.java
@@ -138,7 +138,7 @@
///management/orgs/orgname/apps/appname/import
Entity entity = this.management()
.orgs()
- .organization(org)
+ .org( org )
.app()
.addToPath(app)
.addToPath("imports")
@@ -148,7 +148,7 @@
entity = this.management()
.orgs()
- .organization(org)
+ .org( org )
.app()
.addToPath(app)
.addToPath("imports")
@@ -175,7 +175,7 @@
Entity payload = payloadBuilder();
// /management/orgs/orgname/apps/appname/import
- Entity entity = this.management().orgs().organization(org).app()
+ Entity entity = this.management().orgs().org( org ).app()
.addToPath(app)
.addToPath("imports")
.post(Entity.class,payload);
@@ -183,7 +183,7 @@
assertNotNull(entity);
// test that you can access the organization using the currently set token.
- this.management().orgs().organization(org).app().addToPath(app)
+ this.management().orgs().org( org ).app().addToPath(app)
.addToPath("imports").addToPath(entity.getUuid().toString()).get();
//create a new org/app
@@ -208,7 +208,7 @@
//try to read with the new token, which should fail as unauthorized
try {
- this.management().orgs().organization(org).app().addToPath(app)
+ this.management().orgs().org( org ).app().addToPath(app)
.addToPath("imports").addToPath(entity.getUuid().toString()).get();
fail("Should not be able to read import job with unauthorized token");
} catch (UniformInterfaceException ex) {
@@ -228,7 +228,7 @@
Entity payload = new Entity();
try {
- this.management().orgs().organization(org).app().addToPath(app).addToPath("imports").post(Entity.class,payload);
+ this.management().orgs().org( org ).app().addToPath(app).addToPath("imports").post(Entity.class,payload);
} catch (UniformInterfaceException uie) {
responseStatus = uie.getResponse().getClientResponseStatus();
}
@@ -248,7 +248,7 @@
properties.remove("storage_info");
try {
- this.management().orgs().organization(org).app().addToPath(app).addToPath("imports").post(Entity.class,payload);
+ this.management().orgs().org( org ).app().addToPath(app).addToPath("imports").post(Entity.class,payload);
} catch (UniformInterfaceException uie) {
responseStatus = uie.getResponse().getClientResponseStatus();
}
@@ -270,7 +270,7 @@
try {
- this.management().orgs().organization(org).app().addToPath(app).addToPath("imports").post(Entity.class,payload);
+ this.management().orgs().org( org ).app().addToPath(app).addToPath("imports").post(Entity.class,payload);
} catch (UniformInterfaceException uie) {
responseStatus = uie.getResponse().getClientResponseStatus();
}
@@ -293,7 +293,7 @@
storage_info.remove("s3_key");
try {
- this.management().orgs().organization(org).app().addToPath(app).addToPath("imports").post(Entity.class,payload);
+ this.management().orgs().org( org ).app().addToPath(app).addToPath("imports").post(Entity.class,payload);
} catch (UniformInterfaceException uie) {
responseStatus = uie.getResponse().getClientResponseStatus();
}
@@ -306,7 +306,7 @@
storage_info.remove("s3_access_id");
try {
- this.management().orgs().organization(org).app().addToPath(app).addToPath("imports").post(Entity.class,payload);
+ this.management().orgs().org( org ).app().addToPath(app).addToPath("imports").post(Entity.class,payload);
} catch (UniformInterfaceException uie) {
responseStatus = uie.getResponse().getClientResponseStatus();
}
@@ -319,7 +319,7 @@
storage_info.remove("bucket_location");
try {
- this.management().orgs().organization(org).app().addToPath(app).addToPath("imports").post(Entity.class,payload);
+ this.management().orgs().org( org ).app().addToPath(app).addToPath("imports").post(Entity.class,payload);
} catch (UniformInterfaceException uie) {
responseStatus = uie.getResponse().getClientResponseStatus();
}
@@ -438,7 +438,7 @@
Entity importEntity = importCollection();
- Entity importGet = this.management().orgs().organization( org ).app()
+ Entity importGet = this.management().orgs().org( org ).app()
.addToPath(app)
.addToPath( "imports" )
.addToPath(importEntity.getUuid().toString())
@@ -446,7 +446,7 @@
refreshIndex();
- Entity importGetIncludes = this.management().orgs().organization(org).app()
+ Entity importGetIncludes = this.management().orgs().org( org ).app()
.addToPath(app)
.addToPath("imports")
.addToPath(importEntity.getUuid().toString())
@@ -512,7 +512,7 @@
Entity importEntity = importCollection();
- Entity importGet = this.management().orgs().organization(org).app()
+ Entity importGet = this.management().orgs().org( org ).app()
.addToPath(app)
.addToPath("imports")
.addToPath(importEntity.getUuid().toString()).get();
@@ -558,7 +558,7 @@
Entity importEntity = importCollection();
- Entity importGet = this.management().orgs().organization(org).app()
+ Entity importGet = this.management().orgs().org( org ).app()
.addToPath(app)
.addToPath("imports" )
.addToPath(importEntity.getUuid().toString() )
@@ -610,13 +610,13 @@
// we should now have 100 Entities in the default app
- Entity importGet = this.management().orgs().organization( org ).app()
+ Entity importGet = this.management().orgs().org( org ).app()
.addToPath( app )
.addToPath("imports")
.addToPath( importEntity.getUuid().toString() )
.get();
- Entity importGetIncludes = this.management().orgs().organization(org).app()
+ Entity importGetIncludes = this.management().orgs().org( org ).app()
.addToPath(app)
.addToPath("imports" )
.addToPath(importEntity.getUuid().toString() )
@@ -654,7 +654,7 @@
}});
}});
- Entity importEntity = this.management().orgs().organization(org).app()
+ Entity importEntity = this.management().orgs().org( org ).app()
.addToPath(app)
.addToPath("imports")
.post(Entity.class,importPayload);
@@ -664,7 +664,7 @@
while (retries++ < maxRetries) {
- Entity importGet = this.management().orgs().organization(org).app()
+ Entity importGet = this.management().orgs().org( org ).app()
.addToPath( app )
.addToPath( "imports")
.addToPath( importEntity.getUuid().toString() )
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/management/ManagementResourceIT.java b/stack/rest/src/test/java/org/apache/usergrid/rest/management/ManagementResourceIT.java
index 25736f7..c41735c 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/management/ManagementResourceIT.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/management/ManagementResourceIT.java
@@ -70,7 +70,7 @@
public void setSelfAdminPasswordAsAdwmin() {
UUID uuid = UUIDUtils.newTimeUUID();
management.token().setToken(clientSetup.getSuperuserToken());
- management.orgs().organization(clientSetup.getOrganizationName()).users().post(ApiResponse.class, new User("test" + uuid, "test" + uuid, "test" + uuid + "@email.com", "test"));
+ management.orgs().org( clientSetup.getOrganizationName() ).users().post(ApiResponse.class, new User("test" + uuid, "test" + uuid, "test" + uuid + "@email.com", "test"));
Map<String, Object> data = new HashMap<>();
data.put( "newpassword", "foo" );
data.put( "oldpassword", "test" );
@@ -110,7 +110,7 @@
String returnVal = "";
try {
- returnVal = this.management().orgs().organization(orgName).get(String.class);
+ returnVal = this.management().orgs().org( orgName ).get(String.class);
}
catch ( UniformInterfaceException uie ) {
status = uie.getResponse().getClientResponseStatus();
@@ -122,7 +122,7 @@
// this admin should have access to test org
status = null;
try {
- this.management().orgs().organization(this.clientSetup.getOrganizationName()).get( String.class );
+ this.management().orgs().org( this.clientSetup.getOrganizationName() ).get( String.class );
}
catch ( UniformInterfaceException uie ) {
status = uie.getResponse().getClientResponseStatus();
@@ -134,7 +134,7 @@
status = null;
try {
- this.management().orgs().organization(this.clientSetup.getOrganizationName()).get( String.class );
+ this.management().orgs().org( this.clientSetup.getOrganizationName() ).get( String.class );
}
catch ( UniformInterfaceException uie ) {
status = uie.getResponse().getClientResponseStatus();
@@ -246,7 +246,7 @@
// POST /applications
- ApiResponse apiResponse = management().orgs().organization(clientSetup.getOrganizationName()).app().post(new Application("mgmt-org-app"));
+ ApiResponse apiResponse = management().orgs().org( clientSetup.getOrganizationName() ).app().post(new Application("mgmt-org-app"));
refreshIndex();
@@ -268,7 +268,7 @@
// GET /applications/mgmt-org-app
- Entity app = management().orgs().organization(clientSetup.getOrganizationName()).app().addToPath("mgmt-org-app").get();
+ Entity app = management().orgs().org( clientSetup.getOrganizationName() ).app().addToPath("mgmt-org-app").get();
assertEquals(this.clientSetup.getOrganizationName().toLowerCase(), app.get("organizationName").toString());
@@ -327,7 +327,7 @@
Map<String, Object> properties = new HashMap<String, Object>();
properties.put( "securityLevel", 5 );
payload.put( OrganizationsResource.ORGANIZATION_PROPERTIES, properties );
- management.orgs().organization(clientSetup.getOrganizationName())
+ management.orgs().org( clientSetup.getOrganizationName() )
.put(payload);
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/management/OrganizationsIT.java b/stack/rest/src/test/java/org/apache/usergrid/rest/management/OrganizationsIT.java
index 4385a4c..8a298f6 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/management/OrganizationsIT.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/management/OrganizationsIT.java
@@ -19,9 +19,7 @@
import java.io.IOException;
import java.util.HashMap;
-import java.util.LinkedHashMap;
import java.util.Map;
-import java.util.UUID;
import org.apache.usergrid.rest.test.resource2point0.model.*;
import org.junit.Ignore;
@@ -82,7 +80,7 @@
//this.refreshIndex();
//Assert that the get returns the correct org and owner.
- Organization returnedOrg = clientSetup.getRestClient().management().orgs().organization( organization.getOrganization()).get();
+ Organization returnedOrg = clientSetup.getRestClient().management().orgs().org( organization.getOrganization() ).get();
assertTrue( returnedOrg != null && returnedOrg.getName().equals( organization.getOrganization() ) );
@@ -278,7 +276,7 @@
this.management().token().setToken(tokenReturned);
//Assert that the get returns the correct org and owner.
- Organization returnedOrg = clientSetup.getRestClient().management().orgs().organization( organization.getOrganization() ).get();
+ Organization returnedOrg = clientSetup.getRestClient().management().orgs().org( organization.getOrganization() ).get();
assertTrue(returnedOrg != null && returnedOrg.getName().equals(organization.getOrganization()));
@@ -295,7 +293,7 @@
try {
//Delete default organization
- clientSetup.getRestClient().management().orgs().organization( clientSetup.getOrganizationName() ).delete();
+ clientSetup.getRestClient().management().orgs().org( clientSetup.getOrganizationName() ).delete();
fail( "Delete is not implemented yet" );
}catch(UniformInterfaceException uie){
assertEquals( ClientResponse.Status.NOT_IMPLEMENTED ,uie.getResponse().getStatus());
@@ -320,7 +318,7 @@
adminUserPayload.put("password", username);
//create adminUser
- ApiResponse adminUserEntityResponse = management().orgs().organization( clientSetup.getOrganizationName() ).users().post(ApiResponse.class, adminUserPayload);
+ ApiResponse adminUserEntityResponse = management().orgs().org( clientSetup.getOrganizationName() ).users().post(ApiResponse.class, adminUserPayload);
Entity adminUserResponse = new Entity(adminUserEntityResponse);
//verify that the response contains the correct data
@@ -357,12 +355,12 @@
orgPayload.put( "properties", properties );
//update the organization.
- management().orgs().organization( clientSetup.getOrganizationName() ).put(orgPayload);
+ management().orgs().org( clientSetup.getOrganizationName() ).put(orgPayload);
this.refreshIndex();
//retrieve the organization
- Organization orgResponse = management().orgs().organization( clientSetup.getOrganizationName() ).get();
+ Organization orgResponse = management().orgs().org( clientSetup.getOrganizationName() ).get();
assertEquals(5, orgResponse.getProperties().get("puppies" ));
@@ -371,11 +369,11 @@
orgPayload.put("properties", properties );
//update the organization.
- management().orgs().organization( clientSetup.getOrganizationName()).put(orgPayload);
+ management().orgs().org( clientSetup.getOrganizationName() ).put(orgPayload);
this.refreshIndex();
- orgResponse = management().orgs().organization( clientSetup.getOrganizationName() ).get();
+ orgResponse = management().orgs().org( clientSetup.getOrganizationName() ).get();
assertEquals( 6, orgResponse.getProperties().get( "puppies" ));
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 2972126..4d85ade 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,7 +24,6 @@
import org.apache.usergrid.rest.test.resource2point0.AbstractRestIT;
import org.apache.usergrid.rest.test.resource2point0.model.*;
-import org.junit.Ignore;
import org.junit.Test;
import org.jvnet.mock_javamail.Mailbox;
import org.slf4j.Logger;
@@ -86,7 +85,7 @@
ApiResponse user = this
.management()
.orgs()
- .organization(organizationName)
+ .org( organizationName )
.users()
.post(new User().chainPut("email", email).chainPut("password", password));
@@ -133,7 +132,7 @@
.queryParam("access_token", t).accept(MediaType.APPLICATION_JSON)
.type(MediaType.APPLICATION_FORM_URLENCODED).put(String.class, form);
} catch (UniformInterfaceException e) {
- assertEquals("Should receive a 400 Not Found", 400, e.getResponse().getStatus());
+ assertEquals("Should receive a 404 Not Found", 404, e.getResponse().getStatus());
}
} finally {
setTestProperties(originalProperties);
@@ -207,7 +206,7 @@
this
.management()
.orgs()
- .organization(this.clientSetup.getOrganizationName())
+ .org( this.clientSetup.getOrganizationName() )
.users()
.getResource( false )
.queryParam( "access_token", token )
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/management/organizations/AdminEmailEncodingIT.java b/stack/rest/src/test/java/org/apache/usergrid/rest/management/organizations/AdminEmailEncodingIT.java
index a78f4fd..ceab55d 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/management/organizations/AdminEmailEncodingIT.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/management/organizations/AdminEmailEncodingIT.java
@@ -28,7 +28,6 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import java.io.IOException;
import java.util.UUID;
import static junit.framework.TestCase.assertNotNull;
@@ -119,7 +118,7 @@
//Instruct the test framework to use the new token
this.app().token().setToken(tokenReturned);
//Create an application within the organization
- clientSetup.getRestClient().management().orgs().organization(organization.getName()).app().post(new Application(app));
+ clientSetup.getRestClient().management().orgs().org( organization.getName() ).app().post(new Application(app));
//retrieve the new management user by username and ensure the username and email address matches the input
Entity me = clientSetup.getRestClient().management().users().entity(username).get();
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/ClientSetup.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/ClientSetup.java
index 2654184..821b80a 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/ClientSetup.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/ClientSetup.java
@@ -27,7 +27,6 @@
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.Credentials;
-import org.apache.usergrid.rest.test.resource2point0.model.Entity;
import org.apache.usergrid.rest.test.resource2point0.model.Token;
import org.junit.rules.TestRule;
import org.junit.runner.Description;
@@ -38,8 +37,6 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import javax.ws.rs.core.MediaType;
-
/**
* This class is used to setup the client rule that will setup the RestClient and create default applications.
@@ -123,11 +120,11 @@
restClient.management().token().get(username,password);
// refreshIndex();
- clientCredentials = restClient.management().orgs().organization( orgName ).credentials().get(Credentials.class);
+ clientCredentials = restClient.management().orgs().org( orgName ).credentials().get(Credentials.class);
//refreshIndex();
- ApiResponse appResponse = restClient.management().orgs().organization(organization.getName()).app().post(new Application(appName));
+ ApiResponse appResponse = restClient.management().orgs().org( organization.getName() ).app().post(new Application(appName));
appUuid = ( String ) appResponse.getEntities().get( 0 ).get( "uuid" );
refreshIndex();
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ApplicationsResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ApplicationsResource.java
index d06322c..f789272 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ApplicationsResource.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource2point0/endpoints/mgmt/ApplicationsResource.java
@@ -55,4 +55,11 @@
return mapper.readValue(
new StringReader(responseString), ManagementResponse.class);
}
+
+
+
+ public ApplicationResource app( final String appName ){
+ return new ApplicationResource( appName,context,this );
+ }
+
}
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 d87bf91..cd7165c 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
@@ -51,7 +51,7 @@
}
- public OrganizationResource organization (final String orgname){
+ public OrganizationResource org( final String orgname ){
return new OrganizationResource( orgname,context,this );
}
diff --git a/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java b/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
index 5c4262d..6f4e675 100644
--- a/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
+++ b/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
@@ -1892,12 +1892,8 @@
return null;
}
EntityManager em = emf.getEntityManager( smf.getManagementAppId() );
- EntityRef mgmtAppRef = new SimpleEntityRef( Schema.TYPE_APPLICATION, smf.getManagementAppId() );
- final Results results = em.searchCollection(mgmtAppRef, CpNamingUtils.DELETED_APPLICATION_INFOS,
- Query.fromQL("select * where " + PROPERTY_APPLICATION_ID + " = " + applicationId.toString()));
-
- Entity entity = results.getEntity();
+ final Entity entity = em.get( new SimpleEntityRef( CpNamingUtils.DELETED_APPLICATION_INFO, applicationId ) );
if ( entity != null ) {
return new ApplicationInfo( applicationId, entity.getName() );