List of usage examples for org.springframework.security.oauth2.client.token AccessTokenProviderChain setClientTokenServices
public void setClientTokenServices(ClientTokenServices clientTokenServices)
From source file:com.onedrive.api.OneDrive.java
public RestTemplate getRestTemplate() { if (restTemplate == null) { DefaultAccessTokenRequest accessTokenRequest = new DefaultAccessTokenRequest(); accessTokenRequest.setAuthorizationCode(authorizationCode); accessTokenRequest.setPreservedState(new Object()); accessTokenRequest.setExistingToken(getOAuth2AccessToken()); restTemplate = new OAuth2RestTemplate(getResourceDetails(), new DefaultOAuth2ClientContext(accessTokenRequest)); restTemplate.setErrorHandler(new OneDriveErrorHandler(restTemplate.getMessageConverters())); AccessTokenProviderChain provider = new AccessTokenProviderChain( Arrays.asList(new AuthorizationCodeAccessTokenProvider())); provider.setClientTokenServices(new InternalTokenServices(this)); ((OAuth2RestTemplate) restTemplate).setAccessTokenProvider(provider); restTemplate.getMessageConverters().add(new MultipartRelatedHttpMessageConverter()); for (HttpMessageConverter<?> mc : restTemplate.getMessageConverters()) { if (mc instanceof MappingJackson2HttpMessageConverter) { objectMapper = ((MappingJackson2HttpMessageConverter) mc).getObjectMapper(); objectMapper.setInjectableValues(new InjectableValues.Std().addValue(OneDrive.class, this)); objectMapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false); SimpleModule module = new SimpleModule(); module.addDeserializer(Date.class, new InternalDateDeserializer()); objectMapper.registerModule(module); }//from w w w .jav a 2 s. c o m } } return restTemplate; }
From source file:org.openmhealth.shim.OAuth2ShimBase.java
protected OAuth2RestOperations restTemplate(String stateKey, String code) { DefaultAccessTokenRequest existingRequest = stateKey != null && authorizationRequestParametersRepo.findByStateKey(stateKey) != null ? (DefaultAccessTokenRequest) SerializationUtils.deserialize( authorizationRequestParametersRepo.findByStateKey(stateKey).getSerializedRequest()) : null;//www. jav a 2 s. com if (existingRequest != null && code != null) { existingRequest.set("code", code); } DefaultOAuth2ClientContext context = new DefaultOAuth2ClientContext( existingRequest != null ? existingRequest : new DefaultAccessTokenRequest()); if (existingRequest != null) { context.setPreservedState(stateKey, "NONE"); } OAuth2RestTemplate restTemplate = new OAuth2RestTemplate(getResource(), context); AccessTokenProviderChain tokenProviderChain = new AccessTokenProviderChain( new ArrayList<>(Arrays.asList(getAuthorizationCodeAccessTokenProvider()))); tokenProviderChain.setClientTokenServices(new AccessParameterClientTokenServices(accessParametersRepo)); restTemplate.setAccessTokenProvider(tokenProviderChain); return restTemplate; }