3.1.6.11.2 Queue
A Queue ADM element instance MUST be created, and rDirectoryObject MUST be set to this new Queue ADM element instance.
The attributes listed in the iADMAttributeList argument MUST be set on rDirectoryObject, using the attribute names in the iLDAPAttributeList argument and the corresponding values in the iValues argument, according to the following table. If the value of the LDAP attribute required to compute the Queue ADM element attribute is empty in the iValues argument, depending on the attribute, either that is an error condition, or a default value MUST be used. If an error condition occurs, rStatus MUST be set to DirectoryOperationResult.GenericError, rDirectoryObject is undefined, and processing MUST end.
Queue attribute
Attribute value computation
If not set, default value or error?
Identifier
Error.
Label
Unicode string transformed from mSMQLabelEx ([MS-ADA2] section 2.550).
Default value: empty Unicode string.
CreateTime
Integer time value expressed as the number of seconds elapsed from midnight (00:00:00), January 1, 1970 UTC to whenCreated ([MS-ADA3] section 2.371).
Error.
ModifyTime
Integer time value expressed as the number of seconds elapsed from midnight (00:00:00), January 1, 1970 UTC to whenChanged ([MS-ADA3] section 2.370).
Error.
Type
GUID copied from mSMQQueueType ([MS-ADA2] section 2.565).
Default value: a GUID with all fields set to zero.
Pathname
Computed from distinguishedName ([MS-ADA1] section 2.177) and mSMQQueueNameExt ([MS-ADA2] section 2.563); see section 3.1.6.11.2.1.
See section 3.1.6.11.2.1.
QualifiedPathName
Set in a following step. distinguishedName ([MS-ADA1] section 2.177) and mSMQQueueNameExt ([MS-ADA2] section 2.563) are required.
N/A
Journaling
If mSMQJournal ([MS-ADA2] section 2.547) equals 1,
Journaling is TRUE
Else if mSMQJournal equals 0,
Journaling is FALSE.
Default value: FALSE.
Quota
Integer copied from mSMQQueueQuota ([MS-ADA2] section 2.564).
Default value: 0xFFFFFFFF.
JournalQuota
Integer copied from mSMQQueueJournalQuota ([MS-ADA2] section 2.562).
Default value: 0xFFFFFFFF.
Authentication
If mSMQAuthenticate ([MS-ADA2] section 2.530) equals 1,
Authentication is TRUE
Else if mSMQAuthenticate equals 0,
Authentication is FALSE.
Default value: FALSE.
PrivacyLevel
Computed from mSMQPrivacyLevel ([MS-ADA2] section 2.560); see section 3.1.6.11.2.3.
Default value: enumeration value Optional.
Transactional
If mSMQTransactional ([MS-ADA2] section 2.583) equals 1,
Transactional is TRUE
Else if mSMQTransactional equals 0,
Transactional is FALSE.
Default value: FALSE.
MulticastAddress
Unicode string transformed from MSMQ-MulticastAddress ([MS-ADA2] section 2.527).
Default value: empty Unicode string.
Security
Security descriptor copied from nTSecurityDescriptor ([MS-ADA3] section 2.37).
Error
BasePriority
Integer copied from mSMQBasePriority ([MS-ADA2] section 2.531).
Default value: zero.
FullPath
Distinguished name copied from distinguishedName ([MS-ADA1] section 2.177).
Error
DirectoryPath
Unicode string computed from distinguishedName ([MS-ADA1] section 2.177) by transforming to Unicode and prepending the Unicode string "LDAP://".
Error
If the Queue ADM element attribute name QualifiedPathname does not appear in iADMAttributeList, rStatus MUST be set to DirectoryOperationResult.Success, and processing MUST end.
A Get Object Properties Using LDAP (section 3.1.6.14) event MUST be generated with the following arguments:
iPath := a distinguished name of the form for a computer object as specified in section 2.2.1, created by removing the first two comma-separated elements of the value in the iValues argument for the mSMQQueue attribute distinguishedName.
iAttributes := a list of attribute names consisting of one element, "dNSHostName"
If the Get Object Properties Using LDAP event returns an rStatus that is not DirectoryOperationResult.Success, rStatus MUST be set to the rStatus returned by the Get Object Properties Using LDAP event, and processing MUST end. If the value returned in rValues for the dNSHostName attribute is empty, rDirectoryObject.QualifiedPathname MUST be set to an empty string. Otherwise, let DNSname be a string initialized to the value returned in rValues for the computer attribute dNSHostName.
rDirectoryObject.QualifiedPathname MUST be computed from the values in the iValues argument of the mSMQQueue attributes distinguishedName and mSMQQueueNameExt and the value of DNSname, as specified in section 3.1.6.11.2.2.
rStatus MUST be set to DirectoryOperationResult.Success, and processing MUST end.