List of usage examples for org.springframework.util LinkedMultiValueMap LinkedMultiValueMap
public LinkedMultiValueMap()
From source file:org.devefx.httpmapper.binding.MapperMethod.java
@SuppressWarnings("unchecked") public Object execute(RestTemplate restTemplate, Object[] args) throws Exception { Object result = null;//from www . java 2 s .c o m do { MultiValueMap<String, Object> body = new LinkedMultiValueMap<>(); HttpHeaders headers = new HttpHeaders(); headers.setContentType(MediaType.valueOf(command.getContentType())); Map<String, Object> paramMap = null; Object param = method.convertArgsToCommandParam(args); if (param instanceof Map) { paramMap = (Map<String, Object>) param; body.setAll(paramMap); } URI uri = expandURI(command.getUrl(), args); RequestEntity requestEntity = new RequestEntity(body, headers, command.getHttpMethod(), uri, method.getReturnType()); mappedHandler.onRequest(requestEntity); // FIXME: application/x-www-form-urlencoded if (headers.getContentType().includes(MediaType.APPLICATION_FORM_URLENCODED)) { if (paramMap != null) { for (Map.Entry<String, Object> entry : paramMap.entrySet()) { Object value = entry.getValue(); if (value != null && !ReflectUtils.isUserType(value)) { entry.setValue(String.valueOf(value)); } } body.setAll(paramMap); } else if (param != null && ReflectUtils.isUserType(param)) { body.setAll(mapper.<Map<String, Object>>convertValue(param, mapType)); } } if (requestEntity.getMethod() == HttpMethod.GET) { uri = appendUrlParams(requestEntity.getUrl(), body); requestEntity.setUrl(uri); } if (logger.isInfoEnabled()) { String preStr = command.getName() + " ====> "; logger.info(preStr + "Request: " + requestEntity.getUrl()); logger.info(preStr + "Parameters: " + requestEntity.getBody()); logger.info(preStr + "Headers: " + requestEntity.getHeaders()); } ResponseEntity<JsonNode> responseEntity = restTemplate.exchange(requestEntity.getUrl(), requestEntity.getMethod(), new HttpEntity<>(requestEntity.getBody(), requestEntity.getHeaders()), JsonNode.class); if (logger.isInfoEnabled()) { StringBuffer buf = new StringBuffer(); buf.append(command.getName() + " ====> "); buf.append("Response: [status=").append(responseEntity.getStatusCode()).append("] "); if (responseEntity.hasBody()) { buf.append(responseEntity.getBody()); } logger.info(buf.toString()); } if (responseEntity != null) { org.devefx.httpmapper.http.ResponseEntity entity = new org.devefx.httpmapper.http.ResponseEntity( responseEntity.getBody(), responseEntity.getHeaders(), responseEntity.getStatusCode()); mappedHandler.onResponse(requestEntity, entity); if (entity.hasBody()) { Object responseBody = entity.getBody(); if (method.getRawType().isInstance(responseBody)) { result = responseBody; break; } JavaType valueType = mapper.getTypeFactory().constructType(method.getReturnType()); if (responseBody instanceof String) { result = mapper.readValue((String) responseBody, valueType); } else { result = mapper.convertValue(responseBody, valueType); } } } } while (false); if (result == null && method.returnsPrimitive() && !method.returnsVoid()) { throw new BindingException("Mapper method '" + command.getUrl() + " attempted to return null from a method with a primitive return type (" + method.getReturnType() + ")."); } return result; }
From source file:au.org.ala.fielddata.mobile.service.FieldDataServiceClient.java
public void sync(List<Record> records) throws Exception { MultiValueMap<String, Object> params = new LinkedMultiValueMap<String, Object>(); params.set("ident", ident); params.set("inFrame", "false"); // Setting this parameter prevents the // server from assuming a jsonp request. params.set("syncData", records); String url = getServerUrl() + syncUrl; Log.d("URL", url); Log.d("Params", getGson().toJson(records.get(0))); RestTemplate restTemplate = getRestTemplate(); SyncRecordsResponse result = restTemplate.postForObject(url, params, SyncRecordsResponse.class); }
From source file:org.esupportail.filex.web.WebController.java
@RequestMapping("VIEW") protected ModelAndView renderView(RenderRequest request, RenderResponse response) throws Exception { ModelMap model = new ModelMap(); final PortletPreferences prefs = request.getPreferences(); String eppnAttr = prefs.getValue(PREF_EPPN_ATTR, null); String restUrl = prefs.getValue(PREF_REST_URL, null); Map userInfos = (Map) request.getAttribute(PortletRequest.USER_INFO); String eppn = (String) userInfos.get(eppnAttr); log.info("Try to get FileX info for " + eppn); try {/*from www. j av a2s . c o m*/ MultiValueMap<String, String> headers = new LinkedMultiValueMap<String, String>(); headers.add("eppn", eppn); HttpEntity<MultiValueMap<String, String>> httpRequest = new HttpEntity<MultiValueMap<String, String>>( null, headers); ResponseEntity<Filex> filexEntity = restTemplate.exchange(restUrl, HttpMethod.GET, httpRequest, Filex.class); log.debug("FileX info for " + eppn + " : " + filexEntity.getBody().toString()); model.put("filex", filexEntity.getBody()); } catch (HttpClientErrorException e) { return new ModelAndView("error", model); } model.put("serviceUrl", prefs.getValue(PREF_SERVICE_URL, null)); return new ModelAndView("view", model); }
From source file:de.zib.gndms.gndmc.gorfx.Test.TaskFlowClientTest.java
@Test(groups = { "TaskFlowClientTest" }) public void createTaskFlow() { FailureOrder order = new FailureOrder(); order.setMessage("TESTING TaskFlow creation"); order.setWhere(FailureOrder.FailurePlace.NOWHERE); ResponseEntity<Specifier<Facets>> responseEntity = gorfxClient.createTaskFlow( FailureTaskFlowMeta.TASK_FLOW_TYPE_KEY, order, admindn, TASKFLOW_WID, new LinkedMultiValueMap<String, String>()); Assert.assertNotNull(responseEntity); Assert.assertEquals(responseEntity.getStatusCode(), HttpStatus.CREATED); taskFlowId = responseEntity.getBody().getUriMap().get(UriFactory.TASKFLOW_ID); }
From source file:com.miserablemind.api.consumer.tradeking.api.impl.AccountTemplate.java
@Override public TradeKingTransaction[] getTransactionsHistory(String accountId, TradeKingTransaction.Range range, TradeKingTransaction.Type type) { MultiValueMap<String, String> parameters = new LinkedMultiValueMap<>(); parameters.set("range", range.toString()); parameters.set("transactions", type.toString()); URI url = this.buildUri(String.format(URL_ACCOUNT_HISTORY, accountId), parameters); ResponseEntity<TKHistoryResponse> response = this.getRestTemplate().getForEntity(url, TKHistoryResponse.class); if (null != response.getBody().getError()) throw new ApiException(TradeKingServiceProvider.PROVIDER_ID, response.getBody().getError()); return response.getBody().getTransactionHistory(); }
From source file:org.trustedanalytics.h2oscoringengine.publisher.steps.AppBitsUploadingStepTest.java
private HttpEntity<MultiValueMap<String, Object>> createTestAppBitsRequest() throws IOException { HttpEntity<String> resourcesPart = new HttpEntity<String>("[]"); HttpEntity<ByteArrayResource> dataPart = new HttpEntity<>( new ByteArrayResource(Files.readAllBytes(testAppBitsPath)), HttpCommunication.zipHeaders()); MultiValueMap<String, Object> multiPartRequest = new LinkedMultiValueMap<>(); multiPartRequest.add("resources", resourcesPart); multiPartRequest.add("application", dataPart); HttpHeaders headers = new HttpHeaders(); headers.setContentType(MediaType.MULTIPART_FORM_DATA); return new HttpEntity<>(multiPartRequest, headers); }
From source file:com.lixiaocong.social.MyJdbcConnection.java
public MultiValueMap<String, Connection<?>> findAllConnections() { List<Connection<?>> resultList = jdbcTemplate.query( selectFromUserConnection() + " where userId = ? order by providerId, rank", connectionMapper, userId);//from w ww . j ava 2 s . c o m MultiValueMap<String, Connection<?>> connections = new LinkedMultiValueMap<String, Connection<?>>(); Set<String> registeredProviderIds = connectionFactoryLocator.registeredProviderIds(); for (String registeredProviderId : registeredProviderIds) { connections.put(registeredProviderId, Collections.<Connection<?>>emptyList()); } for (Connection<?> connection : resultList) { String providerId = connection.getKey().getProviderId(); if (connections.get(providerId).size() == 0) { connections.put(providerId, new LinkedList<Connection<?>>()); } connections.add(providerId, connection); } return connections; }
From source file:org.cloudfoundry.identity.uaa.login.integration.AuthorizationCodeGrantIntegrationTests.java
@Test public void testSuccessfulAuthorizationCodeFlow() throws Exception { HttpHeaders headers = new HttpHeaders(); // TODO: should be able to handle just TEXT_HTML headers.setAccept(Arrays.asList(MediaType.TEXT_HTML, MediaType.ALL)); AuthorizationCodeResourceDetails resource = testAccounts.getDefaultAuthorizationCodeResource(); URI uri = serverRunning.buildUri("/oauth/authorize").queryParam("response_type", "code") .queryParam("state", "mystateid").queryParam("client_id", resource.getClientId()) .queryParam("redirect_uri", resource.getPreEstablishedRedirectUri()).build(); ResponseEntity<Void> result = serverRunning.getForResponse(uri.toString(), headers); assertEquals(HttpStatus.FOUND, result.getStatusCode()); String location = result.getHeaders().getLocation().toString(); if (result.getHeaders().containsKey("Set-Cookie")) { String cookie = result.getHeaders().getFirst("Set-Cookie"); headers.set("Cookie", cookie); }//from w w w . ja v a2s . c om ResponseEntity<String> response = serverRunning.getForString(location, headers); // should be directed to the login screen... String body = response.getBody(); assertTrue(body.contains("/login.do")); assertTrue(body.contains("username")); assertTrue(body.contains("password")); MultiValueMap<String, String> formData = new LinkedMultiValueMap<String, String>(); formData.add("username", testAccounts.getUserName()); formData.add("password", testAccounts.getPassword()); // Should be redirected to the original URL, but now authenticated result = serverRunning.postForResponse("/login.do", headers, formData); assertEquals(HttpStatus.FOUND, result.getStatusCode()); if (result.getHeaders().containsKey("Set-Cookie")) { String cookie = result.getHeaders().getFirst("Set-Cookie"); headers.set("Cookie", cookie); } response = serverRunning.getForString(result.getHeaders().getLocation().toString(), headers); if (response.getStatusCode() == HttpStatus.OK) { body = response.getBody(); // The grant access page should be returned assertTrue(body.contains("Application Authorization")); // Forms should have the right action assertTrue(body.matches("(?s).*\\saction=\"\\S*oauth/authorize\".*")); formData.clear(); formData.add("user_oauth_approval", "true"); result = serverRunning.postForResponse("/oauth/authorize", headers, formData); assertEquals(HttpStatus.FOUND, result.getStatusCode()); location = result.getHeaders().getLocation().toString(); } else { // Token cached so no need for second approval assertEquals(HttpStatus.FOUND, response.getStatusCode()); location = response.getHeaders().getLocation().toString(); } assertTrue("Wrong location: " + location, location.matches(resource.getPreEstablishedRedirectUri() + ".*code=.+")); assertFalse("Location should not contain cookie: " + location, location.matches(resource.getPreEstablishedRedirectUri() + ".*cookie=.+")); formData.clear(); formData.add("client_id", resource.getClientId()); formData.add("redirect_uri", resource.getPreEstablishedRedirectUri()); formData.add("grant_type", "authorization_code"); formData.add("code", location.split("code=")[1].split("&")[0]); HttpHeaders tokenHeaders = new HttpHeaders(); tokenHeaders.set("Authorization", testAccounts.getAuthorizationHeader(resource.getClientId(), resource.getClientSecret())); @SuppressWarnings("rawtypes") ResponseEntity<Map> tokenResponse = serverRunning.postForMap("/oauth/token", formData, tokenHeaders); assertEquals(HttpStatus.OK, tokenResponse.getStatusCode()); }
From source file:com.github.moscaville.contactsdb.controller.BaseController.java
public String saveItem(RecordWrapper<T> recordWrapper, ID id) { if (OFFLINE_TEST) { return ""; }/*from ww w.j a v a 2s . c o m*/ String result = null; //RecordWrapper<T> recordWrapper = new RecordWrapper<>(); //BeanUtils.copyProperties(t, recordWrapper.getFields()); StringBuilder sUri = new StringBuilder(); sUri.append(AIRTABLE_ENDPOINT_URL).append(getAirTableName()); URI uri; if (id == null) { try { uri = new URI(sUri.toString()); ResponseEntity<BaseResponse> response = restTemplate.postForEntity(uri, recordWrapper, BaseResponse.class); if (response != null && response.getBody() != null) { result = response.getBody().getId(); } } catch (URISyntaxException ex) { Logger.getLogger(BaseController.class.getName()).log(Level.SEVERE, null, ex); } } else { sUri.append("/").append(id.toString()); MultiValueMap<String, String> headers = new LinkedMultiValueMap<>(); headers.add("HeaderName", "value"); headers.add("Content-Type", "application/json"); ObjectMapper objectMapper = new ObjectMapper(); MappingJackson2HttpMessageConverter messageConverter = new MappingJackson2HttpMessageConverter(); messageConverter.setObjectMapper(objectMapper); restTemplate.getMessageConverters().add(messageConverter); HttpEntity<RecordWrapper> request = new HttpEntity<>(recordWrapper, headers); try { uri = new URI(sUri.toString()); restTemplate.put(uri, request); result = ""; } catch (RestClientException e) { if (e instanceof HttpStatusCodeException) { String errorResponse = ((HttpStatusCodeException) e).getResponseBodyAsString(); System.out.println(errorResponse); } } catch (URISyntaxException ex) { Logger.getLogger(BaseController.class.getName()).log(Level.SEVERE, null, ex); } } return result; }
From source file:de.zib.gndms.gndmc.gorfx.Test.GORFXClientTest.java
@Test(groups = { "GORFXServiceTest" }, dependsOnMethods = { "listFacets", "listTaskFlows" }) public void createTaskFlow() { // create TaskFlow {//from w ww . ja v a 2s. co m FailureOrder order = new FailureOrder(); order.setMessage("TESTING TaskFlow creation"); order.setWhere(FailureOrder.FailurePlace.NOWHERE); ResponseEntity<Specifier<Facets>> responseEntity = gorfxClient.createTaskFlow( FailureTaskFlowMeta.TASK_FLOW_TYPE_KEY, order, admindn, "GORFXTaskFlowTEST", new LinkedMultiValueMap<String, String>()); Assert.assertNotNull(responseEntity); Assert.assertEquals(responseEntity.getStatusCode(), HttpStatus.CREATED); } // get TaskFlow Info //{ // ResponseEntity< TaskFlowInfo > responseEntity = gorfxClient.getTaskFlowInfo( // FailureTaskFlowMeta.TASK_FLOW_TYPE_KEY, admindn ); // // Assert.assertNotNull( responseEntity ); // Assert.assertEquals( responseEntity.getStatusCode(), HttpStatus.OK ); //} }