Program Listing for File AuthEmailService.h
↰ Return to documentation for file (axr.sdk/services/AuthEmailService.h
)
// Copyright (C) AcceleratXR, Inc. All rights reserved.
//
// Author: Jean-Philippe Steinmetz <info@acceleratxr.com>
#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 AuthEmailService : public ServiceBase<AuthToken> {
public:
AuthEmailService(std::shared_ptr<Configuration> config, std::shared_ptr<net::IApiClient> apiClient)
: ServiceBase(config, apiClient)
{}
~AuthEmailService() {}
static const utility::char_t* ClassName()
{
return _XPLATSTR("axr::sdk::services::AuthEmailService");
}
pplx::task<std::shared_ptr<AuthToken>> Authenticate(const utility::char_t* email, const utility::char_t* code);
pplx::task<std::shared_ptr<AuthToken>> Authenticate(const utility::string_t& email, const utility::string_t& code);
pplx::task<void> SendCode(const utility::char_t* email);
pplx::task<void> SendCode(const utility::string_t& email);
};
} // namespace services
} // namespace axr
} // namespace sdk