http://git-wip-us.apache.org/repos/asf/usergrid/blob/0578d987/stack/rest/src/main/java/org/apache/usergrid/rest/security/shiro/filters/OAuth2AccessTokenSecurityFilter.java ---------------------------------------------------------------------- diff --git a/stack/rest/src/main/java/org/apache/usergrid/rest/security/shiro/filters/OAuth2AccessTokenSecurityFilter.java b/stack/rest/src/main/java/org/apache/usergrid/rest/security/shiro/filters/OAuth2AccessTokenSecurityFilter.java index 87b85ac..08de618 100644 --- a/stack/rest/src/main/java/org/apache/usergrid/rest/security/shiro/filters/OAuth2AccessTokenSecurityFilter.java +++ b/stack/rest/src/main/java/org/apache/usergrid/rest/security/shiro/filters/OAuth2AccessTokenSecurityFilter.java @@ -17,12 +17,13 @@ package org.apache.usergrid.rest.security.shiro.filters; -import javax.servlet.http.HttpServletRequest; -import javax.ws.rs.core.Context; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.stereotype.Component; +import org.apache.amber.oauth2.common.exception.OAuthProblemException; +import org.apache.amber.oauth2.common.exception.OAuthSystemException; +import org.apache.amber.oauth2.common.message.types.ParameterStyle; +import org.apache.amber.oauth2.common.utils.OAuthUtils; +import org.apache.amber.oauth2.rs.request.OAuthAccessResourceRequest; +import org.apache.commons.lang.StringUtils; +import org.apache.shiro.subject.Subject; import org.apache.usergrid.management.ApplicationInfo; import org.apache.usergrid.management.OrganizationInfo; import org.apache.usergrid.management.UserInfo; @@ -35,22 +36,16 @@ import org.apache.usergrid.security.tokens.TokenInfo; import org.apache.usergrid.security.tokens.exceptions.BadTokenException; import org.apache.usergrid.security.tokens.exceptions.ExpiredTokenException; import org.apache.usergrid.security.tokens.exceptions.InvalidTokenException; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Component; -import org.apache.amber.oauth2.common.exception.OAuthProblemException; -import org.apache.amber.oauth2.common.exception.OAuthSystemException; -import org.apache.amber.oauth2.common.message.types.ParameterStyle; -import org.apache.amber.oauth2.common.utils.OAuthUtils; -import org.apache.amber.oauth2.rs.request.OAuthAccessResourceRequest; -import org.apache.shiro.subject.Subject; - -import com.sun.jersey.api.container.MappableContainerException; -import com.sun.jersey.spi.container.ContainerRequest; -import org.apache.commons.lang.StringUtils; +import javax.servlet.http.HttpServletRequest; +import javax.ws.rs.container.ContainerRequestContext; +import javax.ws.rs.core.Context; +import java.io.IOException; -import static org.apache.usergrid.rest.exceptions.AuthErrorInfo.BAD_ACCESS_TOKEN_ERROR; -import static org.apache.usergrid.rest.exceptions.AuthErrorInfo.EXPIRED_ACCESS_TOKEN_ERROR; -import static org.apache.usergrid.rest.exceptions.AuthErrorInfo.INVALID_AUTH_ERROR; -import static org.apache.usergrid.rest.exceptions.AuthErrorInfo.UNVERIFIED_OAUTH_ERROR; +import static org.apache.usergrid.rest.exceptions.AuthErrorInfo.*; import static org.apache.usergrid.rest.exceptions.SecurityException.mappableSecurityException; @@ -72,47 +67,42 @@ public class OAuth2AccessTokenSecurityFilter extends SecurityFilter { @Override - public ContainerRequest filter( ContainerRequest request ) { + public void filter(ContainerRequestContext request) throws IOException { try { try { - String accessToken = request.getQueryParameters().getFirst( "access_token" ); + String accessToken = httpServletRequest.getParameter( "access_token" ); - if ( StringUtils.isEmpty(accessToken) ) { + if (StringUtils.isEmpty( accessToken )) { // Make the OAuth Request out of this request OAuthAccessResourceRequest oauthRequest = - new OAuthAccessResourceRequest( httpServletRequest, ParameterStyle.HEADER ); + new OAuthAccessResourceRequest( httpServletRequest, ParameterStyle.HEADER ); // Get the access token accessToken = oauthRequest.getAccessToken(); } - if ( StringUtils.isEmpty(accessToken) ) { - return request; + if (StringUtils.isEmpty( accessToken )) { + return; } AuthPrincipalInfo principal = null; try { TokenInfo tokenInfo = tokens.getTokenInfo( accessToken ); principal = tokenInfo.getPrincipal(); - } - catch ( BadTokenException e1 ) { + } catch (BadTokenException e1) { throw mappableSecurityException( BAD_ACCESS_TOKEN_ERROR ); - } - catch ( ExpiredTokenException ete ) { + } catch (ExpiredTokenException ete) { throw mappableSecurityException( EXPIRED_ACCESS_TOKEN_ERROR ); - } - catch ( InvalidTokenException ite ) { + } catch (InvalidTokenException ite) { throw mappableSecurityException( INVALID_AUTH_ERROR ); - } - catch ( IndexOutOfBoundsException ioobe ) { + } catch (IndexOutOfBoundsException ioobe) { // token is just some rubbish string throw mappableSecurityException( BAD_ACCESS_TOKEN_ERROR ); - } - catch ( Exception e ) { - if ( LOG.isDebugEnabled() ) { + } catch (Exception e) { + if (LOG.isDebugEnabled()) { LOG.debug( "Unable to verify OAuth token: " + accessToken, e ); } else { LOG.warn( "Unable to verify OAuth token" ); @@ -120,81 +110,70 @@ public class OAuth2AccessTokenSecurityFilter extends SecurityFilter { throw mappableSecurityException( UNVERIFIED_OAUTH_ERROR ); } - if ( principal == null ) { - return request; + if (principal == null) { + return; } PrincipalCredentialsToken token = null; - if ( AuthPrincipalType.ADMIN_USER.equals( principal.getType() ) ) { + if (AuthPrincipalType.ADMIN_USER.equals( principal.getType() )) { UserInfo user = null; try { user = management.getAdminUserInfoFromAccessToken( accessToken ); - } - catch ( ManagementException e ) { - throw new MappableContainerException( e ); - } - catch ( Exception e ) { + } catch (ManagementException e) { + throw mappableSecurityException( e, BAD_ACCESS_TOKEN_ERROR ); + } catch (Exception e) { LOG.error( "failed to get admin user info from access token", e ); } - if ( user == null ) { + if (user == null) { throw mappableSecurityException( BAD_ACCESS_TOKEN_ERROR ); } token = PrincipalCredentialsToken.getFromAdminUserInfoAndAccessToken( - user, accessToken, emf.getManagementAppId() ); - } - else if ( AuthPrincipalType.APPLICATION_USER.equals( principal.getType() ) ) { + user, accessToken, emf.getManagementAppId() ); + } else if (AuthPrincipalType.APPLICATION_USER.equals( principal.getType() )) { UserInfo user = null; try { user = management.getAppUserFromAccessToken( accessToken ); - } - catch ( ManagementException e ) { - throw new MappableContainerException( e ); - } - catch ( Exception e ) { + } catch (ManagementException e) { + throw mappableSecurityException( e, BAD_ACCESS_TOKEN_ERROR ); + } catch (Exception e) { LOG.error( "failed to get app user from access token", e ); } - if ( user == null ) { + if (user == null) { throw mappableSecurityException( BAD_ACCESS_TOKEN_ERROR ); } token = PrincipalCredentialsToken.getFromAppUserInfoAndAccessToken( user, accessToken ); - } - else if ( AuthPrincipalType.ORGANIZATION.equals( principal.getType() ) ) { + } else if (AuthPrincipalType.ORGANIZATION.equals( principal.getType() )) { OrganizationInfo organization = null; try { organization = management.getOrganizationInfoFromAccessToken( accessToken ); - } - catch ( ManagementException e ) { - throw new MappableContainerException( e ); - } - catch ( Exception e ) { + } catch (ManagementException e) { + throw mappableSecurityException( e, BAD_ACCESS_TOKEN_ERROR ); + } catch (Exception e) { LOG.error( "failed to get organization info from access token", e ); } - if ( organization == null ) { + if (organization == null) { throw mappableSecurityException( BAD_ACCESS_TOKEN_ERROR ); } token = PrincipalCredentialsToken - .getFromOrganizationInfoAndAccessToken( organization, accessToken ); - } - else if ( AuthPrincipalType.APPLICATION.equals( principal.getType() ) ) { + .getFromOrganizationInfoAndAccessToken( organization, accessToken ); + } else if (AuthPrincipalType.APPLICATION.equals( principal.getType() )) { ApplicationInfo application = null; try { application = management.getApplicationInfoFromAccessToken( accessToken ); - } - catch ( ManagementException e ) { - throw new MappableContainerException( e ); - } - catch ( Exception e ) { + } catch (ManagementException e) { + throw mappableSecurityException( e, BAD_ACCESS_TOKEN_ERROR ); + } catch (Exception e) { LOG.error( "failed to get application info from access token", e ); } - if ( application == null ) { + if (application == null) { throw mappableSecurityException( BAD_ACCESS_TOKEN_ERROR ); } @@ -203,22 +182,22 @@ public class OAuth2AccessTokenSecurityFilter extends SecurityFilter { Subject subject = SubjectUtils.getSubject(); subject.login( token ); - } - catch ( OAuthProblemException e ) { + + } catch (OAuthProblemException e) { // Check if the error code has been set String errorCode = e.getError(); - if ( OAuthUtils.isEmpty( errorCode ) ) { - - return request; + if (OAuthUtils.isEmpty( errorCode )) { + return; } - throw new MappableContainerException( e ); + throw mappableSecurityException( errorCode, e.getMessage(), null ); } - } - catch ( OAuthSystemException ose ) { - throw new MappableContainerException( ose ); + + } catch (OAuthSystemException ose) { + throw mappableSecurityException( ose, null ); } - return request; } + } +
http://git-wip-us.apache.org/repos/asf/usergrid/blob/0578d987/stack/rest/src/main/java/org/apache/usergrid/rest/security/shiro/filters/SecurityFilter.java ---------------------------------------------------------------------- diff --git a/stack/rest/src/main/java/org/apache/usergrid/rest/security/shiro/filters/SecurityFilter.java b/stack/rest/src/main/java/org/apache/usergrid/rest/security/shiro/filters/SecurityFilter.java index 53f9354..625d352 100644 --- a/stack/rest/src/main/java/org/apache/usergrid/rest/security/shiro/filters/SecurityFilter.java +++ b/stack/rest/src/main/java/org/apache/usergrid/rest/security/shiro/filters/SecurityFilter.java @@ -21,10 +21,14 @@ import java.util.LinkedHashMap; import java.util.Map; import java.util.Properties; +import javax.ws.rs.container.ContainerRequestContext; +import javax.ws.rs.container.ContainerRequestFilter; import javax.ws.rs.core.Context; import javax.ws.rs.core.HttpHeaders; import javax.ws.rs.core.UriInfo; +import javax.xml.ws.spi.http.HttpContext; +import org.glassfish.jersey.server.ContainerRequest; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; @@ -35,9 +39,6 @@ import org.apache.usergrid.services.ServiceManagerFactory; import org.apache.commons.lang.StringUtils; -import com.sun.jersey.api.core.HttpContext; -import com.sun.jersey.spi.container.ContainerRequest; -import com.sun.jersey.spi.container.ContainerRequestFilter; import static org.apache.usergrid.utils.StringUtils.stringOrSubstringAfterFirst; import static org.apache.usergrid.utils.StringUtils.stringOrSubstringBeforeFirst; @@ -118,8 +119,8 @@ public abstract class SecurityFilter implements ContainerRequestFilter { } - public static Map<String, String> getAuthTypes( ContainerRequest request ) { - String auth_header = request.getHeaderValue( HttpHeaders.AUTHORIZATION ); + public static Map<String, String> getAuthTypes( ContainerRequestContext request ) { + String auth_header = request.getHeaderString( HttpHeaders.AUTHORIZATION ); if ( auth_header == null ) { return null; } http://git-wip-us.apache.org/repos/asf/usergrid/blob/0578d987/stack/rest/src/main/java/org/apache/usergrid/rest/utils/CORSUtils.java ---------------------------------------------------------------------- diff --git a/stack/rest/src/main/java/org/apache/usergrid/rest/utils/CORSUtils.java b/stack/rest/src/main/java/org/apache/usergrid/rest/utils/CORSUtils.java index a082573..daaf5ab 100644 --- a/stack/rest/src/main/java/org/apache/usergrid/rest/utils/CORSUtils.java +++ b/stack/rest/src/main/java/org/apache/usergrid/rest/utils/CORSUtils.java @@ -17,13 +17,15 @@ package org.apache.usergrid.rest.utils; +import org.glassfish.jersey.server.ContainerRequest; +import org.glassfish.jersey.server.ContainerResponse; + import java.util.Enumeration; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; - -import com.sun.jersey.spi.container.ContainerRequest; -import com.sun.jersey.spi.container.ContainerResponse; +import javax.ws.rs.container.ContainerRequestContext; +import javax.ws.rs.container.ContainerResponseContext; /* Note: At one point there was a special case in this code that would @@ -96,27 +98,27 @@ public class CORSUtils { } - public static ContainerResponse allowAllOrigins( ContainerRequest request, ContainerResponse response ) { + public static ContainerResponseContext allowAllOrigins( ContainerRequestContext request, ContainerResponseContext response ) { - if ( request.getRequestHeaders().containsKey( ACCESS_CONTROL_REQUEST_METHOD ) ) { + if ( request.getHeaders().containsKey( ACCESS_CONTROL_REQUEST_METHOD ) ) { - for ( String value : request.getRequestHeaders().get( ACCESS_CONTROL_REQUEST_METHOD ) ) { - response.getHttpHeaders().add( ACCESS_CONTROL_ALLOW_METHODS, value ); + for ( String value : request.getHeaders().get( ACCESS_CONTROL_REQUEST_METHOD ) ) { + response.getHeaders().add( ACCESS_CONTROL_ALLOW_METHODS, value ); } } - if ( request.getRequestHeaders().containsKey( ACCESS_CONTROL_REQUEST_HEADERS ) ) { - for ( String value : request.getRequestHeaders().get( ACCESS_CONTROL_REQUEST_HEADERS ) ) { - response.getHttpHeaders().add( ACCESS_CONTROL_ALLOW_HEADERS, value ); + if ( request.getHeaders().containsKey( ACCESS_CONTROL_REQUEST_HEADERS ) ) { + for ( String value : request.getHeaders().get( ACCESS_CONTROL_REQUEST_HEADERS ) ) { + response.getHeaders().add( ACCESS_CONTROL_ALLOW_HEADERS, value ); } } boolean origin_sent = false; - if ( request.getRequestHeaders().containsKey( ORIGIN_HEADER ) ) { - for ( String value : request.getRequestHeaders().get( ORIGIN_HEADER ) ) { + if ( request.getHeaders().containsKey( ORIGIN_HEADER ) ) { + for ( String value : request.getHeaders().get( ORIGIN_HEADER ) ) { if ( value != null ) { origin_sent = true; - response.getHttpHeaders().add( ACCESS_CONTROL_ALLOW_ORIGIN, value ); + response.getHeaders().add( ACCESS_CONTROL_ALLOW_ORIGIN, value ); } } } @@ -124,15 +126,15 @@ public class CORSUtils { if ( !origin_sent ) { String origin = getOrigin( request ); if ( origin != null ) { - response.getHttpHeaders().add( ACCESS_CONTROL_ALLOW_CREDENTIALS, "true" ); - response.getHttpHeaders().add( ACCESS_CONTROL_ALLOW_ORIGIN, origin ); + response.getHeaders().add( ACCESS_CONTROL_ALLOW_CREDENTIALS, "true" ); + response.getHeaders().add( ACCESS_CONTROL_ALLOW_ORIGIN, origin ); } else { - response.getHttpHeaders().add( ACCESS_CONTROL_ALLOW_ORIGIN, "*" ); + response.getHeaders().add( ACCESS_CONTROL_ALLOW_ORIGIN, "*" ); } } else { - response.getHttpHeaders().add( ACCESS_CONTROL_ALLOW_CREDENTIALS, "true" ); + response.getHeaders().add( ACCESS_CONTROL_ALLOW_CREDENTIALS, "true" ); } return response; @@ -166,9 +168,9 @@ public class CORSUtils { } - public static String getOrigin( ContainerRequest request ) { - String origin = request.getRequestHeaders().getFirst( ORIGIN_HEADER ); - String referer = request.getRequestHeaders().getFirst( REFERER_HEADER ); + public static String getOrigin( ContainerRequestContext request ) { + String origin = request.getHeaders().getFirst( ORIGIN_HEADER ); + String referer = request.getHeaders().getFirst( REFERER_HEADER ); return getOrigin( origin, referer ); } } http://git-wip-us.apache.org/repos/asf/usergrid/blob/0578d987/stack/rest/src/test/java/org/apache/usergrid/rest/BasicIT.java ---------------------------------------------------------------------- diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/BasicIT.java b/stack/rest/src/test/java/org/apache/usergrid/rest/BasicIT.java index fc20147..edda5e5 100644 --- a/stack/rest/src/test/java/org/apache/usergrid/rest/BasicIT.java +++ b/stack/rest/src/test/java/org/apache/usergrid/rest/BasicIT.java @@ -17,23 +17,15 @@ package org.apache.usergrid.rest; -import java.io.IOException; - -import javax.ws.rs.core.MediaType; - -import org.junit.Test; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - import org.apache.usergrid.persistence.index.utils.UUIDUtils; import org.apache.usergrid.rest.test.resource.AbstractRestIT; -import org.apache.usergrid.rest.test.resource.model.Entity; import org.apache.usergrid.rest.test.resource.model.ApiResponse; +import org.apache.usergrid.rest.test.resource.model.Entity; +import org.junit.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; -import com.sun.jersey.api.client.UniformInterfaceException; -import com.sun.jersey.api.client.WebResource; - -import org.junit.Ignore; +import javax.ws.rs.client.ResponseProcessingException; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; @@ -82,8 +74,9 @@ public class BasicIT extends AbstractRestIT { try { clientSetup.getRestClient().pathResource( getOrgAppPath( "users/JOE" ) ).get( ApiResponse.class ); fail("A get on a nonexistant object should fail"); - }catch ( UniformInterfaceException e ) { - assertEquals( "Guests should not be able to get a 404", 404, e.getResponse().getStatus() ); + } catch ( ResponseProcessingException e ) { + assertEquals( "Guests should not be able to get a 404", 404, + e.getResponse().getStatusInfo().getStatusCode()); } } } http://git-wip-us.apache.org/repos/asf/usergrid/blob/0578d987/stack/rest/src/test/java/org/apache/usergrid/rest/IndexResourceIT.java ---------------------------------------------------------------------- diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/IndexResourceIT.java b/stack/rest/src/test/java/org/apache/usergrid/rest/IndexResourceIT.java index a84f91c..065cd10 100644 --- a/stack/rest/src/test/java/org/apache/usergrid/rest/IndexResourceIT.java +++ b/stack/rest/src/test/java/org/apache/usergrid/rest/IndexResourceIT.java @@ -20,25 +20,22 @@ package org.apache.usergrid.rest; -import com.sun.jersey.api.client.WebResource; -import com.sun.jersey.api.client.filter.HTTPBasicAuthFilter; import org.apache.usergrid.rest.test.resource.AbstractRestIT; import org.apache.usergrid.rest.test.resource.model.ApiResponse; import org.apache.usergrid.rest.test.resource.model.QueryParameters; import org.apache.usergrid.rest.test.resource.model.Token; +import org.glassfish.jersey.client.authentication.HttpAuthenticationFeature; import org.junit.Ignore; -import org.junit.Rule; import org.junit.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import javax.ws.rs.client.WebTarget; import javax.ws.rs.core.MediaType; import java.util.HashMap; import java.util.Map; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.fail; +import static org.junit.Assert.*; /** @@ -81,16 +78,20 @@ public class IndexResourceIT extends AbstractRestIT { result = clientSetup.getRestClient() .pathResource( "system/index/rebuild/"+clientSetup.getAppUuid()+"/storelatlons" ) .post( false, ApiResponse.class,null,queryParameters,true); + String status = result.getProperties().get("jobId").toString(); assertNotNull( result ); - WebResource res = clientSetup.getRestClient() - .pathResource( "system/index/rebuild/"+result.getProperties().get("jobId").toString() ).getResource(); - String status = result.getProperties().get("jobId").toString(); - //added httpBasicauth filter to all setup calls because they all do verification this way. - HTTPBasicAuthFilter httpBasicAuthFilter = new HTTPBasicAuthFilter( clientSetup.getSuperuserName(),clientSetup.getSuperuserPassword() ); - res.addFilter( httpBasicAuthFilter ); - result = res.get(ApiResponse.class); + WebTarget res = clientSetup.getRestClient() + .pathResource( "system/index/rebuild/" + result.getProperties() + .get( "jobId" ).toString() ) + .getTarget(); + + result = res.request() + .property( HttpAuthenticationFeature.HTTP_AUTHENTICATION_BASIC_USERNAME, "superuser") + .property( HttpAuthenticationFeature.HTTP_AUTHENTICATION_BASIC_PASSWORD, "superpassword" ) + .get(ApiResponse.class); + assertNotNull( result ); assertEquals(status,result.getProperties().get("jobId").toString()); @@ -113,14 +114,14 @@ public class IndexResourceIT extends AbstractRestIT { org.apache.usergrid.rest.test.resource.model.ApiResponse node = null; try { - WebResource resource = this.clientSetup.getRestClient().pathResource("/system/index/" + appId).getResource(); - - //added httpBasicauth filter to all setup calls because they all do verification this way. - HTTPBasicAuthFilter httpBasicAuthFilter = new HTTPBasicAuthFilter( clientSetup.getSuperuserName(),clientSetup.getSuperuserPassword() ); - resource.addFilter( httpBasicAuthFilter ); + WebTarget resource = this.clientSetup.getRestClient().pathResource("/system/index/" + appId).getTarget(); - node = resource.type( MediaType.APPLICATION_JSON_TYPE ).accept( MediaType.APPLICATION_JSON ) + node = resource.request() + .property( HttpAuthenticationFeature.HTTP_AUTHENTICATION_BASIC_USERNAME, "superuser") + .property( HttpAuthenticationFeature.HTTP_AUTHENTICATION_BASIC_PASSWORD, "superpassword" ) + .accept( MediaType.APPLICATION_JSON ) .get( org.apache.usergrid.rest.test.resource.model.ApiResponse.class); + } catch (Exception e) { LOG.error("failed", e); fail(e.toString()); http://git-wip-us.apache.org/repos/asf/usergrid/blob/0578d987/stack/rest/src/test/java/org/apache/usergrid/rest/PartialUpdateTest.java ---------------------------------------------------------------------- diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/PartialUpdateTest.java b/stack/rest/src/test/java/org/apache/usergrid/rest/PartialUpdateTest.java index 97a02fd..109c76d 100644 --- a/stack/rest/src/test/java/org/apache/usergrid/rest/PartialUpdateTest.java +++ b/stack/rest/src/test/java/org/apache/usergrid/rest/PartialUpdateTest.java @@ -17,7 +17,6 @@ package org.apache.usergrid.rest; -import com.sun.jersey.api.client.UniformInterfaceException; import org.apache.usergrid.rest.test.resource.AbstractRestIT; import org.apache.usergrid.rest.test.resource.model.Entity; import org.apache.usergrid.utils.MapUtils; @@ -25,6 +24,7 @@ import org.junit.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import javax.ws.rs.client.ResponseProcessingException; import java.io.IOException; import java.util.LinkedHashMap; import java.util.Map; @@ -77,8 +77,8 @@ public class PartialUpdateTest extends AbstractRestIT { try { // PUT the updates to the user and ensure they were saved userNode = this.app().collection("users").entity(userNode).put(updateProps); - } catch (UniformInterfaceException uie) { - fail("Update failed due to: " + uie.getResponse().getEntity(String.class)); + } catch (ResponseProcessingException uie) { + fail("Update failed due to: " + uie.getResponse().readEntity(String.class)); } refreshIndex(); @@ -118,8 +118,8 @@ public class PartialUpdateTest extends AbstractRestIT { try { // PUT /users/fred put /users/uuid userNode = this.app().collection("users").entity(props.get("username").toString()).put(updateProps); - } catch (UniformInterfaceException uie) { - fail("Update failed due to: " + uie.getResponse().getEntity(String.class)); + } catch (ResponseProcessingException uie) { + fail("Update failed due to: " + uie.getResponse().readEntity(String.class)); } refreshIndex(); http://git-wip-us.apache.org/repos/asf/usergrid/blob/0578d987/stack/rest/src/test/java/org/apache/usergrid/rest/SystemResourceIT.java ---------------------------------------------------------------------- diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/SystemResourceIT.java b/stack/rest/src/test/java/org/apache/usergrid/rest/SystemResourceIT.java index 7f09fa5..354589c 100644 --- a/stack/rest/src/test/java/org/apache/usergrid/rest/SystemResourceIT.java +++ b/stack/rest/src/test/java/org/apache/usergrid/rest/SystemResourceIT.java @@ -17,15 +17,10 @@ package org.apache.usergrid.rest; -import org.junit.Test; - import org.apache.usergrid.rest.test.resource.AbstractRestIT; import org.apache.usergrid.rest.test.resource.model.Entity; import org.apache.usergrid.rest.test.resource.model.QueryParameters; -import org.apache.usergrid.rest.test.resource.model.Token; - -import com.sun.jersey.api.client.UniformInterfaceException; -import com.sun.jersey.api.client.filter.HTTPBasicAuthFilter; +import org.junit.Test; import static org.junit.Assert.assertNotNull; http://git-wip-us.apache.org/repos/asf/usergrid/blob/0578d987/stack/rest/src/test/java/org/apache/usergrid/rest/TomcatRuntime.java ---------------------------------------------------------------------- diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/TomcatRuntime.java b/stack/rest/src/test/java/org/apache/usergrid/rest/TomcatRuntime.java index 498068a..4c09565 100644 --- a/stack/rest/src/test/java/org/apache/usergrid/rest/TomcatRuntime.java +++ b/stack/rest/src/test/java/org/apache/usergrid/rest/TomcatRuntime.java @@ -31,8 +31,10 @@ import org.apache.usergrid.cassandra.AvailablePortFinder; import org.apache.usergrid.setup.ConcurrentProcessSingleton; import com.google.common.io.Files; -import com.sun.jersey.api.client.Client; -import com.sun.jersey.api.client.WebResource; + +import javax.ws.rs.client.Client; +import javax.ws.rs.client.ClientBuilder; +import javax.ws.rs.client.WebTarget; /** @@ -173,9 +175,9 @@ public class TomcatRuntime extends ExternalResource { while ( count++ < 30 ) { try { Thread.sleep( 1000 ); - Client c = Client.create(); - WebResource wr = c.resource( url ); - wr.get( String.class ); + Client c = ClientBuilder.newClient(); + WebTarget wr = c.target( url ); + wr.request().get( String.class ); log.info( "Tomcat is started." ); started = true; break; http://git-wip-us.apache.org/repos/asf/usergrid/blob/0578d987/stack/rest/src/test/java/org/apache/usergrid/rest/applications/ApplicationCreateIT.java ---------------------------------------------------------------------- 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 d2ad7ba..cfcc91d 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 @@ -108,15 +108,15 @@ public class ApplicationCreateIT extends AbstractRestIT { final String entityName = "entity" + i; Entity entity = new Entity(); - entity.setProperties(new HashMap<String, Object>() {{ - put("name", entityName ); - }}); + entity.setProperties( new HashMap<String, Object>() {{ + put( "name", entityName ); + }} ); ApiResponse createResponse = clientSetup.getRestClient() - .org(orgName).app( appName ).collection("things").getResource() - .queryParam("access_token", orgAdminToken.getAccessToken()) - .type(MediaType.APPLICATION_JSON) - .post( ApiResponse.class, entity ); + .org( orgName ).app( appName ).collection( "things" ).getTarget() + .queryParam( "access_token", orgAdminToken.getAccessToken() ) + .request() + .post( javax.ws.rs.client.Entity.entity(entity, MediaType.APPLICATION_JSON_TYPE ), ApiResponse.class); entities.add( createResponse.getEntities().get(0) ); } http://git-wip-us.apache.org/repos/asf/usergrid/blob/0578d987/stack/rest/src/test/java/org/apache/usergrid/rest/applications/ApplicationDeleteIT.java ---------------------------------------------------------------------- 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 cad0a37..b863a8e 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,27 +18,24 @@ package org.apache.usergrid.rest.applications; -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.Test; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - +import com.fasterxml.jackson.databind.JsonNode; import org.apache.usergrid.rest.test.resource.AbstractRestIT; import org.apache.usergrid.rest.test.resource.endpoints.mgmt.ManagementResponse; import org.apache.usergrid.rest.test.resource.model.ApiResponse; import org.apache.usergrid.rest.test.resource.model.Application; import org.apache.usergrid.rest.test.resource.model.Entity; import org.apache.usergrid.rest.test.resource.model.Token; +import org.junit.Assert; +import org.junit.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; -import com.fasterxml.jackson.databind.JsonNode; -import com.sun.jersey.api.client.UniformInterfaceException; +import javax.ws.rs.client.ResponseProcessingException; +import javax.ws.rs.core.MediaType; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.UUID; import static org.junit.Assert.fail; @@ -77,52 +74,54 @@ public class ApplicationDeleteIT extends AbstractRestIT { try { clientSetup.getRestClient() .management().orgs() - .org(orgName).apps().app(appToDeleteId.toString()).getResource() + .org(orgName).apps().app(appToDeleteId.toString()).getTarget() .queryParam("access_token", orgAdminToken.getAccessToken()) + .request() .delete(); fail("Delete must fail without app_delete_confirm parameter"); - } catch ( UniformInterfaceException expected ) { + } catch ( ResponseProcessingException expected ) { Assert.assertEquals("Error must be 400", 400, expected.getResponse().getStatus() ); - JsonNode node = mapper.readTree( expected.getResponse().getEntity( String.class )); + JsonNode node = mapper.readTree( expected.getResponse().readEntity( String.class )); Assert.assertEquals("Cannot delete application without app_delete_confirm parameter", node.get("error_description").textValue()); } clientSetup.getRestClient().management().orgs() - .org(orgName).apps().app(appToDeleteId.toString() ).getResource() + .org(orgName).apps().app(appToDeleteId.toString() ).getTarget() .queryParam("access_token", orgAdminToken.getAccessToken() ) .queryParam("app_delete_confirm", "confirm_delete_of_application_and_data") + .request() .delete(); // test that we can no longer get the app try { clientSetup.getRestClient().management().orgs() - .org(orgName).apps().app(appToDeleteName).getResource() + .org(orgName).apps().app(appToDeleteName).getTarget() .queryParam("access_token", orgAdminToken.getAccessToken()) - .type(MediaType.APPLICATION_JSON) + .request() .get(ApiResponse.class); fail("Must not be able to get deleted app"); - } catch ( UniformInterfaceException expected ) { + } catch ( ResponseProcessingException expected ) { Assert.assertEquals("Error must be 404", 404, expected.getResponse().getStatus() ); - JsonNode node = mapper.readTree( expected.getResponse().getEntity( String.class )); + JsonNode node = mapper.readTree( expected.getResponse().readEntity( String.class )); 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 ) + clientSetup.getRestClient().org( orgName ).app( appToDeleteName ).getTarget() + .queryParam( "access_token", orgAdminToken.getAccessToken() ).request() .get( ApiResponse.class ); fail( "Must not be able to get deleted app" ); } - catch ( UniformInterfaceException expected ) { + catch ( ResponseProcessingException expected ) { Assert.assertEquals( "Error must be 404", 404, expected.getResponse().getStatus() ); - JsonNode node = mapper.readTree( expected.getResponse().getEntity( String.class ) ); + JsonNode node = mapper.readTree( expected.getResponse().readEntity( String.class ) ); Assert.assertEquals( "organization_application_not_found", node.get( "error" ).textValue() ); } @@ -131,16 +130,16 @@ public class ApplicationDeleteIT extends AbstractRestIT { try { clientSetup.getRestClient() - .org(orgName).app(appToDeleteName).collection("things").getResource() + .org(orgName).app(appToDeleteName).collection("things").getTarget() .queryParam("access_token", orgAdminToken.getAccessToken() ) - .type(MediaType.APPLICATION_JSON ) - .get(ApiResponse.class); + .request() + .get( ApiResponse.class ); fail("Must not be able to get deleted app's collection"); - } catch ( UniformInterfaceException expected ) { + } catch ( ResponseProcessingException expected ) { Assert.assertEquals("Error must be 400", 404, expected.getResponse().getStatus() ); - JsonNode node = mapper.readTree( expected.getResponse().getEntity( String.class )); + JsonNode node = mapper.readTree( expected.getResponse().readEntity( String.class )); Assert.assertEquals("organization_application_not_found", node.get("error").textValue()); } @@ -149,17 +148,17 @@ public class ApplicationDeleteIT extends AbstractRestIT { try { UUID entityId = entities.get(0).getUuid(); clientSetup.getRestClient() - .org(orgName).app(appToDeleteName).collection("things").entity( entityId ).getResource() + .org(orgName).app(appToDeleteName).collection("things").entity( entityId ).getTarget() .queryParam( "access_token", orgAdminToken.getAccessToken()) - .type( MediaType.APPLICATION_JSON) - .get(ApiResponse.class); + .request() + .get( ApiResponse.class ); fail("Must not be able to get deleted app entity"); - } catch ( UniformInterfaceException expected ) { + } catch ( ResponseProcessingException expected ) { // TODO: why not a 404? Assert.assertEquals("Error must be 400", 404, expected.getResponse().getStatus() ); - JsonNode node = mapper.readTree( expected.getResponse().getEntity( String.class )); + JsonNode node = mapper.readTree( expected.getResponse().readEntity( String.class )); Assert.assertEquals("organization_application_not_found", node.get("error").textValue()); } @@ -181,24 +180,26 @@ public class ApplicationDeleteIT extends AbstractRestIT { try { 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(); + .getTarget().queryParam( "access_token", orgAdminToken.getAccessToken() ) + .queryParam( "app_delete_confirm", "confirm_delete_of_application_and_data" ) + .request() + .delete(); fail("Can't delete a non existent app twice"); } - catch ( UniformInterfaceException expected ) { + catch ( ResponseProcessingException expected ) { Assert.assertEquals( "Error must be 404", 404, expected.getResponse().getStatus() ); - JsonNode node = mapper.readTree( expected.getResponse().getEntity( String.class ) ); + JsonNode node = mapper.readTree( expected.getResponse().readEntity( 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().org( orgName ).app().getResource() + .management().orgs().org( orgName ).app().getTarget() .queryParam( "access_token", orgAdminToken.getAccessToken() ) - .type( MediaType.APPLICATION_JSON ) - .post( ApiResponse.class, new Application( appToDeleteName ) ); + .request() + .post( javax.ws.rs.client.Entity.json( new Application( appToDeleteName ) ), ApiResponse.class ); Assert.assertEquals("Must be able to create app with same name as deleted app", (orgName + "/" + appToDeleteName).toLowerCase(), @@ -230,12 +231,13 @@ public class ApplicationDeleteIT extends AbstractRestIT { // delete the app - logger.debug("\n\nDeleting app\n"); + logger.debug( "\n\nDeleting app\n" ); clientSetup.getRestClient().management().orgs() - .org(orgName).apps().app( appToDeleteName ).getResource() - .queryParam("access_token", orgAdminToken.getAccessToken() ) + .org( orgName ).apps().app( appToDeleteName ).getTarget() + .queryParam( "access_token", orgAdminToken.getAccessToken() ) .queryParam("app_delete_confirm", "confirm_delete_of_application_and_data") + .request() .delete(); refreshIndex(); @@ -246,9 +248,10 @@ public class ApplicationDeleteIT extends AbstractRestIT { logger.debug("\n\nRestoring app\n"); clientSetup.getRestClient().management().orgs() - .org(orgName).apps().app( appToDeleteId.toString() ).getResource() - .queryParam("access_token", orgAdminToken.getAccessToken() ) - .put(); + .org( orgName ).apps().app( appToDeleteId.toString() ).getTarget() + .queryParam( "access_token", orgAdminToken.getAccessToken() ) + .request() + .put( javax.ws.rs.client.Entity.json( null )); refreshIndex(); @@ -275,18 +278,18 @@ public class ApplicationDeleteIT extends AbstractRestIT { UUID entityId = entities.get(0).getUuid(); ApiResponse entityResponse = clientSetup.getRestClient() - .org(orgName).app(appToDeleteName).collection("things").entity( entityId ).getResource() - .queryParam("access_token", orgAdminToken.getAccessToken()) - .type(MediaType.APPLICATION_JSON) - .get(ApiResponse.class); + .org( orgName ).app( appToDeleteName ).collection( "things" ).entity( entityId ).getTarget() + .queryParam( "access_token", orgAdminToken.getAccessToken() ) + .request() + .get( ApiResponse.class ); Assert.assertEquals( entityId, entityResponse.getEntities().get(0).getUuid() ); // test that we can get deleted app's collection ApiResponse collectionReponse = clientSetup.getRestClient() - .org(orgName).app(appToDeleteName).collection("things").getResource() - .queryParam("access_token", orgAdminToken.getAccessToken()) - .type(MediaType.APPLICATION_JSON) + .org( orgName ).app( appToDeleteName ).collection( "things" ).getTarget() + .queryParam( "access_token", orgAdminToken.getAccessToken() ) + .request() .get(ApiResponse.class); Assert.assertEquals( entities.size(), collectionReponse.getEntityCount() ); } @@ -311,9 +314,10 @@ public class ApplicationDeleteIT extends AbstractRestIT { // delete the app clientSetup.getRestClient().management().orgs() - .org( orgName ).apps().app(appToDeleteId.toString() ).getResource() + .org( orgName ).apps().app( appToDeleteId.toString() ).getTarget() .queryParam( "access_token", orgAdminToken.getAccessToken() ) .queryParam("app_delete_confirm", "confirm_delete_of_application_and_data") + .request() .delete(); // create new app with same name @@ -325,13 +329,14 @@ public class ApplicationDeleteIT extends AbstractRestIT { try { clientSetup.getRestClient() .management().orgs() - .org(orgName).apps().app(appToDeleteId.toString()).getResource() + .org(orgName).apps().app(appToDeleteId.toString()).getTarget() .queryParam("access_token", orgAdminToken.getAccessToken()) - .put(); + .request() + .put( javax.ws.rs.client.Entity.json(null) ); fail("Must fail to restore app with same name as existing app"); - } catch ( UniformInterfaceException e ) { + } catch ( ResponseProcessingException e ) { Assert.assertEquals(409, e.getResponse().getStatus()); } } @@ -356,9 +361,10 @@ public class ApplicationDeleteIT extends AbstractRestIT { // delete the app - clientSetup.getRestClient().management().orgs().org( orgName ).apps().app( appToDeleteId.toString() ).getResource() + clientSetup.getRestClient().management().orgs().org( orgName ).apps().app( appToDeleteId.toString() ).getTarget() .queryParam( "access_token", orgAdminToken.getAccessToken() ) .queryParam( "app_delete_confirm", "confirm_delete_of_application_and_data" ) + .request() .delete(); // create new app with same name @@ -369,14 +375,15 @@ public class ApplicationDeleteIT extends AbstractRestIT { try { - clientSetup.getRestClient().management().orgs().org( orgName ).apps().app( newAppId.toString() ).getResource() - .queryParam("access_token", orgAdminToken.getAccessToken()) + clientSetup.getRestClient().management().orgs().org( orgName ).apps().app( newAppId.toString() ).getTarget() + .queryParam( "access_token", orgAdminToken.getAccessToken() ) .queryParam("app_delete_confirm", "confirm_delete_of_application_and_data") + .request() .delete(); fail("Must fail to delete app with same name as deleted app"); - } catch ( UniformInterfaceException e ) { + } catch ( ResponseProcessingException e ) { Assert.assertEquals( 409, e.getResponse().getStatus() ); } } @@ -386,10 +393,10 @@ public class ApplicationDeleteIT extends AbstractRestIT { String orgName, String appName, Token orgAdminToken, List<Entity> entities) { ApiResponse appCreateResponse = clientSetup.getRestClient() - .management().orgs().org( orgName ).app().getResource() + .management().orgs().org( orgName ).app().getTarget() .queryParam( "access_token", orgAdminToken.getAccessToken() ) - .type( MediaType.APPLICATION_JSON ) - .post( ApiResponse.class, new Application( appName ) ); + .request() + .post( javax.ws.rs.client.Entity.json(new Application( appName )), ApiResponse.class ); UUID appId = appCreateResponse.getEntities().get(0).getUuid(); try { Thread.sleep(INDEXING_WAIT); } catch (InterruptedException ignored ) { } @@ -398,15 +405,15 @@ public class ApplicationDeleteIT extends AbstractRestIT { final String entityName = "entity" + i; Entity entity = new Entity(); - entity.setProperties(new HashMap<String, Object>() {{ - put("name", entityName ); - }}); + entity.setProperties( new HashMap<String, Object>() {{ + put( "name", entityName ); + }} ); ApiResponse createResponse = clientSetup.getRestClient() - .org(orgName).app( appName ).collection("things").getResource() + .org(orgName).app( appName ).collection("things").getTarget() .queryParam("access_token", orgAdminToken.getAccessToken()) - .type(MediaType.APPLICATION_JSON) - .post( ApiResponse.class, entity ); + .request() + .post( javax.ws.rs.client.Entity.json(entity), ApiResponse.class ); entities.add( createResponse.getEntities().get(0) ); } http://git-wip-us.apache.org/repos/asf/usergrid/blob/0578d987/stack/rest/src/test/java/org/apache/usergrid/rest/applications/ApplicationResourceIT.java ---------------------------------------------------------------------- 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 ec858f7..f071b5e 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 @@ -17,10 +17,6 @@ package org.apache.usergrid.rest.applications; import com.fasterxml.jackson.databind.JsonNode; -import com.sun.jersey.api.client.ClientResponse.Status; -import com.sun.jersey.api.client.UniformInterfaceException; -import com.sun.jersey.api.client.WebResource; -import com.sun.jersey.api.representation.Form; import org.apache.commons.lang.RandomStringUtils; import org.apache.shiro.codec.Base64; import org.apache.usergrid.cassandra.SpringResource; @@ -30,12 +26,17 @@ import org.apache.usergrid.rest.test.resource.endpoints.mgmt.OrganizationResourc import org.apache.usergrid.rest.test.resource.model.*; import org.apache.usergrid.setup.ConcurrentProcessSingleton; import org.apache.usergrid.utils.MapUtils; +import org.glassfish.jersey.client.ClientProperties; import org.junit.Ignore; import org.junit.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import javax.ws.rs.client.Invocation; +import javax.ws.rs.client.ResponseProcessingException; +import javax.ws.rs.core.Form; import javax.ws.rs.core.MediaType; +import javax.ws.rs.core.Response; import java.io.IOException; import java.util.HashMap; import java.util.Map; @@ -60,12 +61,12 @@ public class ApplicationResourceIT extends AbstractRestIT { Credentials orgCredentials = getOrgCredentials(); //retrieve the app using only the org credentials - ApiResponse apiResponse = this.org().app(clientSetup.getAppName()).getResource(false) + ApiResponse apiResponse = this.org().app( clientSetup.getAppName() ).getTarget( false ) .queryParam("grant_type", "client_credentials") .queryParam("client_id", orgCredentials.getClientId()) - .queryParam("client_secret", orgCredentials.getClientSecret()) - .accept(MediaType.APPLICATION_JSON) - .type(MediaType.APPLICATION_JSON_TYPE) + .queryParam( "client_secret", orgCredentials.getClientSecret() ) + .request() + .accept( MediaType.APPLICATION_JSON ) .get(ApiResponse.class); //assert that a valid response is returned without error assertNotNull(apiResponse); @@ -82,12 +83,12 @@ public class ApplicationResourceIT extends AbstractRestIT { Credentials appCredentials = getAppCredentials(); //retrieve the app using only the org credentials - ApiResponse apiResponse = this.app().getResource(false) + ApiResponse apiResponse = this.app().getTarget( false ) .queryParam("grant_type", "client_credentials") .queryParam("client_id", appCredentials.getClientId()) .queryParam("client_secret", appCredentials.getClientSecret()) + .request() .accept(MediaType.APPLICATION_JSON) - .type(MediaType.APPLICATION_JSON_TYPE) .get(ApiResponse.class); //assert that a valid response is returned without error assertNotNull(apiResponse); @@ -104,13 +105,13 @@ public class ApplicationResourceIT extends AbstractRestIT { Credentials appCredentials = getAppCredentials(); //retrieve the app using only the org credentials - ApiResponse apiResponse = this.app().collection( "roles" ).getResource( false ) - .queryParam( "grant_type", "client_credentials" ) - .queryParam("client_id", appCredentials.getClientId()) - .queryParam("client_secret", appCredentials.getClientSecret()) - .accept(MediaType.APPLICATION_JSON) - .type(MediaType.APPLICATION_JSON_TYPE) - .get(ApiResponse.class); + ApiResponse apiResponse = this.app().collection( "roles" ).getTarget( false ) + .queryParam( "grant_type", "client_credentials" ) + .queryParam("client_id", appCredentials.getClientId()) + .queryParam("client_secret", appCredentials.getClientSecret()) + .request() + .accept(MediaType.APPLICATION_JSON) + .get(ApiResponse.class); //assert that a valid response is returned without error assertNotNull(apiResponse); assertNull(apiResponse.getError()); @@ -207,12 +208,12 @@ public class ApplicationResourceIT extends AbstractRestIT { Credentials orgCredentials = getOrgCredentials(); //retrieve the users collection without setting the "Accept" header - WebResource.Builder builder = this.app().collection("users").getResource(false) + Invocation.Builder builder = this.app().collection( "users" ).getTarget( false ) //Add the org credentials to the query - .queryParam("grant_type", "client_credentials") - .queryParam("client_id", orgCredentials.getClientId()) - .queryParam("client_secret", orgCredentials.getClientSecret()) - .type(MediaType.APPLICATION_JSON_TYPE); + .queryParam( "grant_type", "client_credentials" ) + .queryParam("client_id", orgCredentials.getClientId() ) + .queryParam( "client_secret", orgCredentials.getClientSecret() ) + .request(); ApiResponse apiResponse = builder.get(ApiResponse.class); Collection users = new Collection(apiResponse); @@ -239,15 +240,17 @@ public class ApplicationResourceIT extends AbstractRestIT { String clientSecret = orgCredentials.getClientSecret(); //retrieve the users collection, setting the "Accept" header to text/html - WebResource.Builder builder = this.app().collection("users").getResource(false) + Invocation.Builder builder = this.app().collection( "users" ).getTarget() //Add the org credentials to the query - .queryParam("grant_type", "client_credentials") - .queryParam("client_id", clientId) - .queryParam("client_secret", clientSecret) + .queryParam( "grant_type", "client_credentials" ) + .queryParam( "client_id", clientId ) + .queryParam( "client_secret", clientSecret ) + .request(); + + ApiResponse apiResponse = builder .accept(MediaType.TEXT_HTML) - .type(MediaType.APPLICATION_JSON_TYPE); + .get(ApiResponse.class); - ApiResponse apiResponse = builder.get(ApiResponse.class); Collection users = new Collection(apiResponse); //make sure that a valid response is returned without error assertNotNull(users); @@ -299,12 +302,12 @@ public class ApplicationResourceIT extends AbstractRestIT { //retrieve the credentials Credentials orgCredentials = getOrgCredentials(); - ApiResponse apiResponse = this.app().getResource(false) - .queryParam("grant_type", "client_credentials") + ApiResponse apiResponse = this.app().getTarget( false ) + .queryParam( "grant_type", "client_credentials" ) .queryParam("client_id", orgCredentials.getClientId()) - .queryParam("client_secret", orgCredentials.getClientSecret()) - .accept(MediaType.APPLICATION_JSON) - .type(MediaType.APPLICATION_JSON_TYPE) + .queryParam( "client_secret", orgCredentials.getClientSecret() ) + .request() + .accept( MediaType.APPLICATION_JSON ) .get(ApiResponse.class); // assert that the response returns the correct URI @@ -317,12 +320,12 @@ public class ApplicationResourceIT extends AbstractRestIT { assertEquals(String.format("%s/%s", orgName, appName), application.get("name")); //retrieve the application's roles collection - apiResponse = this.app().collection("roles").getResource(false) - .queryParam("grant_type", "client_credentials") + apiResponse = this.app().collection( "roles" ).getTarget( false ) + .queryParam( "grant_type", "client_credentials" ) .queryParam("client_id", orgCredentials.getClientId()) - .queryParam("client_secret", orgCredentials.getClientSecret()) - .accept(MediaType.APPLICATION_JSON) - .type(MediaType.APPLICATION_JSON_TYPE) + .queryParam( "client_secret", orgCredentials.getClientSecret() ) + .request() + .accept( MediaType.APPLICATION_JSON ) .get(ApiResponse.class); Collection roles = new Collection(apiResponse); //assert that we have the correct number of default roles @@ -372,11 +375,11 @@ public class ApplicationResourceIT extends AbstractRestIT { String orgName = clientSetup.getOrganizationName().toLowerCase(); String appName = clientSetup.getAppName().toLowerCase(); - ApiResponse apiResponse = resource().path(String.format("/%s/%s", orgName, appName)) - .queryParam("access_token", this.getAdminToken().getAccessToken()) - .accept(MediaType.APPLICATION_JSON) - .type(MediaType.APPLICATION_JSON_TYPE) - .delete(ApiResponse.class); + ApiResponse apiResponse = target().path( String.format( "/%s/%s", orgName, appName ) ) + .queryParam( "access_token", this.getAdminToken().getAccessToken() ) + .request() + .accept( MediaType.APPLICATION_JSON ) + .delete( ApiResponse.class ); assertNotNull(apiResponse.getError()); } @@ -406,14 +409,14 @@ public class ApplicationResourceIT extends AbstractRestIT { try { //POST the updated TTL, anticipating an exception - resource().path(String.format("/%s/%s/token", orgName, appName)) + target().path(String.format("/%s/%s/token", orgName, appName)) + .request() .accept(MediaType.APPLICATION_JSON) - .type(MediaType.APPLICATION_JSON_TYPE) - .post(ApiResponse.class, entity); + .post( javax.ws.rs.client.Entity.entity(entity, MediaType.APPLICATION_JSON_TYPE ), ApiResponse.class); fail("This should cause an exception"); - } catch (UniformInterfaceException uie) { + } catch (ResponseProcessingException uie) { assertEquals( - String.valueOf(Status.BAD_REQUEST.getStatusCode()), + String.valueOf( Response.Status.BAD_REQUEST.getStatusCode()), String.valueOf(uie.getResponse().getStatus())); } } @@ -440,13 +443,13 @@ public class ApplicationResourceIT extends AbstractRestIT { refreshIndex(); //Retrieve an authentication token for the user, setting the TTL - Token apiResponse = resource().path(String.format("/%s/%s/token", orgName, appName)) + Token apiResponse = target().path( String.format( "/%s/%s/token", orgName, appName ) ) .queryParam("grant_type", "password") .queryParam("username", username) .queryParam("password", "password") - .queryParam("ttl", String.valueOf(ttl)) - .accept(MediaType.APPLICATION_JSON) - .type(MediaType.APPLICATION_JSON_TYPE) + .queryParam( "ttl", String.valueOf( ttl ) ) + .request() + .accept( MediaType.APPLICATION_JSON ) .get(Token.class); //Set a start time so we can calculate then the token should expire @@ -477,8 +480,8 @@ public class ApplicationResourceIT extends AbstractRestIT { this.app().collection("users").entity(entity).get( new QueryParameters().addParam("access_token", token), false); fail("The expired token should cause an exception"); - } catch (UniformInterfaceException uie) { - assertEquals(Status.UNAUTHORIZED.getStatusCode(), uie.getResponse().getStatus()); + } catch (ResponseProcessingException uie) { + assertEquals( Response.Status.UNAUTHORIZED.getStatusCode(), uie.getResponse().getStatus()); } } @@ -506,20 +509,20 @@ public class ApplicationResourceIT extends AbstractRestIT { try { //Retrieve a token for the new user, setting the TTL to an invalid value - resource().path(String.format("/%s/%s/token", orgName, appName)) - .queryParam("grant_type", "password") + target().path( String.format( "/%s/%s/token", orgName, appName ) ) + .queryParam( "grant_type", "password" ) .queryParam("username", username) .queryParam("password", "password") .queryParam("ttl", "derp") - .accept(MediaType.APPLICATION_JSON) - .type(MediaType.APPLICATION_JSON_TYPE) - .get(ApiResponse.class); + .request() + .accept( MediaType.APPLICATION_JSON ) + .get( ApiResponse.class ); fail("The invalid TTL should cause an exception"); - } catch (UniformInterfaceException uie) { + } catch (ResponseProcessingException uie) { //TODO should this be handled and returned as a Status.BAD_REQUEST? //Status.INTERNAL_SERVER_ERROR is thrown because Jersey throws a NumberFormatException - assertEquals(Status.INTERNAL_SERVER_ERROR, uie.getResponse().getClientResponseStatus()); + assertEquals( Response.Status.INTERNAL_SERVER_ERROR.getStatusCode(), uie.getResponse().getStatus()); } } @@ -543,12 +546,12 @@ public class ApplicationResourceIT extends AbstractRestIT { assertNotNull(entity); refreshIndex(); //Retrieve an authentication token for the user - Token tokenResponse = this.app().getResource(false).path("token") - .queryParam("grant_type", "password") - .queryParam("username", username) + Token tokenResponse = this.app().getTarget( false ).path( "token" ) + .queryParam( "grant_type", "password" ) + .queryParam( "username", username ) .queryParam("password", "password") + .request() .accept( MediaType.APPLICATION_JSON ) - .type( MediaType.APPLICATION_JSON_TYPE ) .get( Token.class ); String token = tokenResponse.getAccessToken(); @@ -559,19 +562,21 @@ public class ApplicationResourceIT extends AbstractRestIT { assertEquals(604800, expires_in); //Set the default TTL of the application to a date far in the future - this.app().getResource(false) - .queryParam("access_token", token) - .accept(MediaType.APPLICATION_JSON) - .type(MediaType.APPLICATION_JSON_TYPE) - .put(Token.class, new MapUtils.HashMapBuilder<String, String>().map("accesstokenttl", "31536000000")); + final MapUtils.HashMapBuilder<String, String> map = + new MapUtils.HashMapBuilder<String, String>().map( "accesstokenttl", "31536000000" ); + this.app().getTarget( false ) + .queryParam( "access_token", token ) + .request() + .accept( MediaType.APPLICATION_JSON ) + .put( javax.ws.rs.client.Entity.entity( map, MediaType.APPLICATION_JSON_TYPE ), Token.class ); //Create a new token for the user - tokenResponse = this.app().token().getResource(false) + tokenResponse = this.app().token().getTarget( false ) .queryParam("grant_type", "password") .queryParam("username", username) - .queryParam("password", "password") - .accept(MediaType.APPLICATION_JSON) - .type(MediaType.APPLICATION_JSON_TYPE) + .queryParam( "password", "password" ) + .request() + .accept( MediaType.APPLICATION_JSON ) .get(Token.class); //assert that the new token has the new default TTL @@ -587,15 +592,17 @@ public class ApplicationResourceIT extends AbstractRestIT { public void authorizationCodeWithWrongCredentials() throws Exception { //Create form input with bogus credentials Form payload = new Form(); - payload.add("username", "wrong_user"); - payload.add("password", "wrong_password"); - payload.add("response_type", "code"); - payload.add("scope", "none"); - payload.add("redirect_uri", "http://www.my_test.com"); + payload.param( "username", "wrong_user" ); + payload.param( "password", "wrong_password" ); + payload.param( "response_type", "code" ); + payload.param( "scope", "none" ); + payload.param( "redirect_uri", "http://www.my_test.com" ); //POST the form to the authorization endpoint - String apiResponse = clientSetup.getRestClient().management().authorize().getResource() - .type( MediaType.APPLICATION_FORM_URLENCODED_TYPE ).accept(MediaType.TEXT_HTML).post(String.class, payload); + String apiResponse = clientSetup.getRestClient().management().authorize().getTarget() + .request() + .accept( MediaType.TEXT_HTML ) + .post( javax.ws.rs.client.Entity.form( payload ), String.class ); //Assert that an appropriate error message is returned assertTrue(apiResponse.contains("Username or password do not match")); @@ -609,11 +616,12 @@ public class ApplicationResourceIT extends AbstractRestIT { //we have authorize response only with username/password - client_id/secret not considered public void authorizeWithInvalidClientIdRaisesError() throws Exception { //GET the application authorization endpoint using bogus client credentials - String apiResponse = clientSetup.getRestClient().management().authorize().getResource(true) - .queryParam("response_type", "code") + String apiResponse = clientSetup.getRestClient().management().authorize().getTarget( true ) + .queryParam( "response_type", "code" ) .queryParam("client_id", "invalid_client_id") .queryParam("redirect_uri", "http://www.my_test.com") - .accept(MediaType.TEXT_HTML) + .request() + .accept( MediaType.TEXT_HTML ) .get(String.class); //Assert that an appropriate error message is returned //assertTrue(apiResponse.contains("Unable to authenticate (OAuth). Invalid client_id.")); @@ -630,22 +638,25 @@ public class ApplicationResourceIT extends AbstractRestIT { //Create form input with valid credentials Form payload = new Form(); - payload.add("response_type", "code"); - payload.add("grant_type", "client_credentials"); - payload.add("client_id", orgCredentials.getClientId()); - payload.add("client_secret", orgCredentials.getClientSecret()); - payload.add("scope", "none"); - payload.add("redirect_uri", "http://www.my_test.com"); + payload.param( "response_type", "code" ); + payload.param( "grant_type", "client_credentials" ); + payload.param( "client_id", orgCredentials.getClientId() ); + payload.param( "client_secret", orgCredentials.getClientSecret() ); + payload.param( "scope", "none" ); + payload.param( "redirect_uri", "http://www.my_test.com" ); //Set the client to not follow the initial redirect returned by the stack - client().setFollowRedirects(false); try { //POST the form to the authorization endpoint clientSetup.getRestClient().management().authorize() - .getResource().accept(MediaType.TEXT_HTML).post(String.class, payload); - } catch (UniformInterfaceException uie) { - assertEquals(String.valueOf(Status.TEMPORARY_REDIRECT.getStatusCode()), uie.getResponse().getStatus()); + .getTarget() + .property( ClientProperties.FOLLOW_REDIRECTS, Boolean.TRUE ) + .request() + .accept( MediaType.TEXT_HTML ) + .post( javax.ws.rs.client.Entity.form( payload ), String.class ); + } catch (ResponseProcessingException uie) { + assertEquals(String.valueOf( Response.Status.TEMPORARY_REDIRECT.getStatusCode()), uie.getResponse().getStatus()); } } @@ -667,12 +678,12 @@ public class ApplicationResourceIT extends AbstractRestIT { Map<String, String> map = new HashMap<>(1); map.put("grant_type", "client_credentials"); //GET the token endpoint, adding the basic auth header - Token apiResponse = clientSetup.getRestClient().management().token().getResource(false) + Token apiResponse = clientSetup.getRestClient().management().token().getTarget( false ) //add the auth header - .header("Authorization", "Basic " + token) + .request() + .header( "Authorization", "Basic " + token ) .accept(MediaType.APPLICATION_JSON) - .type(MediaType.APPLICATION_JSON_TYPE) - .post(Token.class, map); + .post( javax.ws.rs.client.Entity.entity(map, MediaType.APPLICATION_JSON_TYPE), Token.class ); //Assert that a valid token with a valid TTL is returned assertNotNull("A valid response was returned.", apiResponse); @@ -697,12 +708,13 @@ public class ApplicationResourceIT extends AbstractRestIT { .post(Token.class,new Token("client_credentials", clientId, clientSecret)); //GET the token endpoint, adding authorization header - Token apiResponse = this.app().token().getResource(false) + Token apiResponse = this.app().token().getTarget( false ) //add the auth header - .header("Authorization", "Bearer " + token.getAccessToken()) - .accept(MediaType.APPLICATION_JSON) - .type(MediaType.APPLICATION_JSON_TYPE) - .post(Token.class, hashMap("grant_type", "client_credentials")); + .request() + .header( "Authorization", "Bearer " + token.getAccessToken() ) + .accept( MediaType.APPLICATION_JSON ) + .post(javax.ws.rs.client.Entity.entity( + hashMap( "grant_type", "client_credentials" ), MediaType.APPLICATION_JSON_TYPE ), Token.class ); //Assert that a valid token with a valid TTL is returned assertNotNull("A valid response was returned.", apiResponse); @@ -723,15 +735,14 @@ public class ApplicationResourceIT extends AbstractRestIT { //Create form input Form payload = new Form(); - payload.add("grant_type", "client_credentials"); - payload.add("client_id", clientId); - payload.add("client_secret", clientSecret); + payload.param( "grant_type", "client_credentials" ); + payload.param( "client_id", clientId ); + payload.param("client_secret", clientSecret); //POST the form to the application token endpoint - Token apiResponse = this.app().token().getResource(false) + Token apiResponse = this.app().token().getTarget( false).request() .accept(MediaType.APPLICATION_JSON) - .type(MediaType.APPLICATION_FORM_URLENCODED_TYPE) - .post(Token.class, payload); + .post( javax.ws.rs.client.Entity.form(payload), Token.class); //Assert that a valid token with a valid TTL is returned assertNotNull("It has access_token.", apiResponse.getAccessToken()); @@ -754,11 +765,11 @@ public class ApplicationResourceIT extends AbstractRestIT { String token = Base64.encodeToString(clientCredentials.getBytes()); //POST the form to the application token endpoint along with the payload - Token apiResponse = this.app().token().getResource(false) - .header("Authorization", "Basic " + token) - .accept(MediaType.APPLICATION_JSON) - .type(MediaType.APPLICATION_JSON_TYPE) - .post(Token.class, hashMap("grant_type", "client_credentials")); + Token apiResponse = this.app().token().getTarget( false ).request() + .header( "Authorization", "Basic " + token ) + .accept( MediaType.APPLICATION_JSON ) + .post(javax.ws.rs.client.Entity.entity( + hashMap("grant_type", "client_credentials"), MediaType.APPLICATION_JSON_TYPE), Token.class); //Assert that a valid token with a valid TTL is returned assertNotNull("It has access_token.", apiResponse.getAccessToken()); @@ -775,18 +786,18 @@ public class ApplicationResourceIT extends AbstractRestIT { try { //GET the APM endpoint - String response = resource().path(String.format("/%s/%s/apm/apigeeMobileConfig", orgName, appName)) - .accept(MediaType.APPLICATION_JSON) - .type(MediaType.APPLICATION_JSON_TYPE) + String response = target().path( String.format( "/%s/%s/apm/apigeeMobileConfig", orgName, appName ) ) + .request() + .accept( MediaType.APPLICATION_JSON ) .get(String.class); //Parse the response JsonNode node = mapper.readTree(response); //if things are kosher then JSON should have value for instaOpsApplicationId assertTrue("it's valid json for APM", node.has("instaOpsApplicationId")); - } catch (UniformInterfaceException uie) { + } catch (ResponseProcessingException uie) { //Validate that APM config exists - assertNotEquals("APM Config API exists", Status.NOT_FOUND, + assertNotEquals("APM Config API exists", Response.Status.NOT_FOUND, uie.getResponse().getStatus()); //i.e It should not be "Not Found" } } @@ -813,7 +824,7 @@ public class ApplicationResourceIT extends AbstractRestIT { assertEquals(604800, ttl); //retrieve the users collection for the application using the new token - ApiResponse response = this.app().collection("users").getResource(true, token).get(ApiResponse.class); + ApiResponse response = this.app().collection("users").getTarget(true, token ).request().get(ApiResponse.class); //assert that we did not receive an error assertNull(response.getError()); } @@ -840,7 +851,7 @@ public class ApplicationResourceIT extends AbstractRestIT { assertEquals(604800, ttl); //retrieve the users collection for the application using the new token - ApiResponse response = this.app().collection("users").getResource(true, token).get(ApiResponse.class); + ApiResponse response = this.app().collection("users").getTarget( true, token ).request().get( ApiResponse.class); //assert that we did not receive an error assertNull(response.getError()); } http://git-wip-us.apache.org/repos/asf/usergrid/blob/0578d987/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/AssetResourceIT.java ---------------------------------------------------------------------- diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/AssetResourceIT.java b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/AssetResourceIT.java index 79a6957..92705b2 100644 --- a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/AssetResourceIT.java +++ b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/AssetResourceIT.java @@ -17,19 +17,16 @@ package org.apache.usergrid.rest.applications.assets; -import com.sun.jersey.multipart.FormDataMultiPart; +import net.jcip.annotations.NotThreadSafe; import org.apache.commons.io.IOUtils; - -import org.apache.usergrid.rest.applications.ServiceResource; import org.apache.usergrid.rest.test.resource.AbstractRestIT; import org.apache.usergrid.rest.test.resource.model.ApiResponse; import org.apache.usergrid.rest.test.resource.model.Entity; import org.apache.usergrid.services.assets.data.AssetUtils; - +import org.glassfish.jersey.media.multipart.FormDataMultiPart; import org.junit.After; import org.junit.Assert; import org.junit.Before; -import org.junit.Rule; import org.junit.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -41,8 +38,6 @@ import java.util.HashMap; import java.util.Map; import java.util.UUID; -import net.jcip.annotations.NotThreadSafe; - import static org.apache.usergrid.management.AccountCreationProps.PROPERTIES_USERGRID_BINARY_UPLOADER; import static org.apache.usergrid.utils.MapUtils.hashMap; import static org.junit.Assert.*; http://git-wip-us.apache.org/repos/asf/usergrid/blob/0578d987/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/AwsAssetResourceIT.java ---------------------------------------------------------------------- diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/AwsAssetResourceIT.java b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/AwsAssetResourceIT.java index 9cf719b..72d45de 100644 --- a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/AwsAssetResourceIT.java +++ b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/AwsAssetResourceIT.java @@ -17,51 +17,30 @@ package org.apache.usergrid.rest.applications.assets; -import java.io.IOException; -import java.io.InputStream; -import java.util.HashMap; -import java.util.Map; -import java.util.UUID; - -import javax.ws.rs.core.MediaType; - -import org.jclouds.blobstore.BlobStoreContext; -import org.junit.After; -import org.junit.Assert; -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.context.ApplicationContext; - - +import com.amazonaws.SDKGlobalConfiguration; +import net.jcip.annotations.NotThreadSafe; import org.apache.commons.io.IOUtils; - -import org.apache.usergrid.cassandra.SpringResource; -import org.apache.usergrid.management.ManagementService; import org.apache.usergrid.rest.applications.assets.aws.NoAWSCredsRule; import org.apache.usergrid.rest.test.resource.AbstractRestIT; import org.apache.usergrid.rest.test.resource.model.ApiResponse; import org.apache.usergrid.rest.test.resource.model.Entity; import org.apache.usergrid.services.assets.data.AssetUtils; -import org.apache.usergrid.services.assets.data.BinaryStore; import org.apache.usergrid.services.exceptions.AwsPropertiesNotFoundException; -import org.apache.usergrid.setup.ConcurrentProcessSingleton; - -import com.amazonaws.SDKGlobalConfiguration; -import com.sun.jersey.api.client.UniformInterfaceException; -import com.sun.jersey.multipart.FormDataMultiPart; +import org.glassfish.jersey.media.multipart.FormDataMultiPart; +import org.junit.*; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; -import net.jcip.annotations.NotThreadSafe; +import javax.ws.rs.client.ResponseProcessingException; +import javax.ws.rs.core.MediaType; +import java.io.IOException; +import java.io.InputStream; +import java.util.Map; +import java.util.UUID; import static org.apache.usergrid.management.AccountCreationProps.PROPERTIES_USERGRID_BINARY_UPLOADER; import static org.apache.usergrid.utils.MapUtils.hashMap; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; -import static org.junit.Assert.fail; +import static org.junit.Assert.*; @NotThreadSafe @@ -116,7 +95,7 @@ public class AwsAssetResourceIT extends AbstractRestIT { }catch ( AwsPropertiesNotFoundException e ){ fail("Shouldn't interrupt runtime if access key isnt found."); } - catch( UniformInterfaceException uie){ + catch( ResponseProcessingException uie){ assertEquals(500,uie.getResponse().getStatus()); } finally{ @@ -150,7 +129,7 @@ public class AwsAssetResourceIT extends AbstractRestIT { }catch ( AwsPropertiesNotFoundException e ){ fail("Shouldn't interrupt runtime if access key isnt found."); } - catch( UniformInterfaceException uie){ + catch( ResponseProcessingException uie){ assertEquals( 500, uie.getResponse().getStatus() ); } finally{ @@ -192,7 +171,7 @@ public class AwsAssetResourceIT extends AbstractRestIT { }catch ( AwsPropertiesNotFoundException e ){ fail("Shouldn't interrupt runtime if access key isnt found."); } - catch( UniformInterfaceException uie){ + catch( ResponseProcessingException uie){ assertEquals( 500, uie.getResponse().getStatus() ); } finally{ http://git-wip-us.apache.org/repos/asf/usergrid/blob/0578d987/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/aws/NoAWSCredsRule.java ---------------------------------------------------------------------- diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/aws/NoAWSCredsRule.java b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/aws/NoAWSCredsRule.java index 5f7779e..1dd00ff 100644 --- a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/aws/NoAWSCredsRule.java +++ b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/assets/aws/NoAWSCredsRule.java @@ -20,9 +20,10 @@ package org.apache.usergrid.rest.applications.assets.aws; -import java.util.Map; -import java.util.Properties; - +import com.amazonaws.AmazonClientException; +import com.amazonaws.SDKGlobalConfiguration; +import org.apache.usergrid.rest.test.resource.AbstractRestIT; +import org.apache.usergrid.services.exceptions.AwsPropertiesNotFoundException; import org.junit.Assume; import org.junit.internal.runners.model.MultipleFailureException; import org.junit.rules.TestRule; @@ -30,12 +31,8 @@ import org.junit.runner.Description; import org.junit.runners.model.Statement; import org.springframework.beans.factory.annotation.Autowired; -import org.apache.usergrid.services.exceptions.AwsPropertiesNotFoundException; -import org.apache.usergrid.rest.test.resource.AbstractRestIT; - -import com.amazonaws.AmazonClientException; -import com.amazonaws.SDKGlobalConfiguration; -import com.sun.jersey.api.client.UniformInterfaceException; +import java.util.Map; +import java.util.Properties; /** http://git-wip-us.apache.org/repos/asf/usergrid/blob/0578d987/stack/rest/src/test/java/org/apache/usergrid/rest/applications/collection/CollectionsResourceIT.java ---------------------------------------------------------------------- diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/collection/CollectionsResourceIT.java b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/collection/CollectionsResourceIT.java index 3dadc5b..b2bab35 100644 --- a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/collection/CollectionsResourceIT.java +++ b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/collection/CollectionsResourceIT.java @@ -17,24 +17,20 @@ package org.apache.usergrid.rest.applications.collection; -import java.io.IOException; import com.fasterxml.jackson.databind.JsonNode; -import com.sun.jersey.api.client.UniformInterfaceException; import org.apache.usergrid.rest.test.resource.AbstractRestIT; -import org.apache.usergrid.rest.test.resource.model.ApiResponse; import org.apache.usergrid.rest.test.resource.model.Collection; - -import org.apache.usergrid.rest.test.resource.model.Credentials; import org.apache.usergrid.rest.test.resource.model.Entity; import org.apache.usergrid.rest.test.resource.model.QueryParameters; import org.apache.usergrid.rest.test.resource.model.Token; - import org.junit.Ignore; import org.junit.Test; -import org.mortbay.jetty.security.Credential; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import javax.ws.rs.client.ResponseProcessingException; +import java.io.IOException; + import static org.junit.Assert.*; @@ -66,9 +62,9 @@ public class CollectionsResourceIT extends AbstractRestIT { try { this.clientSetup.getRestClient().org(org).app(app).collection("cities").get(); fail("Call to bad path exists, but it should not"); - } catch (UniformInterfaceException e) { + } catch (ResponseProcessingException e) { //verify the correct error was returned - JsonNode node = mapper.readTree( e.getResponse().getEntity( String.class )); + JsonNode node = mapper.readTree( e.getResponse().readEntity( String.class )); assertEquals( "organization_application_not_found", node.get( "error" ).textValue() ); } @@ -79,9 +75,9 @@ public class CollectionsResourceIT extends AbstractRestIT { try { this.clientSetup.getRestClient().org(org).app(app).collection("cities").post(payload); fail("Call to bad path exists, but it should not"); - } catch (UniformInterfaceException e) { + } catch (ResponseProcessingException e) { //verify the correct error was returned - JsonNode node = mapper.readTree( e.getResponse().getEntity( String.class )); + JsonNode node = mapper.readTree( e.getResponse().readEntity( String.class )); assertEquals( "organization_application_not_found", node.get( "error" ).textValue() ); } @@ -89,9 +85,9 @@ public class CollectionsResourceIT extends AbstractRestIT { try { this.clientSetup.getRestClient().org(org).app(app).collection("cities").entity(entity).put(payload); fail("Call to bad path exists, but it should not"); - } catch (UniformInterfaceException e) { + } catch (ResponseProcessingException e) { //verify the correct error was returned - JsonNode node = mapper.readTree( e.getResponse().getEntity( String.class )); + JsonNode node = mapper.readTree( e.getResponse().readEntity( String.class )); assertEquals( "organization_application_not_found", node.get( "error" ).textValue() ); } @@ -99,9 +95,9 @@ public class CollectionsResourceIT extends AbstractRestIT { try { this.clientSetup.getRestClient().org(org).app(app).collection("cities").entity(entity).delete(); fail("Call to bad path exists, but it should not"); - } catch (UniformInterfaceException e) { + } catch (ResponseProcessingException e) { //verify the correct error was returned - JsonNode node = mapper.readTree( e.getResponse().getEntity( String.class )); + JsonNode node = mapper.readTree( e.getResponse().readEntity( String.class )); assertEquals( "organization_application_not_found", node.get( "error" ).textValue() ); }
