//
// Created by wangchangshui on 2020-02-06.
//

#ifndef BAIDU_BOS_CPPSDK_BOS_STS_RESPONSE_ASSUME_ROLE_RESPONSE_H
#define BAIDU_BOS_CPPSDK_BOS_STS_RESPONSE_ASSUME_ROLE_RESPONSE_H

#include <string>
#include <sstream>
#include <map>

#include "bcesdk/model/json_response.h"

BEGIN_CPPSDK_NAMESPACE

class AssumeRoleResponse : public JsonResponse {

public:
    AssumeRoleResponse() {}

    virtual ~AssumeRoleResponse() {}

    const std::string &access_key_id() const {
        return _accessKeyId;
    }

    const std::string &secret_access_key() const {
        return _secretAccessKey;
    }

    const std::string &expiration() const {
        return _expiration;
    }

    const std::string &create_time() const {
        return _createTime;
    }

    const std::string &session_token() const {
        return _sessionToken;
    }

    const std::string &user_id() const {
        return _userId;
    }

    const std::string &role_id() const {
        return _roleId;
    }
    virtual int deserialize(Json::Value &root);

private:
    std::string _expiration;
    std::string _accessKeyId;
    std::string _secretAccessKey;
    std::string _createTime;
    std::string _sessionToken;
    std::string _userId;
    std::string _roleId;
};

END_CPPSDK_NAMESPACE
#endif //CPPSDK_ASSUME_ROLE_RESPONSE_H
