Microsoft Information Protection SDK - C++ 1.17
API Reference Documentation for C++
Loading...
Searching...
No Matches
document_state.h
Go to the documentation of this file.
1#ifndef UPE_CORE_API_DOCUMENT_STATE_H_
2#define UPE_CORE_API_DOCUMENT_STATE_H_
3
4#include <chrono>
5#include <map>
6#include <memory>
7#include <utility>
8#include <vector>
9
10#include "mip/common_types.h"
11#include "mip/mip_namespace.h"
17
18MIP_NAMESPACE_BEGIN
19
21public:
31 virtual std::string GetContentIdentifier() const = 0;
32
38 virtual DataState GetDataState() const { return DataState::USE; };
39
46 virtual std::vector<MetadataEntry> GetContentMetadata(
47 const std::vector<std::string>& names, const std::vector<std::string>& namePrefixes) const = 0;
48
54 virtual std::shared_ptr<ProtectionDescriptor> GetProtectionDescriptor() const = 0;
55
61 virtual std::string GetContentFormat() const = 0;
62
73
81 virtual std::shared_ptr<ClassificationResults> GetClassificationResults(
82 const std::vector<std::shared_ptr<ClassificationRequest>>& /*classificationIds*/) const {
83 return nullptr;
84 }
85
97 virtual std::map<std::string, std::string> GetAuditMetadata() const { return std::map<std::string, std::string>(); }
98
104 virtual std::chrono::time_point<std::chrono::system_clock> GetLastModifiedTime() const { return std::chrono::time_point<std::chrono::system_clock>(); };
105
107 virtual ~DocumentState() {}
108
109protected:
110 DocumentState() {}
112};
113
114MIP_NAMESPACE_END
115#endif // UPE_CORE_API_DOCUMENT_STATE_H_
Definition document_state.h:20
virtual DataState GetDataState() const
Gets the state of the content while the application is interacting with it.
Definition document_state.h:38
virtual std::chrono::time_point< std::chrono::system_clock > GetLastModifiedTime() const
Return a time point to the last time the document was modified.
Definition document_state.h:104
virtual std::shared_ptr< ProtectionDescriptor > GetProtectionDescriptor() const =0
Get the Protection Descriptor.
virtual std::vector< MetadataEntry > GetContentMetadata(const std::vector< std::string > &names, const std::vector< std::string > &namePrefixes) const =0
Get the meta-data items from the content.
virtual MetadataVersion GetContentMetadataVersion() const
Gets the highest metadata version supported by the application for the tenant.
Definition document_state.h:70
virtual std::string GetContentFormat() const =0
Gets the content format.
virtual std::shared_ptr< ClassificationResults > GetClassificationResults(const std::vector< std::shared_ptr< ClassificationRequest > > &) const
Return a map of classification results.
Definition document_state.h:81
virtual std::map< std::string, std::string > GetAuditMetadata() const
Return a map of application specific audit key-value pairs.
Definition document_state.h:97
virtual std::string GetContentIdentifier() const =0
Gets the content description that describes the document. example for a file: [path\filename] example...
Interface for a MetadataVersion. MetadataVersion determines which metadata is active and how it is pr...
Definition metadata_version.h:73
This file contains the ClassificationRequest class.
This file contains the ClassificationResult class.
A file Containing the common types used by the upe, file and protection modules.
DataState
Defines what state of the data is the application acting upon.
Definition common_types.h:94
This file contains the MetadataEntry class.
A file containing the MetadataVersion class and the MetadataVersionFormat enumerator.
MIP namespace macros.
Defines ProtectionDescriptor interface.