IMAExtensible2GetCapabilities.Capabilities Property
Provides a way to allow information about the configuration/schema/capability of the Management Agent to be conveyed programmatically and not through the User Interface.
Namespace: Microsoft.MetadirectoryServices
Assembly: Microsoft.MetadirectoryServicesEx (in Microsoft.MetadirectoryServicesEx.dll)
'Usage
Dim instance As IMAExtensible2GetCapabilities
Dim value As MACapabilities
value = instance.Capabilities
'Declaration
ReadOnly Property Capabilities As MACapabilities
MACapabilities Capabilities { get; }
property MACapabilities^ Capabilities {
MACapabilities^ get ();
}
/** @property */
MACapabilities get_Capabilities ()
function get Capabilities () : MACapabilities
Returns MACapabilities.
This method has to be implemented if the default set of capabilities are not suitable for the management agent. A management agent can set capabilities to inform the engine what it can do and assumptions made in code the engine must know about. There are a few different categories of Management Agent capabilities.
Run profiles – defines which run steps is visible and can occur in run profiles.
Connected directory behavior – defines behavior in the connected directory. In many cases this will change synchronization behavior.
Sync and MA behavior – defines engine behavior and how the engine should interact with the management agent.
Normalization – defines how data should be normalized.
If Capabilities is not implemented, the default behavior will be used. The table below provides a list of these values.
The following capabilities can be set.
Type |
Property |
Description |
Default value |
Run Profiles |
DeltaImport |
Gets or sets a value indicating whether the management agent supports Delta Import. |
true |
FullExport |
Gets or sets a value indicating whether the management agent supports Full Export. |
false |
|
Connected directory and LDAP behavior |
ObjectRename |
Gets or Sets a value indicating whether the management agent supports renames. Requires MADistinguishedNameStyle.Generic or MADistinguishedNameStyle.LdapStyle. |
true |
ObjectConfirmation |
Gets or sets a value indicating whether the target directory cannot supply confirmations for certain object modifications |
Normal |
|
DeleteAddAsReplace |
Gets or sets a value indicating whether the management agent supports Delete-Adds. If false, all delete-adds will be exported as object replacements. |
true |
|
DistinguishedNameStyle |
Gets or sets a value indicating whether the distinguished name style supported by the management agent. |
MADistinguishedNameStyle.Generic |
|
NoRefereneceValuesInFirstExport |
Gets or sets a value indicating whether the management agent requires that exported objects not contain reference values in the first export attempt. |
false |
|
Sync and MA behavior |
ConcurrentOperation |
Gets or sets a value indicating whether the sync engine supports concurrent operation of multiple instances of the management agent. |
true |
ExportType |
Gets or sets a value indicating whether the sync engine should create object replacements, objects with attribute replacements or objects with attribute updates during export. |
MAExportType.ObjectReplace |
|
Normalizations |
Gets or sets a value indicating whether the sync engine should normalize the data before export. |
MANormalizations.None |
A more detailed description of how to use a capability can be found in the method implementing the logic for the operation.
Exceptions: Return values, Errors, and Exceptions
The following is an example:
public MACapabilities Capabilities
{
get
{
MACapabilities myCapabilities = new MACapabilities();
myCapabilities.ConcurrentOperation = true;
myCapabilities.ObjectRename = false;
myCapabilities.DeleteAddAsReplace = true;
myCapabilities.DeltaImport = true;
myCapabilities.DistinguishedNameStyle = MADistinguishedNameStyle.Ldap;
myCapabilities.ExportType = MAExportType.AttributeUpdate;
myCapabilities.NoReferenceValuesInFirstExport = false;
myCapabilities.Normalizations = MANormalizations.None;
return myCapabilities;
}
}
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
IMAExtensible2GetCapabilities Interface
IMAExtensible2GetCapabilities Members
Microsoft.MetadirectoryServices Namespace