Skip to main content

Connectivity Options

Ensemble enables you to define inbound and outbound connections to a wide variety of technologies. There are three general categories of options:

Many of these tools are built on the Caché tool set, which also includes many options that Ensemble does not use.

If the built-in Ensemble tools do not meet your needs, you can create your own components based on any suitable combination of Caché and Ensemble tools. For a compact, combined list of Caché and Ensemble tools, see the table of contents of the InterSystems Technology Reference.

Adapter Library

Ensemble provides many adapters, and you can define your own. Ensemble provides adapters for the following scenarios:

Email

Receives email messages via the POP3 protocol and sends email messages via the Simple Mail Transfer Protocol (SMTP).

See Using Email Adapters with Ensemble.

File

Reads and writes files on the local network. Able to open, create, delete, modify, and move files. The file content can be character or binary data.

See Using File Adapters with Ensemble.

Also see “Business Host Classes That Use File Adapters,” later in this chapter.

FTP

Receives and sends files between local and remote systems via the File Transfer Protocol (FTP). The file content can be characters or binary data. The adapters support FTP over SSL and SFTP.

See Using FTP Adapters with Ensemble.

Also see “Business Host Classes That Use FTP Adapters,” later in this chapter.

HTTP

Provides an HTTP listener for custom port listening, XML listening, or raw HTML handling. Supports the standard HTTP operations Post, Get, Put, and Delete. Allows the use of proxy servers.

See Using HTTP Adapters with Ensemble.

Also see “Business Host Classes That Use HTTP Adapters,” later in this chapter.

LDAP

The outbound LDAP adapter can send requests to an LDAP server and receive responses.

See the EnsLib.LDAP.OutboundAdapterOpens in a new tab entry in the Class Reference.

MQSeries

Receives and sends messages in IBM WebSphere MQ (MQ Series) format. Message content can be a specific data type or a binary data stream. The adapter can simply send the message, or send it and then pull the corresponding response from the message queue.

See Using IBM WebSphere MQ Adapters with Ensemble.

Pipe

Able to execute a shell command and communicate with it via pipes. Capable of handling character data or a binary data stream.

See the EnsLib.Pipe.InboundAdapterOpens in a new tab and EnsLib.Pipe.OutboundAdapterOpens in a new tab entries in the Class Reference.

SAP

Allows Ensemble to interface with the SAP Java Connector (SAP JCo).

See Using the SAP Java Connector with Ensemble for details.

Siebel

A subclass of the HTTP adapter that sends requests to a Siebel server and returns responses.

See the EnsLib.Siebel.HTTPOutboundAdapterOpens in a new tab entry in the Class Reference.

SOAP

Listens for SOAP requests on a local TCP port or via a standard web server. Dispatches outbound requests by acting as a SOAP client to an external SOAP server. In this special case, adapters are not necessarily involved.

See Creating Web Services and Web Clients with Ensemble.

Also see “Business Host Classes That Use SOAP,” later in this chapter.

SQL

Executes SQL statements against a remote database via an ODBC-defined or JDBC-defined connection.

See Using SQL Adapters with Ensemble.

TCP

Manages an incoming or outgoing TCP connection. Allows simultaneous handling of multiple connections. Supports character and binary data streams, and counted data blocks. The adapters also supported framed protocols.

See Using TCP Adapters with Ensemble.

Also see “Business Host Classes That Use TCP Adapters,” later in this chapter.

Telnet

Directly initiates and manages a Telnet connection.

See the EnsLib.Telnet.OutboundAdapterOpens in a new tab entry in the Class Reference.

To use an adapter, you define a business host class that uses the adapter class. For a general description of this process, see Developing Ensemble Productions. The books in the previous list provide details that apply to the specific adapters.

As noted previously, you can also define your own adapters. For information, see Developing Ensemble Productions.

Business Host Classes That Use Adapters

For specific scenarios, Ensemble provides specialized business service classes and business operation classes that already use specific adapters:

To use these business hosts, it is not generally necessary to perform any coding.

For practical reasons, the following sections might not cover all the specialized business host classes that Ensemble provides. To find all the specialized business host classes that specify an adapter, perform a search in Studio, and look for Parameter ADAPTER within the EnsLib package. Studio then displays the names of the classes, which generally indicate which adapter they use.

Business Host Classes That Use File Adapters

Ensemble provides business host classes that use the file adapters. The following table summarizes the content types that Ensemble supports and indicates where to find information.

File Contents See
ASTM documents Ensemble ASTM Development Guide
DICOM documents Ensemble DICOM Development Guide
EDIFACT documents Ensemble EDIFACT Development Guide
HL7 version 2 messages Ensemble HL7 Version 2 Development Guide
X12 documents Ensemble X12 Development Guide
XML documents Ensemble XML Virtual Document Development Guide
Any Using the File Passthrough Service and Operation Classes” in Using File Adapters with Ensemble

Business Host Classes That Use FTP Adapters

Ensemble provides business host classes that use the FTP adapters. The following table summarizes the content types that Ensemble supports and indicates where to find information.

File Contents See
ASTM documents Ensemble ASTM Development Guide
EDIFACT documents Ensemble EDIFACT Development Guide
HL7 version 2 messages Ensemble HL7 Version 2 Development Guide
X12 documents Ensemble X12 Development Guide
XML documents Ensemble XML Virtual Document Development Guide
Any EnsLib.FTP.PassthroughServiceOpens in a new tab and EnsLib.FTP.PassthroughOperationOpens in a new tab in the Class Reference

Business Host Classes That Use HTTP Adapters

Ensemble provides business host classes that use the HTTP adapters. The following table summarizes the content types that Ensemble supports and indicates where to find information.

File Contents See
EDIFACT documents Ensemble EDIFACT Development Guide
HL7 version 2 messages Ensemble HL7 Version 2 Development Guide

Business Host Classes That Use SOAP

Ensemble provides business host classes that communicate via SOAP (in this special case, adapters are not necessarily involved). The following table summarizes the content types that Ensemble supports and indicates where to find information.

File Contents See
HL7 version 2 messages Ensemble HL7 Version 2 Development Guide

Business Host Classes That Use TCP Adapters

Ensemble provides business host classes that use TCP adapters. The following table summarizes the content types that Ensemble supports and indicates where to find information.

File Contents See
ASTM documents Ensemble ASTM Development Guide
HL7 version 2 messages Ensemble HL7 Version 2 Development Guide
X12 documents Ensemble X12 Development Guide
Any EnsLib.TCP.PassthroughServiceOpens in a new tab and EnsLib.TCP.PassthroughOperationOpens in a new tab in the Class Reference

Gateways

Caché and Ensemble both provide the SQL Gateway, which provides access from Caché to external databases via JDBC and ODBC. You can, for example, link to tables and views in external sources and access the data in them in the same way you access any local data. See Using the SQL Gateway.

Ensemble provides the following additional gateways:

  • The Object Gateway for .NET provides an easy way for Ensemble to interoperate with Microsoft .NET Framework components. The .NET Gateway can instantiate an external .NET object and manipulate it as if it were a native object within Ensemble.

    See Using the Object Gateway for .NET with Ensemble.

  • The Java Gateway provides an easy way for Ensemble to interoperate with Java components. The Java Gateway can instantiate an external Java object and manipulate it as if it were a native object within Ensemble.

    The Java Gateway also allows Ensemble to interact with JMS (Java Message Service) systems.

    See Using the Java Gateway.

FeedbackOpens in a new tab