Program Listing for File AuthTotpService.h

Return to documentation for file (axr.sdk/services/AuthTotpService.h)

// Copyright (C) AcceleratXR, Inc. All rights reserved.
#pragma once

#include "axr.sdk/net/IApiClient.h"
#include "axr.sdk/ServiceBase.h"
#include "axr.sdk/utils/StringUtils.h"
#include "axr.sdk/models/AuthToken.h"
#include "axr.sdk/models/Count.h"

#include <cpprest/details/basic_types.h>
#include <map>
#include <memory>
#include <vector>

namespace axr {
namespace sdk {
namespace services {

using namespace axr::sdk::models;

class AuthTotpService : public ServiceBase<AuthToken> {
public:
    AuthTotpService(std::shared_ptr<Configuration> config, std::shared_ptr<net::IApiClient> apiClient)
        : ServiceBase(config, apiClient)
    {}

    ~AuthTotpService() {}

    static const utility::char_t* ClassName()
    {
        return _XPLATSTR("axr::sdk::services::AuthTotpService");
    }

    pplx::task<std::shared_ptr<AuthToken>> Authenticate(const utility::string_t& userUid, const utility::string_t& token, const utility::string_t& totp);
};

} // namespace services
} // namespace axr
} // namespace sdk