Aspose::Email::Mapi::PropertyDescriptor Class Referenceabstract

Class contains property description information. More...

Inherits IEquatable< System::SharedPtr< PropertyDescriptor > >.

Inherited by Aspose::Email::Mapi::PidLidPropertyDescriptor, Aspose::Email::Mapi::PidNamePropertyDescriptor, and Aspose::Email::Mapi::PidTagPropertyDescriptor.

Public Member Functions

PropertyDataType get_DataType ()
 The property value type, as described in [MS-OXCDATA], that specifies the type of values allowed for the property. More...
 
bool get_MultipleValuesDataType ()
 Indicates if data type contains of multiple values More...
 
System::String get_CanonicalName () const
 The name used to refer to the property in the documentation. The prefix of the canonical name identifies the basic characteristics of a property to the implementer. The canonical naming structure uses three categories that are denoted by the following prefixes to the canonical property name: More...
 
System::String get_Name () const
 Gets string that, identifies a property. More...
 
 PropertyDescriptor (PropertyDataType type)
 Initializes a new instance of the PropertyDescriptor class More...
 
 PropertyDescriptor (System::String canonicalName, PropertyDataType type)
 Initializes a new instance of the PropertyDescriptor class More...
 
 PropertyDescriptor (System::String canonicalName, System::String name, PropertyDataType type)
 Initializes a new instance of the PropertyDescriptor class More...
 
bool Equals (System::SharedPtr< PropertyDescriptor > other) override=0
 Indicates whether the current object is equal to another object of the same type. More...
 
System::ArrayPtr< uint8_t > ToBytes (System::SharedPtr< System::Object > value)
 Converts value to binary data More...
 
System::ArrayPtr< uint8_t > ToBytes (System::SharedPtr< System::Object > value, System::SharedPtr< System::Globalization::DateTimeFormatInfo > dateTimeFormatInfo)
 Converts value to binary data More...
 

Static Public Member Functions

static bool get_Use8BitStringAsUnicode ()
 Specifies if PropertyDataType.String8 has to be interpreted as PropertyDataType.String More...
 
static void set_Use8BitStringAsUnicode (bool value)
 Specifies if PropertyDataType.String8 has to be interpreted as PropertyDataType.String More...
 
static System::SharedPtr< PropertyDescriptorParse (System::String data)
 Initializes a new instance of the PropertyDescriptor class More...
 
static System::SharedPtr< PidTagPropertyDescriptorGetInstance (int32_t id, PropertyDataType dataType)
 Retrieves PidTagPropertyDescriptor object More...
 
static System::SharedPtr< PidTagPropertyDescriptorGetInstance (int64_t tag)
 Retrieves PidTagPropertyDescriptor object More...
 
static System::SharedPtr< PidLidPropertyDescriptorGetInstance (int64_t lid, PropertyDataType dataType, System::Guid propertySet)
 Retrieves PidLidPropertyDescriptor object More...
 
static System::SharedPtr< PidNamePropertyDescriptorGetInstance (System::String name, PropertyDataType dataType, System::Guid propertySet)
 Retrieves PidNamePropertyDescriptor object More...
 
static System::SharedPtr< PropertyDescriptorGetInstance (System::SharedPtr< MapiProperty > property)
 Retrieves PropertyDescriptor object from MAPI property More...
 
static void ThrowUnsupportedType (System::SharedPtr< System::Object > value)
 
static System::ArrayPtr< uint8_t > ToBytes (System::SharedPtr< PropertyDescriptor > pd, System::SharedPtr< System::Object > value, System::SharedPtr< System::Globalization::DateTimeFormatInfo > dateTimeFormatInfo)
 Converts value to binary data More...
 
static System::ArrayPtr< uint8_t > ToBytes (System::SharedPtr< PropertyDescriptor > pd, System::SharedPtr< System::Object > value)
 Converts value to binary data More...
 
static System::ArrayPtr< uint8_t > ToPtypInteger32 (int32_t val)
 
static System::ArrayPtr< uint8_t > ToPtypBinary (System::ArrayPtr< uint8_t > clearDataWithoutLength)
 
static System::ArrayPtr< uint8_t > ToMultipleBinaryFromObject (System::SharedPtr< System::Object > value)
 
static System::ArrayPtr< uint8_t > ToMultipleBinary (System::SharedPtr< System::Collections::Generic::IEnumerable< System::ArrayPtr< uint8_t >>> data)
 
static System::ArrayPtr< uint8_t > ToMultipleString (System::SharedPtr< System::Text::Encoding > encoding, System::SharedPtr< System::Object > value)
 
static System::ArrayPtr< uint8_t > ToMultipleString (System::SharedPtr< System::Text::Encoding > encoding, System::SharedPtr< System::Collections::Generic::IEnumerable< System::String >> sData)
 
static System::ArrayPtr< uint8_t > ToMultipleCurrency (System::SharedPtr< System::Collections::IEnumerable > mCur)
 
static System::ArrayPtr< uint8_t > ToMultipleFloating32 (System::SharedPtr< System::Collections::IEnumerable > value)
 
static System::ArrayPtr< uint8_t > ToMultipleFloating64 (System::SharedPtr< System::Collections::IEnumerable > value)
 
static System::ArrayPtr< uint8_t > ToMultipleInteger16 (System::SharedPtr< System::Collections::IEnumerable > value)
 
static System::ArrayPtr< uint8_t > ToMultipleInteger32 (System::SharedPtr< System::Collections::IEnumerable > value)
 
static System::ArrayPtr< uint8_t > ToMultipleInteger64 (System::SharedPtr< System::Collections::IEnumerable > value)
 
static System::ArrayPtr< uint8_t > ToMultipleBoolean (System::SharedPtr< System::Collections::IEnumerable > value)
 
static System::ArrayPtr< uint8_t > ToMultipleGuid (System::SharedPtr< System::Collections::IEnumerable > value)
 
static System::ArrayPtr< uint8_t > ToMultipleTime (System::SharedPtr< System::Globalization::DateTimeFormatInfo > dateTimeFormatInfo, System::SharedPtr< System::Collections::IEnumerable > value)
 
static System::ArrayPtr< uint8_t > ToMultipleFloatingTime (System::SharedPtr< System::Globalization::DateTimeFormatInfo > dateTimeFormatInfo, System::SharedPtr< System::Collections::IEnumerable > value)
 

Protected Member Functions

virtual ~PropertyDescriptor ()
 

Friends

bool operator== (System::SharedPtr< PropertyDescriptor > pd1, System::SharedPtr< PropertyDescriptor > pd2)
 Determines whether the specified System.Object is equal to the current System.Object. More...
 
bool operator!= (System::SharedPtr< PropertyDescriptor > pd1, System::SharedPtr< PropertyDescriptor > pd2)
 Determines whether the specified objects are not equal to each another. More...
 

Detailed Description

Class contains property description information.

Constructor & Destructor Documentation

◆ PropertyDescriptor() [1/3]

Aspose::Email::Mapi::PropertyDescriptor::PropertyDescriptor ( PropertyDataType  type)

Initializes a new instance of the PropertyDescriptor class

Parameters
typeThe property value type, as described in [MS-OXCDATA], that specifies the type of values allowed for the property.

◆ PropertyDescriptor() [2/3]

Aspose::Email::Mapi::PropertyDescriptor::PropertyDescriptor ( System::String  canonicalName,
PropertyDataType  type 
)

Initializes a new instance of the PropertyDescriptor class

Parameters
canonicalNameThe name used to refer to the property in the documentation.
typeThe property value type, as described in [MS-OXCDATA], that specifies the type of values allowed for the property.

◆ PropertyDescriptor() [3/3]

Aspose::Email::Mapi::PropertyDescriptor::PropertyDescriptor ( System::String  canonicalName,
System::String  name,
PropertyDataType  type 
)

Initializes a new instance of the PropertyDescriptor class

Parameters
canonicalNameThe name used to refer to the property in the documentation.
nameThe MAPI name used to refer to the property in the documentation.
typeThe property value type, as described in [MS-OXCDATA], that specifies the type of values allowed for the property.

◆ ~PropertyDescriptor()

virtual Aspose::Email::Mapi::PropertyDescriptor::~PropertyDescriptor ( )
protectedvirtual

Member Function Documentation

◆ Equals()

bool Aspose::Email::Mapi::PropertyDescriptor::Equals ( System::SharedPtr< PropertyDescriptor other)
overridepure virtual

Indicates whether the current object is equal to another object of the same type.

Parameters
otherAn object to compare with this object.
Returns
true if the current object is equal to the other parameter; otherwise, false.

Implemented in Aspose::Email::Mapi::PidTagPropertyDescriptor, Aspose::Email::Mapi::PidNamePropertyDescriptor, and Aspose::Email::Mapi::PidLidPropertyDescriptor.

◆ get_CanonicalName()

System::String Aspose::Email::Mapi::PropertyDescriptor::get_CanonicalName ( ) const

The name used to refer to the property in the documentation. The prefix of the canonical name identifies the basic characteristics of a property to the implementer. The canonical naming structure uses three categories that are denoted by the following prefixes to the canonical property name:

  • PidLid prefix: Properties identified by an unsigned 32-bit quantity along with a property set.
  • PidName prefix: Properties identified by a string name along with a property set.
  • PidTag prefix: Properties identified by an unsigned 16-bit quantity.

◆ get_DataType()

PropertyDataType Aspose::Email::Mapi::PropertyDescriptor::get_DataType ( )

The property value type, as described in [MS-OXCDATA], that specifies the type of values allowed for the property.

◆ get_MultipleValuesDataType()

bool Aspose::Email::Mapi::PropertyDescriptor::get_MultipleValuesDataType ( )

Indicates if data type contains of multiple values

◆ get_Name()

System::String Aspose::Email::Mapi::PropertyDescriptor::get_Name ( ) const

Gets string that, identifies a property.

◆ get_Use8BitStringAsUnicode()

static bool Aspose::Email::Mapi::PropertyDescriptor::get_Use8BitStringAsUnicode ( )
static

Specifies if PropertyDataType.String8 has to be interpreted as PropertyDataType.String

◆ GetInstance() [1/5]

static System::SharedPtr<PidTagPropertyDescriptor> Aspose::Email::Mapi::PropertyDescriptor::GetInstance ( int32_t  id,
PropertyDataType  dataType 
)
static

Retrieves PidTagPropertyDescriptor object

Parameters
idId of a property
dataTypeData type of a property
Returns
PidTagPropertyDescriptor object

◆ GetInstance() [2/5]

static System::SharedPtr<PidLidPropertyDescriptor> Aspose::Email::Mapi::PropertyDescriptor::GetInstance ( int64_t  lid,
PropertyDataType  dataType,
System::Guid  propertySet 
)
static

Retrieves PidLidPropertyDescriptor object

Parameters
lidLong id of a property
dataTypeData type of a property
propertySetPropertySet of a property
Returns
PidLidPropertyDescriptor object

◆ GetInstance() [3/5]

static System::SharedPtr<PidTagPropertyDescriptor> Aspose::Email::Mapi::PropertyDescriptor::GetInstance ( int64_t  tag)
static

Retrieves PidTagPropertyDescriptor object

Parameters
tagTag of a property
Returns
PidTagPropertyDescriptor object

◆ GetInstance() [4/5]

static System::SharedPtr<PropertyDescriptor> Aspose::Email::Mapi::PropertyDescriptor::GetInstance ( System::SharedPtr< MapiProperty property)
static

Retrieves PropertyDescriptor object from MAPI property

Parameters
propertyMapiProperty object

◆ GetInstance() [5/5]

static System::SharedPtr<PidNamePropertyDescriptor> Aspose::Email::Mapi::PropertyDescriptor::GetInstance ( System::String  name,
PropertyDataType  dataType,
System::Guid  propertySet 
)
static

Retrieves PidNamePropertyDescriptor object

Parameters
nameName of a property
dataTypeData type of a property
propertySetPropertySet of a property
Returns
PidNamePropertyDescriptor object

◆ Parse()

static System::SharedPtr<PropertyDescriptor> Aspose::Email::Mapi::PropertyDescriptor::Parse ( System::String  data)
static

Initializes a new instance of the PropertyDescriptor class

Parameters
dataA string that represents the property description.

◆ set_Use8BitStringAsUnicode()

static void Aspose::Email::Mapi::PropertyDescriptor::set_Use8BitStringAsUnicode ( bool  value)
static

Specifies if PropertyDataType.String8 has to be interpreted as PropertyDataType.String

◆ ThrowUnsupportedType()

static void Aspose::Email::Mapi::PropertyDescriptor::ThrowUnsupportedType ( System::SharedPtr< System::Object >  value)
static

◆ ToBytes() [1/4]

static System::ArrayPtr<uint8_t> Aspose::Email::Mapi::PropertyDescriptor::ToBytes ( System::SharedPtr< PropertyDescriptor pd,
System::SharedPtr< System::Object >  value 
)
static

Converts value to binary data

Parameters
pdThe property descriptor.
valueThe property data.

◆ ToBytes() [2/4]

static System::ArrayPtr<uint8_t> Aspose::Email::Mapi::PropertyDescriptor::ToBytes ( System::SharedPtr< PropertyDescriptor pd,
System::SharedPtr< System::Object >  value,
System::SharedPtr< System::Globalization::DateTimeFormatInfo >  dateTimeFormatInfo 
)
static

Converts value to binary data

[MS-OXMSG]:Specifies the .msg file format, which is used to represent individual email messages, appointments, contacts, tasks, and so on in the file system. https://docs.microsoft.com/en-us/openspecs/exchange_server_protocols/ms-oxmsg/b046868c-9fbf-41ae-9ffb-8de2bd4eec82 https://interoperability.blob.core.windows.net/files/MS-OXMSG/%5bMS-OXMSG%5d.pdf [MS-OXCDATA]: Specifies common data structures that are used in remote operations. https://docs.microsoft.com/en-us/openspecs/exchange_server_protocols/ms-oxcdata/1afa0cd9-b1a0-4520-b623-bf15030af5d8 https://interoperability.blob.core.windows.net/files/MS-OXCDATA/%5bMS-OXCDATA%5d-190319.pdf

Parameters
pdThe property descriptor.
valueThe property data.
dateTimeFormatInfoDateTime format provider.

◆ ToBytes() [3/4]

System::ArrayPtr<uint8_t> Aspose::Email::Mapi::PropertyDescriptor::ToBytes ( System::SharedPtr< System::Object >  value)

Converts value to binary data

Parameters
valueThe property data.

◆ ToBytes() [4/4]

System::ArrayPtr<uint8_t> Aspose::Email::Mapi::PropertyDescriptor::ToBytes ( System::SharedPtr< System::Object >  value,
System::SharedPtr< System::Globalization::DateTimeFormatInfo >  dateTimeFormatInfo 
)

Converts value to binary data

Parameters
valueThe property data.
dateTimeFormatInfoDateTime format provider.

◆ ToMultipleBinary()

static System::ArrayPtr<uint8_t> Aspose::Email::Mapi::PropertyDescriptor::ToMultipleBinary ( System::SharedPtr< System::Collections::Generic::IEnumerable< System::ArrayPtr< uint8_t >>>  data)
static

◆ ToMultipleBinaryFromObject()

static System::ArrayPtr<uint8_t> Aspose::Email::Mapi::PropertyDescriptor::ToMultipleBinaryFromObject ( System::SharedPtr< System::Object >  value)
static

◆ ToMultipleBoolean()

static System::ArrayPtr<uint8_t> Aspose::Email::Mapi::PropertyDescriptor::ToMultipleBoolean ( System::SharedPtr< System::Collections::IEnumerable >  value)
static

◆ ToMultipleCurrency()

static System::ArrayPtr<uint8_t> Aspose::Email::Mapi::PropertyDescriptor::ToMultipleCurrency ( System::SharedPtr< System::Collections::IEnumerable >  mCur)
static

◆ ToMultipleFloating32()

static System::ArrayPtr<uint8_t> Aspose::Email::Mapi::PropertyDescriptor::ToMultipleFloating32 ( System::SharedPtr< System::Collections::IEnumerable >  value)
static

◆ ToMultipleFloating64()

static System::ArrayPtr<uint8_t> Aspose::Email::Mapi::PropertyDescriptor::ToMultipleFloating64 ( System::SharedPtr< System::Collections::IEnumerable >  value)
static

◆ ToMultipleFloatingTime()

static System::ArrayPtr<uint8_t> Aspose::Email::Mapi::PropertyDescriptor::ToMultipleFloatingTime ( System::SharedPtr< System::Globalization::DateTimeFormatInfo >  dateTimeFormatInfo,
System::SharedPtr< System::Collections::IEnumerable >  value 
)
static

◆ ToMultipleGuid()

static System::ArrayPtr<uint8_t> Aspose::Email::Mapi::PropertyDescriptor::ToMultipleGuid ( System::SharedPtr< System::Collections::IEnumerable >  value)
static

◆ ToMultipleInteger16()

static System::ArrayPtr<uint8_t> Aspose::Email::Mapi::PropertyDescriptor::ToMultipleInteger16 ( System::SharedPtr< System::Collections::IEnumerable >  value)
static

◆ ToMultipleInteger32()

static System::ArrayPtr<uint8_t> Aspose::Email::Mapi::PropertyDescriptor::ToMultipleInteger32 ( System::SharedPtr< System::Collections::IEnumerable >  value)
static

◆ ToMultipleInteger64()

static System::ArrayPtr<uint8_t> Aspose::Email::Mapi::PropertyDescriptor::ToMultipleInteger64 ( System::SharedPtr< System::Collections::IEnumerable >  value)
static

◆ ToMultipleString() [1/2]

static System::ArrayPtr<uint8_t> Aspose::Email::Mapi::PropertyDescriptor::ToMultipleString ( System::SharedPtr< System::Text::Encoding >  encoding,
System::SharedPtr< System::Collections::Generic::IEnumerable< System::String >>  sData 
)
static

◆ ToMultipleString() [2/2]

static System::ArrayPtr<uint8_t> Aspose::Email::Mapi::PropertyDescriptor::ToMultipleString ( System::SharedPtr< System::Text::Encoding >  encoding,
System::SharedPtr< System::Object >  value 
)
static

◆ ToMultipleTime()

static System::ArrayPtr<uint8_t> Aspose::Email::Mapi::PropertyDescriptor::ToMultipleTime ( System::SharedPtr< System::Globalization::DateTimeFormatInfo >  dateTimeFormatInfo,
System::SharedPtr< System::Collections::IEnumerable >  value 
)
static

◆ ToPtypBinary()

static System::ArrayPtr<uint8_t> Aspose::Email::Mapi::PropertyDescriptor::ToPtypBinary ( System::ArrayPtr< uint8_t >  clearDataWithoutLength)
static

Parameters
clearDataWithoutLength!!!!! Binary data WITHOUT binary stream length metadata !!!!!
Returns

◆ ToPtypInteger32()

static System::ArrayPtr<uint8_t> Aspose::Email::Mapi::PropertyDescriptor::ToPtypInteger32 ( int32_t  val)
static

Friends And Related Function Documentation

◆ operator!=

bool operator!= ( System::SharedPtr< PropertyDescriptor pd1,
System::SharedPtr< PropertyDescriptor pd2 
)
friend

Determines whether the specified objects are not equal to each another.

Parameters
pd1The object to compare with another object.
pd2The object to compare with another object.
Returns
true if the specified PropertyDescriptor is not equal to the another PropertyDescriptor; otherwise, false.

◆ operator==

bool operator== ( System::SharedPtr< PropertyDescriptor pd1,
System::SharedPtr< PropertyDescriptor pd2 
)
friend

Determines whether the specified System.Object is equal to the current System.Object.

Parameters
objThe object to compare with the current object.
Returns
true if the specified System.Object is equal to the current System.Object; otherwise, false.

Determines whether the specified objects are equal to each another.

Parameters
pd1The object to compare with another object.
pd2The object to compare with another object.
Returns
true if the specified PropertyDescriptor is equal to the another PropertyDescriptor; otherwise, false.