use of com.aliyun.dysmsapi20170525.Client in project service-proxy by membrane.
the class DynamicRegistration method registerWithCallbackAt.
public Client registerWithCallbackAt(List<String> callbackUris, String registrationEndpoint) throws Exception {
Exchange exc = new Request.Builder().post(registrationEndpoint).header(Header.CONTENT_TYPE, MimeType.APPLICATION_JSON_UTF8).body(getRegistrationBody(callbackUris)).buildExchange();
Response response = doRequest(exc);
HashMap<String, String> json = Util.parseSimpleJSONResponse(response);
if (!json.containsKey("client_id") || !json.containsKey("client_secret"))
throw new RuntimeException("Registration endpoint didn't return clientId/clientSecret");
return new Client(json.get("client_id"), json.get("client_secret"), "", json.get("grant_types"));
}
use of com.aliyun.dysmsapi20170525.Client in project service-proxy by membrane.
the class TokenFlow method getResponse.
@Override
public Outcome getResponse() throws IOException {
Client client;
synchronized (session) {
client = authServer.getClientList().getClient(session.getUserAttributes().get("client_id"));
}
String grantTypes = client.getGrantTypes();
if (!grantTypes.contains("implicit")) {
exc.setResponse(OAuth2Util.createParameterizedJsonErrorResponse(exc, new ReusableJsonGenerator(), "error", "invalid_grant_type"));
return Outcome.RETURN;
}
return respondWithTokenAndRedirect(exc, generateAccessToken(client), authServer.getTokenGenerator().getTokenType(), session);
}
use of com.aliyun.dysmsapi20170525.Client in project stream-services-2.0 by Backbase.
the class DbsWebClientConfiguration method dbsWebClient.
/**
* Default Reactive Web Client to be used when interacting with DBS Services. Requires OAuth2 client credentials set
* in application.yml
*
* @param objectMapper The Jackson Object mapper to register serialization and deserialization json
* content.
* @param reactiveOAuth2AuthorizedClientManager Client Manager managing OAuth2 tokens
* @param builder THe Web Client Builder which is already preconfigured using MicroMeter
* instrumentation.
* @return Preconfigured Web Client
*/
@Bean
public WebClient dbsWebClient(ObjectMapper objectMapper, ReactiveOAuth2AuthorizedClientManager reactiveOAuth2AuthorizedClientManager, WebClient.Builder builder, DbsWebClientConfigurationProperties dbsWebClientConfigurationProperties) {
ServerOAuth2AuthorizedClientExchangeFilterFunction oauth2ClientFilter = new ServerOAuth2AuthorizedClientExchangeFilterFunction(reactiveOAuth2AuthorizedClientManager);
oauth2ClientFilter.setDefaultClientRegistrationId(dbsWebClientConfigurationProperties.getDefaultClientRegistrationId());
builder.defaultHeader("Content-Type", MediaType.APPLICATION_JSON.toString()).defaultHeader("Accept", MediaType.APPLICATION_JSON.toString()).filter((clientRequest, exchangeFunction) -> {
final ClientRequest newRequest = Optional.ofNullable(dbsWebClientConfigurationProperties.getAdditionalHeaders()).map(additionalHeaders -> {
log.debug("Adding additional headers: {} from configuration Request: {}", additionalHeaders, clientRequest.url());
return ClientRequest.from(clientRequest).headers(httpHeaders -> httpHeaders.addAll(additionalHeaders)).build();
}).orElse(clientRequest);
return Mono.subscriberContext().flatMap(context -> {
Optional<MultiValueMap<String, String>> forwardHeaders = context.<MultiValueMap<String, String>>getOrEmpty(CONTEXT_KEY_FORWARDED_HEADERS);
log.debug("context contains headers? " + forwardHeaders.isPresent());
log.debug("forward headers:" + forwardHeaders.map(MultiValueMap::toString).orElse("null"));
ClientRequest contextRequest = context.<MultiValueMap<String, String>>getOrEmpty("headers").map(headers -> {
log.debug("Adding additional headers: {} from Reactive subscriber context to Request: {}", headers, clientRequest.url());
return ClientRequest.from(newRequest).headers(httpHeaders -> httpHeaders.addAll(headers)).build();
}).orElse(newRequest);
return exchangeFunction.exchange(contextRequest);
});
}).filter(new CsrfClientExchangeFilterFunction()).filter(oauth2ClientFilter);
if (log.isDebugEnabled()) {
HttpClient httpClient = HttpClient.create().wiretap("reactor.netty.http.client.HttpClient", LogLevel.DEBUG, AdvancedByteBufFormat.TEXTUAL);
builder.clientConnector(new ReactorClientHttpConnector(httpClient));
}
// ensure correct exchange strategy is installed
ExchangeStrategies strategies = ExchangeStrategies.builder().codecs(clientDefaultCodecsConfigurer -> {
Jackson2JsonEncoder encoder = new Jackson2JsonEncoder(objectMapper, MediaType.APPLICATION_JSON);
Jackson2JsonDecoder decoder = new Jackson2JsonDecoder(objectMapper, MediaType.APPLICATION_JSON);
clientDefaultCodecsConfigurer.defaultCodecs().jackson2JsonEncoder(encoder);
clientDefaultCodecsConfigurer.defaultCodecs().jackson2JsonDecoder(decoder);
}).build();
builder.exchangeStrategies(strategies);
return builder.build();
}
use of com.aliyun.dysmsapi20170525.Client in project ORCID-Source by ORCID.
the class MembersManagerImpl method getMember.
@Override
@Transactional
public Member getMember(String memberId) {
Member member = new Member();
String orcid = memberId;
if (!OrcidStringUtils.isValidOrcid(memberId)) {
Map<String, String> ids = emailManager.findOricdIdsByCommaSeparatedEmails(memberId);
// Check if it is using the email
if (ids != null && ids.containsKey(memberId)) {
orcid = ids.get(memberId);
} else {
// Check if can find it by name
try {
orcid = profileEntityManager.findByCreditName(memberId);
} catch (Exception e) {
member.getErrors().add(getMessage("manage_member.email_not_found"));
orcid = null;
}
}
}
if (PojoUtil.isEmpty(orcid)) {
member.getErrors().add(getMessage("manage_member.email_not_found"));
} else {
if (profileEntityManager.orcidExists(orcid)) {
MemberType groupType = profileEntityManager.getGroupType(orcid);
if (groupType != null) {
ProfileEntity memberProfile = profileDao.find(orcid);
member = Member.fromProfileEntity(memberProfile);
Set<Client> clients = clientManagerReadOnly.getClients(orcid);
List<org.orcid.pojo.ajaxForm.Client> clientsList = new ArrayList<org.orcid.pojo.ajaxForm.Client>();
clients.forEach(c -> {
clientsList.add(org.orcid.pojo.ajaxForm.Client.fromModelObject(c));
});
member.setClients(clientsList);
} else {
member.getErrors().add(getMessage("manage_members.orcid_is_not_a_member"));
}
} else {
member.getErrors().add(getMessage("manage_members.orcid_doesnt_exists"));
}
}
return member;
}
use of com.aliyun.dysmsapi20170525.Client in project ORCID-Source by ORCID.
the class JpaJaxbClientAdapterTest method toClientListTest.
@Test
public void toClientListTest() {
ClientDetailsEntity entity1 = getClientDetailsEntity();
List<ClientDetailsEntity> entities = new ArrayList<ClientDetailsEntity>();
entities.add(entity1);
Set<Client> clients = adapter.toClientList(entities);
assertEquals(1, clients.size());
for (Client client : clients) {
assertEquals(getClient(), client);
}
}
Aggregations