use of org.asynchttpclient.DefaultAsyncHttpClient in project scribejava by scribejava.
the class VkontakteExternalHttpExample method main.
public static void main(String... args) throws IOException, InterruptedException, ExecutionException {
// Replace these with your client id and secret
final String clientId = "your client id";
final String clientSecret = "your client secret";
//create any http client externally
final DefaultAsyncHttpClientConfig httpClientConfig = new DefaultAsyncHttpClientConfig.Builder().setMaxConnections(5).setRequestTimeout(10_000).setPooledConnectionIdleTimeout(1_000).setReadTimeout(1_000).build();
//wrap it
try (DefaultAsyncHttpClient ahcHttpClient = new DefaultAsyncHttpClient(httpClientConfig)) {
//wrap it
final AhcHttpClient wrappedAHCHttpClient = new AhcHttpClient(ahcHttpClient);
final OAuth20Service service = new ServiceBuilder().httpClient(wrappedAHCHttpClient).apiKey(clientId).apiSecret(clientSecret).scope(// replace with desired scope
"wall,offline").callback("http://your.site.com/callback").build(VkontakteApi.instance());
final Scanner in = new Scanner(System.in);
System.out.println("=== " + NETWORK_NAME + "'s OAuth Workflow ===");
System.out.println();
// Obtain the Authorization URL
System.out.println("Fetching the Authorization URL...");
final String authorizationUrl = service.getAuthorizationUrl();
System.out.println("Got the Authorization URL!");
System.out.println("Now go and authorize ScribeJava here:");
System.out.println(authorizationUrl);
System.out.println("And paste the authorization code here");
System.out.print(">>");
final String code = in.nextLine();
System.out.println();
// Trade the Request Token and Verfier for the Access Token
System.out.println("Trading the Request Token for an Access Token...");
final OAuth2AccessToken accessToken = service.getAccessToken(code);
System.out.println("Got the Access Token!");
System.out.println("(if your curious it looks like this: " + accessToken + ", 'rawResponse'='" + accessToken.getRawResponse() + "')");
System.out.println();
// Now let's go and ask for a protected resource!
System.out.println("Now we're going to access a protected resource...");
final OAuthRequest request = new OAuthRequest(Verb.GET, PROTECTED_RESOURCE_URL);
service.signRequest(accessToken, request);
final Response response = service.execute(request);
System.out.println("Got it! Lets see what we found...");
System.out.println();
System.out.println(response.getCode());
System.out.println(response.getBody());
System.out.println();
System.out.println("Thats it man! Go and build something awesome with ScribeJava! :)");
}
}
use of org.asynchttpclient.DefaultAsyncHttpClient in project camel by apache.
the class WebsocketProducerRouteExampleTest method testWSHttpCall.
@Test
public void testWSHttpCall() throws Exception {
AsyncHttpClient c = new DefaultAsyncHttpClient();
WebSocket websocket = c.prepareGet("ws://localhost:" + port + "/shop").execute(new WebSocketUpgradeHandler.Builder().addWebSocketListener(new WebSocketTextListener() {
@Override
public void onMessage(String message) {
received.add(message);
log.info("received --> " + message);
latch.countDown();
}
@Override
public void onOpen(WebSocket websocket) {
}
@Override
public void onClose(WebSocket websocket) {
}
@Override
public void onError(Throwable t) {
t.printStackTrace();
}
}).build()).get();
// Send message to the direct endpoint
producer.sendBodyAndHeader("Beer on stock at Apache Mall", WebsocketConstants.SEND_TO_ALL, "true");
assertTrue(latch.await(10, TimeUnit.SECONDS));
assertEquals(1, received.size());
Object r = received.get(0);
assertTrue(r instanceof String);
assertEquals("Beer on stock at Apache Mall", r);
websocket.close();
c.close();
}
use of org.asynchttpclient.DefaultAsyncHttpClient in project camel by apache.
the class WebsocketProducerRouteExampleTest method testWSBytesHttpCall.
@Test
public void testWSBytesHttpCall() throws Exception {
AsyncHttpClient c = new DefaultAsyncHttpClient();
WebSocket websocket = c.prepareGet("ws://localhost:" + port + "/shop").execute(new WebSocketUpgradeHandler.Builder().addWebSocketListener(new DefaultWebSocketListener() {
@Override
public void onMessage(byte[] message) {
received.add(message);
log.info("received --> " + Arrays.toString(message));
latch.countDown();
}
@Override
public void onOpen(WebSocket websocket) {
}
@Override
public void onClose(WebSocket websocket) {
}
@Override
public void onError(Throwable t) {
t.printStackTrace();
}
}).build()).get();
// Send message to the direct endpoint
byte[] testmessage = "Beer on stock at Apache Mall".getBytes("utf-8");
producer.sendBodyAndHeader(testmessage, WebsocketConstants.SEND_TO_ALL, "true");
assertTrue(latch.await(10, TimeUnit.SECONDS));
assertEquals(1, received.size());
Object r = received.get(0);
assertTrue(r instanceof byte[]);
assertArrayEquals(testmessage, (byte[]) r);
websocket.close();
c.close();
}
use of org.asynchttpclient.DefaultAsyncHttpClient in project camel by apache.
the class WebsocketSSLContextInUriRouteExampleTest method createAsyncHttpSSLClient.
protected AsyncHttpClient createAsyncHttpSSLClient() throws IOException, GeneralSecurityException {
AsyncHttpClient c;
AsyncHttpClientConfig config;
DefaultAsyncHttpClientConfig.Builder builder = new DefaultAsyncHttpClientConfig.Builder();
SSLContext sslContext = new SSLContextParameters().createSSLContext(context());
JdkSslContext ssl = new JdkSslContext(sslContext, true, ClientAuth.REQUIRE);
builder.setSslContext(ssl);
builder.setAcceptAnyCertificate(true);
config = builder.build();
c = new DefaultAsyncHttpClient(config);
return c;
}
use of org.asynchttpclient.DefaultAsyncHttpClient in project camel by apache.
the class WebsocketSSLRouteExampleTest method createAsyncHttpSSLClient.
protected AsyncHttpClient createAsyncHttpSSLClient() throws IOException, GeneralSecurityException {
AsyncHttpClient c;
AsyncHttpClientConfig config;
DefaultAsyncHttpClientConfig.Builder builder = new DefaultAsyncHttpClientConfig.Builder();
SSLContext sslContext = new SSLContextParameters().createSSLContext(context());
JdkSslContext ssl = new JdkSslContext(sslContext, true, ClientAuth.REQUIRE);
builder.setSslContext(ssl);
builder.setAcceptAnyCertificate(true);
config = builder.build();
c = new DefaultAsyncHttpClient(config);
return c;
}
Aggregations