LDAP Edit Adapter

Introduction

The Spotfire Streaming Adapter for LDAP Edit allows a StreamBase application use an existing LDAP connection to send CRUD commands to a LDAP server.

Adapter Properties

This section describes the properties you can set for this adapter, using the various tabs of the Properties view in StreamBase Studio.

General Tab

Name: Use this required field to specify or change the name of this instance of this component. The name must be unique within the current EventFlow module. The name can contain alphanumeric characters, underscores, and escaped special characters. Special characters can be escaped as described in Identifier Naming Rules. The first character must be alphabetic or an underscore.

Adapter: A read-only field that shows the formal name of the adapter.

Class name: Shows the fully qualified class name that implements the functionality of this adapter. If you need to reference this class name elsewhere in your application, you can right-click this field and select Copy from the context menu to place the full class name in the system clipboard.

Start options: This field provides a link to the Cluster Aware tab, where you configure the conditions under which this adapter starts.

Enable Error Output Port: Select this checkbox to add an Error Port to this component. In the EventFlow canvas, the Error Port shows as a red output port, always the last port for the component. See Using Error Ports to learn about Error Ports.

Description: Optionally, enter text to briefly describe the purpose and function of the component. In the EventFlow Editor canvas, you can see the description by pressing Ctrl while the component's tooltip is displayed.

Adapter Properties Tab

Property Description
Connection Adapter The name of the default connection adapter to use. If the connection adapter is in same sbapp file, the value can be just the connection adapter name. If the connection adapter is located in a different sbapp, you must use the fully qualified name of the connection adapter.
Enable Add If checked, the add port is enabled.
Enable Modify If checked, the modify port is enabled.
Enable Modify DN If checked, the modify DN port is enabled.
Enable Delete If checked, the delete port is enabled.
Log Level Controls the level of verbosity the adapter uses to send notifications to the console. This setting can be higher than the containing application's log level. If set lower, the system log level is used. Available values, in increasing order of verbosity, are: OFF, ERROR, WARN, INFO, DEBUG, TRACE.

Cluster Aware Tab

Use the settings in this tab to enable this operator or adapter for runtime start and stop conditions in a multi-node cluster. During initial development of the fragment that contains this operator or adapter, and for maximum compatibility with releases before 10.5.0, leave the Cluster start policy control in its default setting, Start with module.

Cluster awareness is an advanced topic that requires an understanding of StreamBase Runtime architecture features, including clusters, quorums, availability zones, and partitions. See Cluster Awareness Tab Settings on the Using Cluster Awareness page for instructions on configuring this tab.

Concurrency Tab

Use the Concurrency tab to specify parallel regions for this instance of this component, or multiplicity options, or both. The Concurrency tab settings are described in Concurrency Options, and dispatch styles are described in Dispatch Styles.

Caution

Concurrency settings are not suitable for every application, and using these settings requires a thorough analysis of your application. For details, see Execution Order and Concurrency, which includes important guidelines for using the concurrency options.

Add Input Port

The add input port is used to perform an add operation, which creates a new entry in the directory.

The schema for the port is:

Field Name Field Type Description
ConnectionAdapter string Optional—The name of the default connection adapter to use. If the connection adapter is in same sbapp file, the value can be just the connection adapter name. If the connection adapter is located in a different sbapp, you must use fully qualified name of the connection adapter.
DN string The DN for the item to add.
Attributes list(tuple(Name string, Value string)) or Tuple The attributes to add for the specified DN. The attributes field can be either a single tuple or may be a list of name-value tuples. If the attributes field is a tuple, then the system uses each of the schemas fields name as the attribute name and the value (or values if a list is used) converts to its string representation with these guidelines.
Controls list(tuple(OID string, Critical boolean, Value string)) Optional—Controls to use during add.

Modify Input Port

The modify input port is used to perform a modify operation, which can be used to update an entry in the directory server.

The schema for the port is:

Field Name Field Type Description
ConnectionAdapter string Optional—The name of the default connection adapter to use. If the connection adapter is in same sbapp file the value can be just the connection adapter name. If the connection adapter is located in a different sbapp, you must use the fully qualified name of the connection adapter.
DN string The DN for the item to modify.
Attributes list(tuple(Name string, Value string)) or Tuple The attributes to modify for the specified DN. The attributes field can be either a single tuple or may be a list of name value tuples. If the attributes field is a tuple, then the system uses each of the schemas fields name as the attribute name and the value (or values if a list is used) converts to its string representation with these guidelines
Controls list(tuple(OID string, Critical boolean, Value string)) Optional—Controls to use during add.

ModifyDN Input Port

The modifyDN input port is used to perform a modify DN operation, which you can use to rename and/or move an entry or subtree in the directory.

The schema for the port is:

Field Name Field Type Description
ConnectionAdapter string Optional—The name of the default connection adapter to use. If the connection adapter is in same sbapp file the value can be just the connection adapter name. If the connection adapter is located in a different sbapp, you must use the fully qualified name of the connection adapter.
DN string The current DN for the entry to rename.
NewRDN string The new RDN for the target entry.
DeleteOldRDN boolean Optional—Indicates whether to delete the current RDN value from the target entry.
NewSuperiorDN string Optional—The new superior DN for the entry. It may be null if the entry is not to be moved below a new parent.
Controls list(tuple(OID string, Critical boolean, Value string)) Optional—Controls to use during add.

Delete Input Port

The modifyDN input port is used to perform an delete operation, which removes an entry from the directory.

The schema for the port is:

Field Name Field Type Description
ConnectionAdapter string Optional—The name of the default connection adapter to use. If the connection adapter is in the same sbapp file, the value can be just the connection adapter name. If the connection adapter is located in a different sbapp, you must use the fully qualified name of the connection adapter.
DN string The DN of the entry to delete.

Tuple to Attribute Data Conversion

The add input port is used to add LDAP entries to the LDAP server.

Each schema field name is used as the attribute name. The value (or values if a list is used) converts to its string representation with the following guidelines:

StreamBase Type Attribute Value
Boolean True or False.
Int A string representation of a integer.
Long A string representation of a long.
String A string.
Timestamp A string expressed as generalized time format yyyyMMddHHmmss.SSS'Z'

Status Output Port

The status output port will output tuples giving relevant information.

The schema for the status output port is:

Field Name Field Type Description
Status String A string describing the current status of the adapter.
Time timestamp The timestamp that the status occurred.
Info list(tuple(Name string, Value string)) A list of name-value pairs of data to got more context to the status.

The following lists the status outputs and the associated objects:

Status Info Elements
Add Complete
  • ResultCode—The result code from the response.

  • ResultName—The name for this result code.

  • MessageId—The message ID for the LDAP message with which this LDAP results associated.

  • DiagnosticMessage—The diagnostic message from the response, if available.

  • Tuple—The input tuple that caused this status message in string format. You can use parsecsv expression language method to convert this back into a tuple downstream if required.

Add Error
  • Error—The error that occurred while trying to perform the operation.

  • Tuple—The input tuple that caused this status message in string format. You can use parsecsv expression language method to convert this back into a tuple downstream if required.

  • ResultCode—The LDAP result code.

  • ResultName—The name for this result code.

  • DiagnosticMessage—The diagnostic message returned by the directory server.

Modify Complete
  • ResultCode—The result code from the response.

  • ResultName—The name for this result code.

  • MessageId—The message ID for the LDAP message with which this LDAP results associated.

  • DiagnosticMessage—The diagnostic message from the response, if available.

  • Tuple—The input tuple that caused this status message in string format. You can use parsecsv expression language method to convert this back into a tuple downstream if required.

Modify Error
  • Error—The error that occurred while trying to perform the operation.

  • Tuple—The input tuple that caused this status message in string format. You can use parsecsv expression language method to convert this back into a tuple downstream if required.

  • ResultCode—The LDAP result code.

  • ResultName—The name for this result code.

  • DiagnosticMessage—The diagnostic message returned by the directory server.

ModifyDN Complete
  • ResultCode—The result code from the response.

  • ResultName—The name for this result code.

  • MessageId—The message ID for the LDAP message with which this LDAP results associated.

  • DiagnosticMessage—The diagnostic message from the response, if available.

  • Tuple—The input tuple that caused this status message in string format. You can use parsecsv expression language method to convert this back into a tuple downstream if required.

ModifyDN Error
  • Error—The error that occurred while trying to perform the operation.

  • Tuple—The input tuple that caused this status message in string format. You can use parsecsv expression language method to convert this back into a tuple downstream if required.

  • ResultCode—The LDAP result code.

  • ResultName—The name for this result code.

  • DiagnosticMessage—The diagnostic message returned by the directory server.

Delete Complete
  • ResultCode—The result code from the response.

  • ResultName—The name for this result code.

  • MessageId—The message ID for the LDAP message with which this LDAP results associated.

  • DiagnosticMessage—The diagnostic message from the response, if available.

  • Tuple—The input tuple that caused this status message in string format. You can use parsecsv expression language method to convert this back into a tuple downstream if required.

Delete Error
  • Error—The error that occurred while trying to perform the operation.

  • Tuple—The input tuple that caused this status message in string format. You can use parsecsv expression language method to convert this back into a tuple downstream if required.

  • ResultCode—The LDAP result code.

  • ResultName—The name for this result code.

  • DiagnosticMessage—The diagnostic message returned by the directory server.

Suspend and Resume Behavior

When suspended, the adapter no longer processes tuples.

When resumed, the adapter starts processing input tuples.