IMAExtensibleCallExport.ExportEntry Method
Called during an export run to write to the connected directory the attribute values of a CSEntry object that have changed.
Namespace: Microsoft.MetadirectoryServices
Assembly: Microsoft.MetadirectoryServicesEx (in Microsoft.MetadirectoryServicesEx.dll)
Usage
'Usage
Dim instance As IMAExtensibleCallExport
Dim modificationType As ModificationType
Dim changedAttributes As String()
Dim csentry As CSEntry
instance.ExportEntry(modificationType, changedAttributes, csentry)
Syntax
'Declaration
Sub ExportEntry ( _
modificationType As ModificationType, _
changedAttributes As String(), _
csentry As CSEntry _
)
void ExportEntry (
ModificationType modificationType,
string[] changedAttributes,
CSEntry csentry
)
void ExportEntry (
ModificationType modificationType,
array<String^>^ changedAttributes,
CSEntry^ csentry
)
void ExportEntry (
ModificationType modificationType,
String[] changedAttributes,
CSEntry csentry
)
function ExportEntry (
modificationType : ModificationType,
changedAttributes : String[],
csentry : CSEntry
)
Parameters
- modificationType
The enumeration value that identifies the type of operation on the object that results in a change to the attribute values of the CSEntry object.
- changedAttributes
An array of attribute names that specifies which attributes were modified. Use this parameter to determine which attributes in the entry were updated. Change only the attributes that are listed in this parameter. Changing an attribute value in this method that is not in the parameter list causes an exception.
- csentry
The object that contains all the attributes and their values.
Exceptions
Exception type | Condition |
---|---|
EntryExportException | The entry cannot be exported. When this method throws this exception, the run continues and the Windows Management Instrumentation (WMI) Provider returns the string completed-warnings. This exception does not generate an event log entry. |
EntryPointNotImplementedException | The rules extension does not implement this method. When this method throws this exception, the run stops and the WMI Provider returns the string stopped-entry-point-not-implemented. This exception does not generate an event log entry. |
ExtensibleExtensionException | An unexpected error occurs in the extension. When this method throws this exception, the run continues and the WMI Provider returns the string completed-warnings. This exception generates an event log entry. |
FatalEntryExportException | The entry cannot be exported and the export run should stop. When this method throws this exception, the run stops and the WMI Provider returns the string stopped-entry-export-error. This exception does not generate an event log entry. |
System.InvalidOperationException | The call to FindMVEntries is not supported in this method. |
ServerDownException | The connected directory extension cannot establish a connection to the connected directory. When this method throws this exception, the run continues and the WMI Provider returns the string completed-export-errors. This exception does not generate an event log entry. |
UnexpectedDataException | The method received unexpected data. When this method throws this exception, the run continues and the WMI Provider returns the string completed-export-errors. This exception generates an event log entry. |
Remarks
This method is called for each CSEntry object that has a changed attribute value only if the BeginExport method does not throw an exception.
Implement this method in all types of call-based connected data source extensions. Although this method is not called from an import-only connected data source extension, an error occurs if this method is not implemented in the extension. For an import-only connected data source extension, you can implement this method by throwing an EntryPointNotImplementedException exception.
All the exceptions that are described in this topic stop a run. If the method throws an exception that is not described in this topic, the run continues. If the run stops, the WMI Provider returns the string stopped-extension-dll-exception and generates an event log entry.
All data in Forefront Identity Manager Synchronization Service (FIM Synchronization Service) uses the Unicode character set. If the connected data source that receives the exported data requires data in a different character set, use this method to convert the Unicode data to the character set that is required by your connected data source.
Use this method to write the values of the changed attributes to the connected data source. If the BeginExport method does not throw an exception, this method is called for each CSEntry object in the connector space that has new or changed attribute values. Look at the modificationType parameter value to determine the operation that caused the attribute value change.
Enumeration | Description |
---|---|
The CSEntry object was added to the connector space. Write all the attribute values of the CSEntry object to the connected data source. |
|
The attribute values of the CSEntry object are in the connected data source, and some of these values have changed. Obtain the list of attributes that have values that have changed from the changedAttributes parameter. After creating this list, obtain the changed attribute values from the CSEntry object, and write those new values in the connected directory. |
|
The CSEntry object was deleted from the connector space. Delete the attribute values from the connected data source. |
To determine whether an attribute that is listed in the changedAttributes parameter is a multi-valued attribute, use the TypeDescriptionCollection class instead of the DataType property or the IsMultivalued property. Accessing these properties in this method throws an exception.
If this method does not throw an exception, the CSEntry object is marked as Awaiting Export Confirmation in the connector space. If the connected data source extension is Import and Export, export confirmation occurs when you run a synchronization profile to import the new attribute values to the connector space, or when the attribute values are deleted from the connected data source. For an export-only connected data source extension, you must confirm that the attribute values were written or deleted in the connected data source.
When you export data, it is important that you index the attributes on the target server. This significantly increases performance when you conduct object searches on that server.
The following CSEntry methods and properties are not available in this method. If you access these properties in this method, an exception is thrown.
The EndExport method is always called after the ExportEntry method, except when an object enters an unknown state, or a resource is called through unmanaged code during an export run.
Thread Safety
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Platforms
Development Platforms
Windows XP Home Edition, Windows XP Professional, Windows Server 2003 , Windows Server 2008, and Windows 2000
Target Platforms
See Also
Reference
IMAExtensibleCallExport Interface
IMAExtensibleCallExport Members
Microsoft.MetadirectoryServices Namespace
DataType
IsMultivalued
CSEntry
CommitNewConnector
ConnectionChangeTime
ConnectionRule
ConnectionState
Deprovision
MA
ModificationType
TypeDescriptionCollection
IMAExtensibleCallExport