RMS SDK for C++  0.2.1
A client library for using Microsoft RMS from Linux.
TemplateDescriptor.h
1 /*
2  * ======================================================================
3  * Copyright (c) Microsoft Open Technologies, Inc. All rights reserved.
4  * Licensed under the MIT License.
5  * See LICENSE.md in the project root for license information.
6  * ======================================================================
7  */
8 
9 #ifndef _RMS_LIB_TEMPLATEDESCRIPTOR_H_
10 #define _RMS_LIB_TEMPLATEDESCRIPTOR_H_
11 
12 #include "IAuthenticationCallback.h"
13 #include "ModernAPIExport.h"
14 
15 namespace rmscore {
16 namespace core {
17 class ProtectionPolicy;
18 }
19 namespace modernapi {
23 class DLL_PUBLIC_RMS TemplateDescriptor {
24 public:
25 
29  std::string TemplateId() const {
30  return m_id;
31  }
32 
36  std::string Name() const {
37  return m_name;
38  }
39 
43  std::string Description() const {
44  return m_description;
45  }
46 
59  static std::vector<TemplateDescriptor>GetTemplateList(
60  const std::string & userId,
61  IAuthenticationCallback& authenticationCallback);
62 
63 
64  TemplateDescriptor(const std::string& id,
65  const std::string& name,
66  const std::string& description);
67  TemplateDescriptor(std::shared_ptr<core::ProtectionPolicy>policy);
68 
69 private:
70 
71  std::string m_id;
72  std::string m_name;
73  std::string m_description;
74 };
75 } // namespace modernapi
76 } // namespace rmscore
77 
78 #endif // _RMS_LIB_TEMPLATEDESCRIPTOR_H_
std::string Description() const
Gets the description for the policy template on the TemplateDescriptor.
Definition: TemplateDescriptor.h:43
std::string Name() const
Gets the name of the policy template.
Definition: TemplateDescriptor.h:36
Definition: AuthenticationCallbackImpl.h:16
std::string TemplateId() const
Gets the policy template ID.
Definition: TemplateDescriptor.h:29
Implement this interface to provide an approach for getting an OAuth access token.
Definition: IAuthenticationCallback.h:25
Template information.
Definition: TemplateDescriptor.h:23