Class TstConnector

    • Constructor Detail

      • TstConnector

        public TstConnector()
    • Method Detail

      • checkClassLoader

        public static void checkClassLoader()
      • create

        public Uid create​(ObjectClass objectClass,
                          Set<Attribute> createAttributes,
                          OperationOptions options)
        Description copied from interface: CreateOp
        The Connector developer is responsible for taking the attributes given (which always includes the ObjectClass) and create an object and its Uid. The Connector developer must return the Uid so that the caller can refer to the created object.

        *Note: There will never be a Uid passed in with the attribute set for this method. If the resource supports some sort of mutable Uid, you should create your own resource-specific attribute for it, such as unix_uid.

        Specified by:
        create in interface CreateOp
        Parameters:
        objectClass - the type of object to create. Will never be null.
        createAttributes - includes all the attributes necessary to create the resource object including the ObjectClass attribute and Name attribute.
        options - additional options that impact the way this operation is run. If the caller passes null, the framework will convert this into an empty set of options, so SPI need not worry about this ever being null.
        Returns:
        the unique id for the object that is created. For instance in LDAP this would be the 'dn', for a database this would be the primary key, and for 'ActiveDirectory' this would be the GUID.
      • init

        public void init​(Configuration cfg)
        Description copied from interface: Connector
        Initialize the connector with its configuration. For instance in a JDBC Connector this would include the database URL, password, and user.
        Specified by:
        init in interface Connector
        Parameters:
        cfg - instance of the Configuration object implemented by the Connector developer and populated with information in order to initialize the Connector.
      • dispose

        public void dispose()
        Description copied from interface: Connector
        Dispose of any resources the Connector uses.
        Specified by:
        dispose in interface Connector
      • checkAlive

        public void checkAlive()
        Description copied from interface: PoolableConnector
        Checks if the connector is still alive.

        A connector can spend a large amount of time in the pool before being used. This method is intended to check if the connector is alive and operations can be invoked on it (for instance, an implementation would check that the connector's physical connection to the resource has not timed out).

        The major difference between this method and TestOp.test() is that this method must do only the minimum that is necessary to check that the connector is still alive. TestOp.test() does a more thorough check of the environment specified in the Configuration, and can therefore be much slower.

        This method can be called often. Implementations should do their best to keep this method fast.

        Specified by:
        checkAlive in interface PoolableConnector
      • createFilterTranslator

        public FilterTranslator<String> createFilterTranslator​(ObjectClass objectClass,
                                                               OperationOptions options)
        Description copied from interface: SearchOp
        Creates a filter translator that will translate a specified Filter into one or more native queries. Each of these native queries will be passed subsequently into executeQuery().
        Specified by:
        createFilterTranslator in interface SearchOp<String>
        Parameters:
        objectClass - The object class for the search. Will never be null.
        options - additional options that impact the way this operation is run. If the caller passes null, the framework will convert this into an empty set of options, so SPI need not worry about this ever being null.
        Returns:
        A filter translator. This must not be null. A null return value will cause the API (SearchApiOp) to throw NullPointerException.
      • sync

        public void sync​(ObjectClass objectClass,
                         SyncToken token,
                         SyncResultsHandler handler,
                         OperationOptions options)
        Description copied from interface: SyncOp
        Request synchronization events--i.e., native changes to target objects.

        This method will call the specified handler once to pass back each matching synchronization event. Once this method returns, this method will no longer invoke the specified handler.

        Each synchronization event contains a token that can be used to resume reading events starting from that point in the event stream. In typical usage, a client will save the token from the final synchronization event that was received from one invocation of this sync() method and then pass that token into that client's next call to this sync() method. This allows a client to "pick up where he left off" in receiving synchronization events. However, a client can pass the token from any synchronization event into a subsequent invocation of this sync() method. This will return synchronization events (that represent native changes that occurred) immediately subsequent to the event from which the client obtained the token.

        A client that wants to read synchronization events "starting now" can call SyncOp.getLatestSyncToken(org.identityconnectors.framework.common.objects.ObjectClass) and then pass that token into this sync() method.

        Specified by:
        sync in interface SyncOp
        Parameters:
        objectClass - The class of object for which to return synchronization events. Must not be null.
        token - The token representing the last token from the previous sync. The SyncResultsHandler will return any number of SyncDelta objects, each of which contains a token. Should be null if this is the client's first call to the sync() method for this connector.
        handler - The result handler. Must not be null.
        options - Options that affect the way this operation is run. If the caller passes null, the framework will convert this into an empty set of options, so an implementation need not guard against this being null.
      • getLatestSyncToken

        public SyncToken getLatestSyncToken​(ObjectClass objectClass)
        Description copied from interface: SyncOp
        Returns the token corresponding to the most recent synchronization event.

        An application that wants to receive synchronization events "starting now" --i.e., wants to receive only native changes that occur after this method is called-- should call this method and then pass the resulting token into the sync() method.

        Specified by:
        getLatestSyncToken in interface SyncOp
        Parameters:
        objectClass - the class of object for which to find the most recent synchronization event (if any). Must not be null.
        Returns:
        A token if synchronization events exist; otherwise null.
      • livesync

        public void livesync​(ObjectClass objectClass,
                             LiveSyncResultsHandler handler,
                             OperationOptions options)
        Description copied from interface: LiveSyncOp
        Request synchronization events--i.e., native changes to target objects.

        This method will call the specified handler once to pass back each matching synchronization event. Once this method returns, this method will no longer invoke the specified handler.

        Specified by:
        livesync in interface LiveSyncOp
        Parameters:
        objectClass - The class of object for which to return synchronization events. Must not be null.
        handler - The result handler. Must not be null.
        options - Options that affect the way this operation is run. If the caller passes null, the framework will convert this into an empty set of options, so an implementation need not guard against this being null.
      • schema

        public Schema schema()
        Description copied from interface: SchemaOp
        Describes the types of objects this Connector supports. This method is considered an operation since determining supported objects may require configuration information and allows this determination to be dynamic.

        The special Uid attribute should never appear in the schema, as it is not a true attribute of an object, rather a reference to it. If your resource object-class has a writable unique id attribute that is different than its Name, then your schema should contain a resource-specific attribute that represents this unique id. For example, a Unix account object might contain unix_uid.

        Specified by:
        schema in interface SchemaOp
        Returns:
        basic schema supported by this Connector.
      • userObjectClass

        public static ObjectClass userObjectClass()