Package com.youtube.util

Source Code of com.youtube.util.HttpClient

package com.youtube.util;

import javax.net.ssl.HostnameVerifier;
import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLSession;

import com.sun.jersey.api.client.Client;
import com.sun.jersey.api.client.config.ClientConfig;
import com.sun.jersey.api.client.config.DefaultClientConfig;
import com.sun.jersey.client.urlconnection.HTTPSProperties;

public class HttpClient {

  private static Client httpClient = null;
 
  /**
   * http client that does not use SSL
   * This is only a example, you may need to change it to fix your needs.
   *
   * @return
   * @throws Exception
   */
  @SuppressWarnings("unused") //not needed, just used to get rid of annoying warning in IDE
  private static Client getHttpClient() throws Exception {
   
    try {
      /*
       * to increase the speed of api to api communication, we will
       * be holding the Client as a static variable.
       */
      if(httpClient != null) {
        return httpClient;
      }
      ClientConfig config = new DefaultClientConfig();
      httpClient = Client.create(config);
      return httpClient;
    }
    catch(Exception e) {
      e.printStackTrace();
      throw e;
    }
  }
 
  /**
   * This method will create a http client with ssl
   * This is only a example, you may need to change it to fix your needs.
   *
   * @return - http client
   * @throws Exception
   */
  @SuppressWarnings("unused") //not needed, just used to get rid of annoying warning in IDE
  private static Client getSslHttpClient() throws Exception {
   
    try {
      /*
       * to increase the speed of api to api communication, we will
       * be holding the Client as a static variable.
       */
      if(httpClient != null) {
        return httpClient;
      }
     
      ClientConfig config = new DefaultClientConfig();
      SSLContext ctx = SSLContext.getDefault();
     
        config.getProperties().put(HTTPSProperties.PROPERTY_HTTPS_PROPERTIES, new HTTPSProperties(new HostnameVerifier() {
              @Override
              public boolean verify(String arg0, SSLSession arg1) {
                  return true;
              }}, ctx));
      Client http_client = Client.create(config);
     
      httpClient = http_client;
      return httpClient;
    }
    catch(Exception e) {
      e.printStackTrace();
      throw e;
    }
  }
 
}
TOP

Related Classes of com.youtube.util.HttpClient

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.