3.2.4.2.45.14 GetPropertyDefinition (Opnum 20)
The GetPropertyDefinition method returns a pointer to the property definition from the List of Persisted Property Definitions (section 3.2.1.6) with the specified name.
-
[id(FSRM_DISPID_CLASSIFICATION_MANAGER | 0x03)] HRESULT GetPropertyDefinition( [in] BSTR propertyName, [out, retval] IFsrmPropertyDefinition** propertyDefinition );
propertyName: Contains the name of the property definition to return.
propertyDefinition: Pointer to an IFsrmPropertyDefinition interface pointer (section 3.2.4.2.37) that upon completion points to the IFsrmPropertyDefinition with the specified name. Additionally, the server SHOULD implement IFsrmPropertyDefinition2 for the same interface pointer.<68> The caller MUST release the property definition when the caller is done with it.
Return Values: The method MUST return zero on success, or a nonzero error code on failure.
-
Return value/code
Description
0x80045301
FSRM_E_NOT_FOUND
The specified property definition could not be found.
0x80045308
FSRM_E_INVALID_NAME
The propertyName parameter is empty or NULL.
0x80070057
E_INVALIDARG
The propertyDefinition parameter is NULL.
Upon receiving this message, the server MUST validate parameters:
Verify that propertyName is not empty or NULL.
Verify that propertyDefinition is not NULL.
If any validation fails, the server MUST terminate processing and return a nonzero error code.
Upon successful validation of parameters, the server MUST perform the following actions.
Create a new Non-Persisted Property Definition Instance (section 3.2.1.6.1.2).
Populate its configuration data from the Persisted Property Definition (section 3.2.1.6.1.1) in the List of Persisted Property Definitions whose Property Definition.Name is equivalent to propertyName.
Set propertyDefinition to the IFsrmPropertyDefinition interface pointer of the newly created Non-Persisted Property Definition Instance.
If a property definition with the specified name does not exist, the server MUST return FSRM_E_NOT_FOUND.