Package com.azwul.api.service.impl

Source Code of com.azwul.api.service.impl.AzRmailServiceImpl

/**
*
*/
package com.azwul.api.service.impl;

import java.util.HashMap;
import java.util.Map;

import com.azwul.api.model.Credentials;
import com.azwul.api.model.SessionToken;
import com.azwul.api.model.result.HttpResult;
import com.azwul.api.model.result.LoginResult;
import com.azwul.api.model.result.SignatureResult;
import com.azwul.api.model.tx.AzRmailTransaction;
import com.azwul.api.service.AzRmailService;
import com.azwul.api.util.ResponseUtil;

/**
* @author theo
*
*/
public class AzRmailServiceImpl extends AzServiceImpl implements AzRmailService {

  public SignatureResult sendRmail(AzRmailTransaction azRmailTransaction,
      Credentials credentials) {
    return sendRmail(azRmailTransaction, credentials, null, false);
  }

  public SignatureResult sendRmail(AzRmailTransaction azRmailTransaction,
      SessionToken sessionToken) {
    return sendRmail(azRmailTransaction, null, sessionToken, true);
  }

  protected SignatureResult sendRmail(AzRmailTransaction azRmailTransaction,
      Credentials credentials, SessionToken sessionToken,
      boolean keepAlive) {

    if (credentials != null) {
      LoginResult loginResult = login(credentials);
      sessionToken = loginResult.getHttpResult().getSessionToken();

    }

    Map<String, String> params = new HashMap<String, String>();
    params.put("recipientEmail", azRmailTransaction.getRecipientEmail());
    params.put("resourceName", azRmailTransaction.getDocumentTitle());
    params.put("recipientCommonName",
        azRmailTransaction.getRecipientCommonName());

    if (azRmailTransaction.getInternalFolderReference() != null
        && !"".equals(azRmailTransaction.getInternalFolderReference())) {
      params.put("internalFolderReference",
          azRmailTransaction.getInternalFolderReference());
    }
    if (azRmailTransaction.getFileName() != null
        && !"".equals(azRmailTransaction.getFileName())) {
      params.put("fileName", azRmailTransaction.getFileName());
    }

    HttpResult httpResult = httpHelper.doPostMultipart("/basic/signRmail",
        httpConfiguration, sessionToken, azRmailTransaction.getFile(),
        "file", params);

    String resSign = ResponseUtil.getBasicResponse(httpResult);

    SignatureResult result = new SignatureResult();
    result.setHttpResult(httpResult);
    result.setBasicResponse(resSign);

    String resSignSplit[] = resSign.split("\\s");

    if (resSignSplit[1].equals("OK")) {
      result.setOk(true);
      result.setSignatureId(resSignSplit[3]);
    }

    if (!keepAlive) {
      logout(sessionToken);
    }

    return result;
  }

}
TOP

Related Classes of com.azwul.api.service.impl.AzRmailServiceImpl

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.