51Degrees Device Detection .NET  4.1

Device detection services for 51Degrees Pipeline

FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash Class Reference

Detailed Description

Data class that contains meta-data relating to a specific property.

This implementation of the IFiftyOneAspectPropertyMetaData interface is used for meta-data that is generated by the native C/C++ code from information in the data file.

Inheritance diagram for FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash:

[legend]

Collaboration diagram for FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash:

[legend]

Public Member Functions

IComponentMetaData  GetComponent ()
Get the component associated with this property. More...
IEnumerable< IValueMetaData >  GetValues ()
The values that this property can have. More...
IValueMetaData  GetValue (string valueName)
Get the meta-data for an individual value entry. More...
IValueMetaData  GetDefaultValue ()
Get the default value for this property. More...
bool  Equals (IFiftyOneAspectPropertyMetaData other)
Check if this instance is equal to another object that implements IFiftyOneAspectPropertyMetaData. More...
bool  Equals (string other)
Check if this instance is equal to a given string. More...
void  Dispose ()
Dispose More...
int  CompareTo (IFiftyOneAspectPropertyMetaData other)
Compare this instance to another object that implements IFiftyOneAspectPropertyMetaData. More...
override string  ToString ()
Return a string representation of this instance. More...
override bool  Equals (object obj)
Check if this instance is equal to a given object. More...
override int  GetHashCode ()
Get a hash code for this instance. More...

Public Attributes

IComponentMetaData  Component => GetComponent()
The component associated with this property. More...
IReadOnlyList< IValueMetaData >  Values => GetValues().ToList()
The values that this property can have. More...
IValueMetaData  DefaultValue => GetDefaultValue()
Get the default value for this property More...
IFlowElement  Element => _engine
Get the element that created this meta-data instance. More...
IReadOnlyDictionary< string, IElementPropertyMetaData >  ItemPropertyDictionary => null
bool  DelayExecution => false
IReadOnlyList< string >  EvidenceProperties => null

Protected Member Functions

virtual void  Dispose (bool disposing)
Dispose More...

Properties

string  Url [get]
A URL that will display a page with more detail about the property. More...
byte  DisplayOrder [get]
A byte used to order property meta-data instances. More...
bool  Mandatory [get]
True if this property must be filled in. More...
bool  List [get]
True if this is a 'list' property. More...
bool  Obsolete [get]
True if the property is obsolete. More...
bool  Show [get]
True if 51Degrees recommends that the property should appear in lists shown to the user. More...
bool  ShowValues [get]
True if 51Degrees recommends that all possible values of this property can be shown to the user. More...
string  Description [get]
A description of the property More...
IList< string >  DataTiersWherePresent [get]
A list of the string names of the data tiers that this property is available in. More...
bool  Available [get]
True if this property is available from the current data source. More...
string  Name [get]
The name of the property. More...
string  Category [get]
The category that this property belongs to. More...
Type  Type [get]
The type of the values returned by this property. More...
IReadOnlyList< IElementPropertyMetaData >  ItemProperties = null [get]
Get the meta-data for any sub-properties. More...

Member Function Documentation

◆ CompareTo()

int FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.CompareTo ( IFiftyOneAspectPropertyMetaData   other )

Compare this instance to another object that implements IFiftyOneAspectPropertyMetaData.

Parameters
other - The IFiftyOneAspectPropertyMetaData instance to compare to.
Returns
>0 if this instance precedes other in the sort order. 0 if they are equal in the sort order. <0 if other precedes this instance in the sort order.

◆ Dispose() [1/2]

virtual void FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.Dispose ( bool   disposing )
protected virtual

Dispose

Parameters
disposing - False if called from finalizer

◆ Dispose() [2/2]

void FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.Dispose ( )

Dispose

◆ Equals() [1/3]

bool FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.Equals ( IFiftyOneAspectPropertyMetaData   other )

Check if this instance is equal to another object that implements IFiftyOneAspectPropertyMetaData.

Parameters
other - The IFiftyOneAspectPropertyMetaData to check for equality.
Returns
True if the two instances are equal. False otherwise

◆ Equals() [2/3]

bool FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.Equals ( string   other )

Check if this instance is equal to a given string.

This uses a comparison with the Name property.

Parameters
other - The string to check for equality.
Returns
True if the two instances are equal. False otherwise

◆ Equals() [3/3]

override bool FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.Equals ( object   obj )

Check if this instance is equal to a given object.

Parameters
obj - The object to check for equality.
Returns
True if the two instances are equal. False otherwise

◆ GetComponent()

IComponentMetaData FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.GetComponent ( )

Get the component associated with this property.

Returns
The component associated with this property.

◆ GetDefaultValue()

IValueMetaData FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.GetDefaultValue ( )

Get the default value for this property.

Returns
A meta-data instance for the default value.

◆ GetHashCode()

override int FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.GetHashCode ( )

Get a hash code for this instance.

The value-space is greater than the key-space so hash collisions are possible and may need to be accounted for, depending on your use-case.

Returns
A hash code.

◆ GetValue()

IValueMetaData FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.GetValue ( string   valueName )

Get the meta-data for an individual value entry.

Parameters
valueName - the value to get the meta-data for.
Returns
The requested meta-data.

◆ GetValues()

IEnumerable<IValueMetaData> FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.GetValues ( )

The values that this property can have.

Note that this is based on information in the data file so it is possible (or even likely, depending on the property) that a future data file will have different possible values.

Returns
The values that this property can have.

◆ ToString()

override string FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.ToString ( )

Return a string representation of this instance.

Returns

Member Data Documentation

◆ Component

IComponentMetaData FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.Component => GetComponent()

The component associated with this property.

◆ DefaultValue

IValueMetaData FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.DefaultValue => GetDefaultValue()

Get the default value for this property

◆ Element

IFlowElement FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.Element => _engine

Get the element that created this meta-data instance.

◆ Values

IReadOnlyList<IValueMetaData> FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.Values => GetValues().ToList()

The values that this property can have.

Note that this is based on information in the data file so it is possible (or even likely, depending on the property) that a future data file will have different possible values.

Property Documentation

◆ Available

bool FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.Available
get

True if this property is available from the current data source.

False if not.

◆ Category

string FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.Category
get

The category that this property belongs to.

◆ DataTiersWherePresent

IList<string> FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.DataTiersWherePresent
get

A list of the string names of the data tiers that this property is available in.

For example: 'Lite' or 'Enterprise'

◆ Description

string FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.Description
get

A description of the property

◆ DisplayOrder

byte FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.DisplayOrder
get

A byte used to order property meta-data instances.

For example when displaying a list of properties to a user.

◆ ItemProperties

IReadOnlyList<IElementPropertyMetaData> FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.ItemProperties = null
get

Get the meta-data for any sub-properties.

◆ List

bool FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.List
get

True if this is a 'list' property.

False if not. List properties can have multiple values on a single profile. For example, an Apple device such as the iPhone 8 has multiple model numbers - A1863, A1864, A1897, etc. Therefore the HardwareModelVariants property is a list property.

◆ Mandatory

bool FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.Mandatory
get

True if this property must b byte FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.DisplayOrder

get

A byte used to order property meta-data instances.

For example when displaying a list of properties to a user.

◆ ItemProperties

IReadOnlyList<IElementPropertyMetaData> FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.ItemProperties = null
get

Get the meta-data for any sub-properties.

◆ List

bool FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.List
get

True if this is a 'list' property.

False if not. List properties can have multiple values on a single profile. For example, an Apple device such as the iPhone 8 has multiple model numbers - A1863, A1864, A1897, etc. Therefore the HardwareModelVariants property is a list property.

◆ Mandatory

bool FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.Mandatory
get

True if this property must be filled in.

False if it can be left blank or 'Unknown'

◆ Name

string FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.Name
get

The name of the property.

◆ Obsolete

bool FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.Obsolete
get

True if the property is obsolete.

False otherwise. Obsolete properties are usually retained for some time for backwards compatibility but may be removed in a future release and should not be used if possible.

◆ Show

bool FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.Show
get

True if 51Degrees recommends that the property should appear in lists shown to the user.

False if not.

This is used by the 51Degrees Property Dictionary: https://51degrees.com/resources/property-dictionary and is made available for customers should they wish to make use of it.

◆ ShowValues

bool FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.ShowValues
get

True if 51Degrees recommends that all possible values of this property can be shown to the user.

False if not. Properties that have very large lists of possible values will usually have this set to false.

This is used by the 51Degrees Property Dictionary: https://51degrees.com/resources/property-dictionary and is made available for customers should they wish to make use of it.

◆ Type

Type FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.Type
get

The type of the values returned by this property.

◆ Url

string FiftyOne.DeviceDetection.Hash.Engine.OnPremise.Data.PropertyMetaDataHash.Url
get

A URL that will display a page with more detail about the property.