protected void doInit() {
    if (Validator.isNull(_clientId)) {
      _clientId = PropsValues.MICROSOFT_TRANSLATOR_CLIENT_ID;
      _clientSecret = PropsValues.MICROSOFT_TRANSLATOR_CLIENT_SECRET;
    }

    try {
      Http.Options options = new Http.Options();

      StringBundler sb = new StringBundler(5);

      sb.append("grant_type=client_credentials&client_id=");
      sb.append(HttpUtil.encodeURL(_clientId));
      sb.append("&client_secret=");
      sb.append(HttpUtil.encodeURL(_clientSecret));
      sb.append("&scope=http://api.microsofttranslator.com");

      options.setBody(
          sb.toString(), ContentTypes.APPLICATION_X_WWW_FORM_URLENCODED, StringPool.UTF8);

      options.setLocation(_URL);

      options.setPost(true);

      String jsonString = HttpUtil.URLtoString(options);

      JSONObject jsonObject = JSONFactoryUtil.createJSONObject(jsonString);

      _error = jsonObject.getString("error_description");

      if (_error != null) {
        if (_log.isInfoEnabled()) {
          _log.info("Unable to initialize access token: " + _error);
        }
      }

      _accessToken = jsonObject.getString("access_token");

      if (_accessToken != null) {
        _log.info("Access token " + _accessToken);
      }

      _initTime = System.currentTimeMillis();
    } catch (Exception e) {
      if (_log.isInfoEnabled()) {
        _log.info("Unable to initialize authentication token", e);
      }
    }
  }
Ejemplo n.º 2
0
  protected Response doExecuteMethod(String url, String methodName, Object[] arguments)
      throws Exception {

    if (_log.isDebugEnabled()) {
      StringBundler sb = new StringBundler();

      sb.append("XML-RPC invoking ");
      sb.append(methodName);
      sb.append(" ");

      if (arguments != null) {
        for (int i = 0; i < arguments.length; i++) {
          sb.append(arguments[i]);

          if (i < (arguments.length - 1)) {
            sb.append(", ");
          }
        }
      }

      _log.debug(sb.toString());
    }

    String requestXML = XmlRpcParser.buildMethod(methodName, arguments);

    Http.Options options = new Http.Options();

    if (_HTTP_HEADER_VERSION_VERBOSITY_DEFAULT) {
    } else if (_HTTP_HEADER_VERSION_VERBOSITY_PARTIAL) {
      options.addHeader(HttpHeaders.USER_AGENT, ReleaseInfo.getName());
    } else {
      options.addHeader(HttpHeaders.USER_AGENT, ReleaseInfo.getServerInfo());
    }

    options.setBody(requestXML, ContentTypes.TEXT_XML, StringPool.UTF8);
    options.setLocation(url);
    options.setPost(true);

    String responseXML = HttpUtil.URLtoString(options);

    return XmlRpcParser.parseResponse(responseXML);
  }
Ejemplo n.º 3
0
 public void setBody(Http.Body body) {
   setBody(body.getContent(), body.getContentType(), body.getCharset());
 }