List of usage examples for org.apache.http.client.utils URLEncodedUtils parse
public static List<NameValuePair> parse(final HttpEntity entity) throws IOException
From source file:com.socialize.test.unit.SocializeRequestFactoryTest.java
@UsesMocks({ UserProviderCredentialsMap.class, AuthProviderData.class, AuthProviderInfo.class, UserProviderCredentials.class }) public void testAuthRequestCreate() throws Exception { SocializeSession session = AndroidMock.createMock(SocializeSession.class); UserProviderCredentialsMap userProviderCredentialsMap = AndroidMock .createMock(UserProviderCredentialsMap.class); AuthProviderData data = AndroidMock.createMock(AuthProviderData.class); AuthProviderInfo authProviderInfo = AndroidMock.createMock(AuthProviderInfo.class); UserProviderCredentials userProviderCredentials = AndroidMock.createMock(UserProviderCredentials.class); AuthProviderType type = AuthProviderType.SOCIALIZE; final String endpoint = "foobar/"; final String udid = "testid"; final String accessToken = "foobar_accessToken"; final String tokenSecret = "foobar_tokenSecret"; final String userId = "foobar_userId"; OAuthRequestSigner signer = new OAuthRequestSigner() { @Override/*from ww w.j a v a 2 s. co m*/ public <R extends HttpUriRequest> R sign(SocializeSession session, R request, OAuthSignListener listener) throws SocializeException { assertTrue(request instanceof HttpPost); HttpPost post = (HttpPost) request; assertEquals(post.getURI().toString(), endpoint); assertNotNull(post.getEntity()); addResult(true); return request; } @Override public <R extends HttpUriRequest> R sign(SocializeSession session, R request) throws SocializeException { return sign(session, request, null); } @Override public <R extends HttpUriRequest> R sign(String consumerKey, String consumerSecret, String accessToken, String accessTokenSecret, R request, OAuthSignListener listener) throws SocializeException { return null; } }; SocializeRequestFactory<SocializeObject> factory = new DefaultSocializeRequestFactory<SocializeObject>( signer, null); AndroidMock.expect(session.getUserProviderCredentials()).andReturn(userProviderCredentialsMap); AndroidMock.expect(data.getAuthProviderInfo()).andReturn(authProviderInfo); AndroidMock.expect(authProviderInfo.getType()).andReturn(type).anyTimes(); AndroidMock.expect(userProviderCredentialsMap.get(type)).andReturn(userProviderCredentials); AndroidMock.expect(userProviderCredentials.getAuthProviderInfo()).andReturn(authProviderInfo).anyTimes(); AndroidMock.expect(userProviderCredentials.getAccessToken()).andReturn(accessToken).anyTimes(); AndroidMock.expect(userProviderCredentials.getTokenSecret()).andReturn(tokenSecret).anyTimes(); AndroidMock.expect(userProviderCredentials.getUserId()).andReturn(userId).anyTimes(); AndroidMock.replay(session, data, authProviderInfo, userProviderCredentialsMap, userProviderCredentials); HttpUriRequest req = factory.getAuthRequest(session, endpoint, udid, data); assertTrue(req instanceof HttpPost); HttpPost post = (HttpPost) req; HttpEntity entity = post.getEntity(); assertNotNull(entity); assertTrue(entity instanceof UrlEncodedFormEntity); List<NameValuePair> parsed = URLEncodedUtils.parse(entity); assertEquals(1, parsed.size()); NameValuePair nvp = parsed.get(0); assertEquals("payload", nvp.getName()); JSONObject jsonExpected = new JSONObject(); jsonExpected.put("udid", udid); jsonExpected.put("auth_type", type.getId()); jsonExpected.put("auth_token", accessToken); jsonExpected.put("auth_token_secret", tokenSecret); jsonExpected.put("auth_id", userId); assertEquals(jsonExpected.toString(), nvp.getValue()); assertTrue((Boolean) getNextResult()); AndroidMock.verify(session); }
From source file:org.whitesource.agent.client.WssServiceClientTest.java
@Test public void testCheckPoliciesRequestSentOk() { final Collection<AgentProjectInfo> projects = new ArrayList<AgentProjectInfo>(); final AgentProjectInfo projectInfo = new AgentProjectInfo(); projectInfo.setProjectToken("projectToken"); projectInfo.setCoordinates(new Coordinates("groupId", "artifactId", "version")); projectInfo.setParentCoordinates(new Coordinates("groupId", "parent-artifactId", "version")); final DependencyInfo dependencyInfo = new DependencyInfo("dep-groupId", "dep-artifactId", "dep-version"); projectInfo.getDependencies().add(dependencyInfo); projects.add(projectInfo);/*from w ww .j ava2 s . c o m*/ final CheckPoliciesRequest checkPoliciesRequest = requestFactory.newCheckPoliciesRequest("orgToken", projects); HttpRequestHandler handler = new HttpRequestHandler() { @Override public void handle(HttpRequest request, HttpResponse response, HttpContext context) throws HttpException, IOException { HttpEntity entity = ((HttpEntityEnclosingRequest) request).getEntity(); List<NameValuePair> nvps = URLEncodedUtils.parse(entity); for (NameValuePair nvp : nvps) { if (nvp.getName().equals(APIConstants.PARAM_REQUEST_TYPE)) { assertEquals(nvp.getValue(), checkPoliciesRequest.type().toString()); } else if (nvp.getName().equals(APIConstants.PARAM_AGENT)) { assertEquals(nvp.getValue(), checkPoliciesRequest.agent()); } else if (nvp.getName().equals(APIConstants.PARAM_AGENT_VERSION)) { assertEquals(nvp.getValue(), checkPoliciesRequest.agentVersion()); } else if (nvp.getName().equals(APIConstants.PARAM_TOKEN)) { assertEquals(nvp.getValue(), checkPoliciesRequest.orgToken()); } else if (nvp.getName().equals(APIConstants.PARAM_DIFF)) { Gson gson = new Gson(); Type type = new TypeToken<Collection<AgentProjectInfo>>() { }.getType(); final Collection<AgentProjectInfo> tmpProjects = gson.fromJson(nvp.getValue(), type); assertEquals(tmpProjects.size(), 1); final AgentProjectInfo info = tmpProjects.iterator().next(); assertEquals(info.getProjectToken(), projectInfo.getProjectToken()); assertEquals(info.getCoordinates(), projectInfo.getCoordinates()); assertEquals(info.getParentCoordinates(), projectInfo.getParentCoordinates()); assertEquals(info.getDependencies().size(), 1); assertEquals(info.getDependencies().iterator().next(), dependencyInfo); } } } }; server.register("/agent", handler); try { client.checkPolicies(checkPoliciesRequest); } catch (WssServiceException e) { // suppress exception } }
From source file:groovyx.net.http.ParserRegistry.java
/** * Default parser used to decode a URL-encoded response. * @see ContentType#URLENC//from w ww . ja va 2 s .c om * @param resp * @return * @throws IOException */ public Map<String, String> parseForm(final HttpResponse resp) throws IOException { HttpEntity entity = resp.getEntity(); /* URLEncodedUtils won't parse the content unless the content-type is application/x-www-form-urlencoded. Since we want to be able to force parsing regardless of what the content-type header says, we need to 'spoof' the content-type if it's not already acceptable. */ if (!ContentType.URLENC.toString().equals(ParserRegistry.getContentType(resp))) { entity = new HttpEntityWrapper(entity) { @Override public org.apache.http.Header getContentType() { String value = ContentType.URLENC.toString(); String charset = ParserRegistry.getCharset(resp); if (charset != null) value += "; charset=" + charset; return new BasicHeader("Content-Type", value); }; }; } List<NameValuePair> params = URLEncodedUtils.parse(entity); Map<String, String> paramMap = new HashMap<String, String>(params.size()); for (NameValuePair param : params) paramMap.put(param.getName(), param.getValue()); return paramMap; }
From source file:com.gsma.mobileconnect.impl.RequestTokenTest.java
@Test public void requestToken_withDefaults_shouldCreateExpectedRequest() throws OIDCException, DiscoveryResponseExpiredException, IOException, RestException { // GIVEN//from w ww. j a v a 2 s .co m RestClient mockedRestClient = mock(RestClient.class); IOIDC ioidc = Factory.getOIDC(mockedRestClient); CaptureRequestTokenResponse captureRequestTokenResponse = new CaptureRequestTokenResponse(); DiscoveryResponse discoveryResponse = new DiscoveryResponse(true, new Date(Long.MAX_VALUE), 0, null, parseJson(OPERATOR_JSON_STRING)); final CaptureHttpRequestBase captureHttpRequestBase = new CaptureHttpRequestBase(); final RestResponse restResponse = new RestResponse(null, 0, null, "{}"); doAnswer(new Answer() { public Object answer(InvocationOnMock invocationOnMock) throws Throwable { Object[] args = invocationOnMock.getArguments(); HttpRequestBase requestBase = (HttpRequestBase) args[0]; captureHttpRequestBase.setValue(requestBase); return restResponse; } }).when(mockedRestClient).callRestEndPoint(any(HttpRequestBase.class), any(HttpClientContext.class), eq(30000), Matchers.<List<KeyValuePair>>any()); // WHEN ioidc.requestToken(discoveryResponse, "", "", null, captureRequestTokenResponse); // THEN HttpRequestBase request = captureHttpRequestBase.getValue(); assertEquals(TOKEN_HREF, request.getURI().toString()); assertEquals("POST", request.getMethod()); assertEquals("application/x-www-form-urlencoded", request.getFirstHeader("Content-Type").getValue()); assertEquals("application/json", request.getFirstHeader("accept").getValue()); assertTrue(request instanceof HttpPost); HttpPost postRequest = (HttpPost) request; List<NameValuePair> contents = URLEncodedUtils.parse(postRequest.getEntity()); assertEquals("", findValueOfName(contents, "code")); assertEquals("authorization_code", findValueOfName(contents, "grant_type")); assertEquals("", findValueOfName(contents, "redirect_uri")); }
From source file:com.gsma.mobileconnect.impl.RequestTokenTest.java
@Test public void requestToken_withAllOptionsSet_shouldCreateExpectedRequest() throws OIDCException, DiscoveryResponseExpiredException, IOException, RestException { // GIVEN//from www.ja va 2 s . c o m RestClient mockedRestClient = mock(RestClient.class); IOIDC ioidc = Factory.getOIDC(mockedRestClient); CaptureRequestTokenResponse captureRequestTokenResponse = new CaptureRequestTokenResponse(); DiscoveryResponse discoveryResponse = new DiscoveryResponse(true, new Date(Long.MAX_VALUE), 0, null, parseJson(OPERATOR_JSON_STRING)); TokenOptions options = new TokenOptions(); options.setTimeout(333); final CaptureHttpRequestBase captureHttpRequestBase = new CaptureHttpRequestBase(); final RestResponse restResponse = new RestResponse(null, 0, null, "{}"); doAnswer(new Answer() { public Object answer(InvocationOnMock invocationOnMock) throws Throwable { Object[] args = invocationOnMock.getArguments(); HttpRequestBase requestBase = (HttpRequestBase) args[0]; captureHttpRequestBase.setValue(requestBase); return restResponse; } }).when(mockedRestClient).callRestEndPoint(any(HttpRequestBase.class), any(HttpClientContext.class), eq(options.getTimeout()), Matchers.<List<KeyValuePair>>any()); String expectedRedirectURI = "expected-redirect-uri"; String expectedCode = "expected-code"; // WHEN ioidc.requestToken(discoveryResponse, expectedRedirectURI, expectedCode, options, captureRequestTokenResponse); // THEN HttpRequestBase request = captureHttpRequestBase.getValue(); assertEquals(TOKEN_HREF, request.getURI().toString()); assertEquals("POST", request.getMethod()); assertEquals("application/x-www-form-urlencoded", request.getFirstHeader("Content-Type").getValue()); assertEquals("application/json", request.getFirstHeader("accept").getValue()); assertTrue(request instanceof HttpPost); HttpPost postRequest = (HttpPost) request; List<NameValuePair> contents = URLEncodedUtils.parse(postRequest.getEntity()); assertEquals(expectedCode, findValueOfName(contents, "code")); assertEquals("authorization_code", findValueOfName(contents, "grant_type")); assertEquals(expectedRedirectURI, findValueOfName(contents, "redirect_uri")); }
From source file:com.socialize.test.unit.SocializeRequestFactoryTest.java
@SuppressWarnings("unchecked") @UsesMocks({ SocializeObjectFactory.class, JSONObject.class, SocializeSession.class }) public void testPostRequestCreate() throws Exception { SocializeObjectFactory<SocializeObject> factory = AndroidMock.createMock(SocializeObjectFactory.class); SocializeSession session = AndroidMock.createMock(SocializeSession.class); SocializeObject object = new SocializeObject(); final String jsonData = "{ 'entity': 'http://www.example.com/interesting-story/', 'text': 'this was a great story' }"; final String endpoint = "foobar/"; /**// w w w .j ava 2s .c o m * The toString() method can't be mocked by EasyMock (no idea why!) so * we can't use a mock for the JSON object. We'll have to do it * manually. */ JSONObject json = new JSONObject() { @Override public String toString() { return jsonData; } }; AndroidMock.expect(factory.toJSON(object)).andReturn(json); OAuthRequestSigner signer = new OAuthRequestSigner() { @Override public <R extends HttpUriRequest> R sign(SocializeSession session, R request, OAuthSignListener listener) throws SocializeException { HttpPost.class.isInstance(request); assertEquals(request.getURI().toString(), endpoint); addResult(true); return request; } @Override public <R extends HttpUriRequest> R sign(SocializeSession session, R request) throws SocializeException { return sign(session, request, null); } @Override public <R extends HttpUriRequest> R sign(String consumerKey, String consumerSecret, String accessToken, String accessTokenSecret, R request, OAuthSignListener listener) throws SocializeException { return null; } }; SocializeRequestFactory<SocializeObject> reqFactory = new DefaultSocializeRequestFactory<SocializeObject>( signer, factory); AndroidMock.replay(factory); HttpUriRequest req = reqFactory.getPostRequest(session, endpoint, object); assertTrue((Boolean) getNextResult()); assertTrue(HttpPost.class.isInstance(req)); assertTrue(HttpEntityEnclosingRequestBase.class.isAssignableFrom(req.getClass())); HttpEntityEnclosingRequestBase post = (HttpEntityEnclosingRequestBase) req; HttpEntity entity = post.getEntity(); assertNotNull(entity); assertTrue(entity instanceof UrlEncodedFormEntity); List<NameValuePair> parsed = URLEncodedUtils.parse(entity); assertEquals(1, parsed.size()); NameValuePair nvp = parsed.get(0); assertEquals("payload", nvp.getName()); assertEquals(jsonData, nvp.getValue()); AndroidMock.verify(factory); }
From source file:com.socialize.test.unit.SocializeRequestFactoryTest.java
@SuppressWarnings("unchecked") @UsesMocks({ SocializeObjectFactory.class, SocializeSession.class }) public void testPostRequestCreateCollection() throws Exception { SocializeObjectFactory<SocializeObject> factory = AndroidMock.createMock(SocializeObjectFactory.class); SocializeSession session = AndroidMock.createMock(SocializeSession.class); SocializeObject object0 = new SocializeObject(); SocializeObject object1 = new SocializeObject(); final String jsonData = "foo"; final String endpoint = "foobar/"; /**/* ww w. ja v a2s . com*/ * The toString() method can't be mocked by EasyMock (no idea why!) so * we can't use a mock for the JSON object. We'll have to do it * manually. */ JSONArray jsonArray = new JSONArray() { @Override public String toString() { return jsonData; } }; Collection<SocializeObject> objects = new ArrayList<SocializeObject>(1); objects.add(object0); objects.add(object1); AndroidMock.expect(factory.toJSON(objects)).andReturn(jsonArray); AndroidMock.replay(factory); OAuthRequestSigner signer = new OAuthRequestSigner() { @Override public <R extends HttpUriRequest> R sign(SocializeSession session, R request, OAuthSignListener listener) throws SocializeException { HttpPost.class.isInstance(request); assertEquals(request.getURI().toString(), endpoint); addResult(true); return request; } @Override public <R extends HttpUriRequest> R sign(SocializeSession session, R request) throws SocializeException { return sign(session, request, null); } @Override public <R extends HttpUriRequest> R sign(String consumerKey, String consumerSecret, String accessToken, String accessTokenSecret, R request, OAuthSignListener listener) throws SocializeException { return null; } }; SocializeRequestFactory<SocializeObject> reqFactory = new DefaultSocializeRequestFactory<SocializeObject>( signer, factory); HttpUriRequest req = reqFactory.getPostRequest(session, endpoint, objects); assertTrue((Boolean) getNextResult()); assertTrue(HttpPost.class.isInstance(req)); assertTrue(HttpEntityEnclosingRequestBase.class.isAssignableFrom(req.getClass())); HttpEntityEnclosingRequestBase post = (HttpEntityEnclosingRequestBase) req; HttpEntity entity = post.getEntity(); assertNotNull(entity); assertTrue(entity instanceof UrlEncodedFormEntity); List<NameValuePair> parsed = URLEncodedUtils.parse(entity); assertEquals(1, parsed.size()); NameValuePair nvp = parsed.get(0); assertEquals("payload", nvp.getName()); assertEquals(jsonData, nvp.getValue()); AndroidMock.verify(factory); }
From source file:com.socialize.test.unit.SocializeRequestFactoryTest.java
@SuppressWarnings("unchecked") @UsesMocks({ SocializeObjectFactory.class, SocializeSession.class }) public void testPutRequestCreateCollection() throws Exception { SocializeObjectFactory<SocializeObject> factory = AndroidMock.createMock(SocializeObjectFactory.class); SocializeSession session = AndroidMock.createMock(SocializeSession.class); SocializeObject object0 = new SocializeObject(); SocializeObject object1 = new SocializeObject(); final String jsonData = "foo"; final String endpoint = "foobar/"; /**/*from w w w.j a v a 2 s. c o m*/ * The toString() method can't be mocked by EasyMock (no idea why!) so * we can't use a mock for the JSON object. We'll have to do it * manually. */ JSONArray jsonArray = new JSONArray() { @Override public String toString() { return jsonData; } }; Collection<SocializeObject> objects = new ArrayList<SocializeObject>(1); objects.add(object0); objects.add(object1); AndroidMock.expect(factory.toJSON(objects)).andReturn(jsonArray); AndroidMock.replay(factory); OAuthRequestSigner signer = new OAuthRequestSigner() { @Override public <R extends HttpUriRequest> R sign(SocializeSession session, R request, OAuthSignListener listener) throws SocializeException { HttpPut.class.isInstance(request); assertEquals(request.getURI().toString(), endpoint); addResult(true); return request; } @Override public <R extends HttpUriRequest> R sign(SocializeSession session, R request) throws SocializeException { return sign(session, request, null); } @Override public <R extends HttpUriRequest> R sign(String consumerKey, String consumerSecret, String accessToken, String accessTokenSecret, R request, OAuthSignListener listener) throws SocializeException { return null; } }; SocializeRequestFactory<SocializeObject> reqFactory = new DefaultSocializeRequestFactory<SocializeObject>( signer, factory); HttpUriRequest req = reqFactory.getPutRequest(session, endpoint, objects); assertTrue((Boolean) getNextResult()); assertTrue(HttpPut.class.isInstance(req)); assertTrue(HttpEntityEnclosingRequestBase.class.isAssignableFrom(req.getClass())); HttpEntityEnclosingRequestBase post = (HttpEntityEnclosingRequestBase) req; HttpEntity entity = post.getEntity(); assertNotNull(entity); assertTrue(entity instanceof UrlEncodedFormEntity); List<NameValuePair> parsed = URLEncodedUtils.parse(entity); assertEquals(1, parsed.size()); NameValuePair nvp = parsed.get(0); assertEquals("payload", nvp.getName()); assertEquals(jsonData, nvp.getValue()); AndroidMock.verify(factory); }
From source file:com.socialize.test.unit.SocializeRequestFactoryTest.java
@SuppressWarnings("unchecked") @UsesMocks({ SocializeObjectFactory.class, JSONObject.class, SocializeSession.class }) public void testPutRequestCreate() throws Exception { SocializeObjectFactory<SocializeObject> factory = AndroidMock.createMock(SocializeObjectFactory.class); SocializeSession session = AndroidMock.createMock(SocializeSession.class); SocializeObject object = new SocializeObject(); final String jsonData = "foobar"; final String endpoint = "foobar/"; /**// w w w .j av a2 s . co m * The toString() method can't be mocked by EasyMock (no idea why!) so * we can't use a mock for the JSON object. We'll have to do it * manually. */ JSONObject json = new JSONObject() { @Override public String toString() { return jsonData; } }; AndroidMock.expect(factory.toJSON(object)).andReturn(json); OAuthRequestSigner signer = new OAuthRequestSigner() { @Override public <R extends HttpUriRequest> R sign(SocializeSession session, R request, OAuthSignListener listener) throws SocializeException { HttpPut.class.isInstance(request); assertEquals(request.getURI().toString(), endpoint); addResult(true); return request; } @Override public <R extends HttpUriRequest> R sign(SocializeSession session, R request) throws SocializeException { return sign(session, request, null); } @Override public <R extends HttpUriRequest> R sign(String consumerKey, String consumerSecret, String accessToken, String accessTokenSecret, R request, OAuthSignListener listener) throws SocializeException { return null; } }; SocializeRequestFactory<SocializeObject> reqFactory = new DefaultSocializeRequestFactory<SocializeObject>( signer, factory); AndroidMock.replay(factory); HttpUriRequest req = reqFactory.getPutRequest(session, endpoint, object); assertTrue((Boolean) getNextResult()); assertTrue(HttpPut.class.isInstance(req)); assertTrue(HttpEntityEnclosingRequestBase.class.isAssignableFrom(req.getClass())); HttpEntityEnclosingRequestBase post = (HttpEntityEnclosingRequestBase) req; HttpEntity entity = post.getEntity(); assertNotNull(entity); assertTrue(entity instanceof UrlEncodedFormEntity); List<NameValuePair> parsed = URLEncodedUtils.parse(entity); assertEquals(1, parsed.size()); NameValuePair nvp = parsed.get(0); assertEquals("payload", nvp.getName()); assertEquals(jsonData, nvp.getValue()); AndroidMock.verify(factory); }