Foxit PDF SDK

Public Member Functions | Public Attributes | List of all members
foxit::pdf::RMSEncryptData Class Reference

## Public Member Functions
| RMSEncryptData (bool is_encrypt_metadata, const char *publish_license, const StringArray &server_eul_list, float irm_version=1.0)
| Constructor, with parameters. More...
| RMSEncryptData ()
| Constructor.
| RMSEncryptData (const RMSEncryptData &other)
| Constructor, with another RMS encrypt data object. More...
bool | operator != (const RMSEncryptData &other) const
| Not equal operator. More...
RMSEncryptData & | operator= (const RMSEncryptData &other)
| Assign operator. More...
bool | operator== (const RMSEncryptData &other) const
| Equal operator. More...
void | Set (bool is_encrypt_metadata, const char *publish_license, const StringArray &server_eul_list, float irm_version=1.0)
| Set value. More...

## Public Attributes
float | irm_version
| Microsoft IRM version. It should be above 1. If input version is below 1, Foxit PDF SDK will use 1 as version by default. Default value: 1.0.
bool | is_encrypt_metadata
| A boolean value to decide whether to encrypt metadata or not. true means to encrypt metadata, and false means not to encrypt metadata.
String | publish_license
| The Encoded Publishing License issued from server to the Content publisher, in ASCII encoding. This should not be an empty string. More...
StringArray | server_eul_list
| A string array that contains pairs of strings to represent content of a dictionary object which is encoded Server EUL. More...

## Detailed Description

This class represents some data used for class RMSSecurityHandler.

## Constructor & Destructor Documentation

## ◆ RMSEncryptData() [1/2]

foxit::pdf::RMSEncryptData::RMSEncryptData | ( | bool | is_encrypt_metadata,
|  | const char * | publish_license,
|  | const StringArray & | server_eul_list,
|  | float | irm_version = `1.0`
| ) |  |
| inline

Constructor, with parameters.

Parameters

  [in] | is_encrypt_metadata | true means to encrypt metadata, and false means not to encrypt metadata.
  [in] | publish_license | The Encoded Publishing License issued from server to the Content publisher, in ASCII encoding. This should not be an empty string. This field contains the publishing license from Microsoft IRM services or a comparable IRM service. The original data of Publishing License should be compressed by Flate compression algorithm at first, and then encoded by Base-64 Encryption algorithm. Foxit PDF SDK offers functions in class common::Codec for Flate compression algorithm and Base-64 Encryption algorithm. Please refer to class common::Codec if necessary.
  [in] | server_eul_list | In this string array, the count of strings should be multiply of 2. 2 strings are in a pair, and each pair represents content of a dictionary object which is encoded Server EUL. For each pair, the first string is ServerID, and the second one is ServerEUL. The original data of Server ID and Server EUL should be compressed by Flate compression algorithm at first, and then encoded by Base-64 Encryption algorithm. Foxit PDF SDK offers functions in class common::Codec for Flate compression algorithm and Base-64 Encryption algorithm. Please refer to class common::Codec if necessary. An empty array means not use such information.
  [in] | irm_version | Microsoft IRM version. It should be above 1. If input version is below 1, Foxit PDF SDK will use 1 as version by default. Default value: 1.0.

## ◆ RMSEncryptData() [2/2]

foxit::pdf::RMSEncryptData::RMSEncryptData | ( | const RMSEncryptData & | other | ) |
| inline

Constructor, with another RMS encrypt data object.

Parameters

  [in] | other | Another RMS encrypt data object.

## Member Function Documentation

## ◆ operator !=()

bool foxit::pdf::RMSEncryptData::operator != | ( | const RMSEncryptData & | other | ) | const
| inline

Not equal operator.

Parameters

  [in] | other | Another RMS encrypt data object. This function will check if current object is not equal to this one.

Returns
  true means not equal, while false means equal.

## ◆ operator=()

RMSEncryptData& foxit::pdf::RMSEncryptData::operator= | ( | const RMSEncryptData & | other | ) |
| inline

Assign operator.

Parameters

  [in] | other | Another RMS encrypt data object, whose value would be assigned to current object.

Returns
  Reference to current object itself.

## ◆ operator==()

bool foxit::pdf::RMSEncryptData::operator== | ( | const RMSEncryptData & | other | ) | const
| inline

Equal operator.

Parameters

  [in] | other | Another RMS encrypt data object. This function will check if current object is equal to this one.

Returns
  true means equal, while false means not equal.

## ◆ Set()

void foxit::pdf::RMSEncryptData::Set | ( | bool | is_encrypt_metadata,
|  | const char * | publish_license,
|  | const StringArray & | server_eul_list,
|  | float | irm_version = `1.0`
| ) |  |
| inline

Set value.

Parameters

  [in] | is_encrypt_metadata | true means to encrypt metadata, and false means not to encrypt metadata.
  [in] | publish_license | The Encoded Publishing License issued from server to the Content publisher, in ASCII encoding. This should not be an empty string. This field contains the publishing license from Microsoft IRM services or a comparable IRM service. The original data of Publishing License should be compressed by Flate compression algorithm at first, and then encoded by Base-64 Encryption algorithm. Foxit PDF SDK offers functions in class common::Codec for Flate compression algorithm and Base-64 Encryption algorithm. Please refer to class common::Codec if necessary.
  [in] | server_eul_list | In this string array, the count of strings should be multiply of 2. 2 strings are in a pair, and each pair represents content of a dictionary object which is encoded Server EUL. For each pair, the first string is ServerID, and the second one is ServerEUL. The original data of Server ID and Server EUL should be compressed by Flate compression algorithm at first, and then encoded by Base-64 Encryption algorithm. Foxit PDF SDK offers functions in class common::Codec for Flate compression algorithm and Base-64 Encryption algorithm. Please refer to class common::Codec if necessary. An empty array means not use such information.
  [in] | irm_version | Microsoft IRM version. It should be above 1. If input version is below 1, Foxit PDF SDK will use 1 as version by default. Default value: 1.0.

Returns
  None.

## Member Data Documentation

## ◆ publish_license

String foxit::pdf::RMSEncryptData::publish_license

The Encoded Publishing License issued from server to the Content publisher, in ASCII encoding. This should not be an empty string.

This field contains the publishing license from Microsoft IRM services or a comparable IRM service. The original data of Publishing License should be compressed by Flate compression algorithm at first, and then encoded by Base-64 Encryption algorithm. Foxit PDF SDK offers functions in class common::Codec for Flate compression algorithm and Base-64 Encryption algorithm. Please refer to class common::Codec if necessary.

## ◆ server_eul_list

StringArray foxit::pdf::RMSEncryptData::server_eul_list

A string array that contains pairs of strings to represent content of a dictionary object which is encoded Server EUL.

In this string array, the count of strings should be multiply of 2. 2 strings are in a pair, and each pair represents content of a dictionary object which is encoded Server EUL.
For each pair, the first string is ServerID, and the second one is ServerEUL. The original data of Server ID and Server EUL should be compressed by Flate compression algorithm at first, and then encoded by Base-64 Encryption algorithm. Foxit PDF SDK offers functions in class common::Codec for Flate compression algorithm and Base-64 Encryption algorithm.Please refer to class common::Codec if necessary.
An empty array means not use such information.