com.evolveum.midpoint.model.importer
Class ImportFromResourceTaskHandler

java.lang.Object
  extended by com.evolveum.midpoint.model.importer.ImportFromResourceTaskHandler
All Implemented Interfaces:
TaskHandler

@Component
public class ImportFromResourceTaskHandler
extends java.lang.Object
implements TaskHandler

Task handler for "Import from resource" task. The import task will search for all the accounts on a specific resource. It will pretend that all the accounts were just created and notify other components (mode) using the ResourceObjectChangeListener interface. This will efficiently result in importing all the accounts. Depending on the sync policy, appropriate user objects may be created, accounts may be linked to existing users, etc. The handler will execute the import in background. It is using Task Manager for that purpose, so the Task Manager instance needs to be injected. Most of the "import" action is actually done in the callbacks from provisioning searchObjectsIterative() operation. The import task may be executed on a different node (as usual for async tasks).

Author:
Radovan Semancik
See Also:
TaskHandler, ResourceObjectChangeListener

Field Summary
static java.lang.String HANDLER_URI
           
static java.lang.String IMPORT_EXTENSION_SCHEMA
           
static java.lang.String IMPORT_URI_PREFIX
           
static javax.xml.namespace.QName OBJECTCLASS_PROPERTY_NAME
           
 
Constructor Summary
ImportFromResourceTaskHandler()
           
 
Method Summary
 long heartbeat(Task task)
           
 void launch(ResourceType resource, javax.xml.namespace.QName objectclass, Task task, OperationResult parentResult)
          Launch an import.
 void refreshStatus(Task task)
           
 TaskRunResult run(Task task)
          The body of the task.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

IMPORT_URI_PREFIX

public static final java.lang.String IMPORT_URI_PREFIX
See Also:
Constant Field Values

HANDLER_URI

public static final java.lang.String HANDLER_URI
See Also:
Constant Field Values

IMPORT_EXTENSION_SCHEMA

public static final java.lang.String IMPORT_EXTENSION_SCHEMA
See Also:
Constant Field Values

OBJECTCLASS_PROPERTY_NAME

public static final javax.xml.namespace.QName OBJECTCLASS_PROPERTY_NAME
Constructor Detail

ImportFromResourceTaskHandler

public ImportFromResourceTaskHandler()
Method Detail

launch

public void launch(ResourceType resource,
                   javax.xml.namespace.QName objectclass,
                   Task task,
                   OperationResult parentResult)
Launch an import. Calling this method will start import in a new thread, possibly on a different node.

Parameters:
resource -
task -
manager -

run

public TaskRunResult run(Task task)
The body of the task. This will start the import "loop".

Specified by:
run in interface TaskHandler

heartbeat

public long heartbeat(Task task)
Specified by:
heartbeat in interface TaskHandler

refreshStatus

public void refreshStatus(Task task)
Specified by:
refreshStatus in interface TaskHandler


Copyright © 2011 evolveum. All Rights Reserved.