XML SOAP JSON JAVA JavaScript API Proxy Relational Database Adapter Salesforce Adapter Swagger Adapter IBM MQ Adapter MongoDB Adapter News and Weather App

Integration

Overview

An Integration Service is an application component that represents the application interaction with an external system or data source. A service definition comprises the meta-data or the configurations required to exchange data with the external system or data source. For example, the configurations can be service type, Endpoint URL, service ID, type (HTTP/HTTPS), request parameters, response parameters, preprocessors and postprocessors, and authentication credentials if required.

For more hands-on approach on how to implement Integration Services, import and preview the News and Weather app using Quantum Visualizer.

Use Cases

If you want to develop an app which enables users to browse through news headlines with different categories such as Top Stories, World, Science, Technology, Sports, weather conditions and so on. In this scenario, you need to use Integration services of Quantum Fabric to fetch data from 3rd party news and weather APIs, which populates the same data in the front end of the app.

Workflow of Integration Services

The following workflow describes the various stages of Integration services:

Service Request flow
  1. Request
    A client sends a request to Quantum Fabric.
  2. Filter
  3. Message Parser (JSON, Form Encoded)

  4. Pre-Processor
    After Quantum Fabric receives the call from the device, Quantum Fabric executes custom Java/JS code based on the configured Pre-Processor before making any outbound calls.
    The custom Java/JS code is typically used to decide on what service to call. The custom code can also perform data validation on the request input.

  5. Request Builder (Velocity Template)
    For adapters (such as XML, JSON), user can format the request sent to an enterprise backend by defining a velocity template.

  6. Adapters
    An adapter is the component that communicates to the backend. it takes the formatted request from the request builder and sends it to the enterprise backend. In addition to the out of the box adapters, we can import adapters from Quantum Marketplace.

    NOTE: You can select the Enable pass-through check box in the Request Input tab for Quantum Fabric to forward the headers and body of clients request to the back end as is.

Service Response flow
  1. Adapters
    An adapter receives the response from the enterprise backend for further processing in Quantum Fabric.

  2. Response Builder
    Quantum Fabric extracts data from the backend payload using XPath or JSON Path in the form of response parameters.
  3. Post-Processor
    After extracting the data, Fabric executes the custom Java/JS code based on the configured Post-Processor.
    The custom Java/JS code is typically used to process the data before returning the data to the client. The custom code can also determine whether Fabric needs to make additional service calls.

  4. Message Formatter (JSON)

  5. Filter
  6. Response
    Quantum Fabric sends the transformed response (in JSON) to the client.

    NOTE: You can select the Enable pass-through check box in the Response Output tab for Quantum Fabric to forward the response from the back end as is to clients.

IMPORTANT: For more information on Quantum Middleware layers and how it works, refer to Middleware Pipeline Overview.

Supported Endpoint Adapters

Quantum Integration supports back-end connectivity to Web services such as XML, JSON, JavaScript, Database, Salesforce and so on. If external data sources do not expose the services to these well-known interfaces, you can build a Java service with a custom code.

Out of the box Quantum Fabric Integration Services support connectivity to the following different endpoint adapters.

Endpoint Type Description Endpoint Configuration

XML

An XML Adapter communicates with an external data source using an XML endpoint over the HTTP protocol.

SOAP

Simple Object Access Protocol (SOAP) is a messaging protocol that uses WSDL to describe the functionality of a SOAP based web service.

JSON JavaScript Object Notation (JSON) communicates with an external data source over the HTTP protocol, and returns a response in JSON format.
Java Java Adapter interacts with the software application that does not support restful APIs using a custom Java code.
JavaScript JavaScript integrates plain JavaScript services to applications in Quantum Fabric.
API Proxy

API Proxy forwards the request and response without intermediate transformation (without affecting the actual request and response).

Mock Data The Quantum Mock Data adapter capability helps you to continue to develop apps when the back-end services that an app connects to are not ready to be leveraged.
Quantum SAP Gateway Quantum SAP Gateway communicates with external SAP services over supported HTTP methods.
MuleSoft MuleSoft (Anypoint Platform™) is a platform that helps app developers to design custom APIs and deploy to a Mule Enterprise Service Bus runtime (ESB). With MuleSoft integration service in Quantum Fabric, developers can interact with more than 50 types of adapters.
AWS API Gateway AWS API Gateway connects to the services configured and deployed under API Gateway Service in Amazon Web Services.
Fabric Workflow Using the Fabric Workflow adapter, you can map Integration Trigger Workflows to an operation and invoke them directly as endpoints from external clients. The integration service when invoked then passes the request handling to workflow engine along with the Request Input. The Request Input is propagated as “Device_Request” scope to the workflow. Fabric then executes the workflow and responds back to the invoking integration service with an output response as mapped in the workflow designer. The integration service finally responds back to the clients with httpstatus, opstatus, workflow instance id and response output.
Database With Quantum Fabric database adapter, you can connect to your own database as an endpoint. After you configure the database adapter in Quantum Fabric Console, you can perform create, read, update, and delete (CRUD and Binary CRUD) operations on data in the tables and invoke stored procedures, functions, and views.
MongoDB With Quantum Fabric MongoDB database adapter, you can connect to your own MongoDB database as an endpoint. After you configure the MongoDB adapter, you can perform create, read, update, and delete (CRUD) operations on MongoDB collections and documents.
RAML RESTful API Modeling Language (RAML) is a YAML-based language for describing RESTful APIs.
Salesforce Salesforce uses a protocol-specific adapter to connect to an external system and access its data.
IBM MQ

IBM MQ server 9.0.0 version is a messaging middleware that simplifies and accelerates the integration of diverse applications and business data across multiple platforms. Quantum uses the IBM MQ service to secure the message delivery and reduce the risk of data loss.

SAP JCo

Quantum Fabric allows you to access and use the external SAP services using custom SAP Connector. You must load the required Business Application Programming Interface (BAPI) functions to define an SAP service. The BAPI files contain the SAP methods and functions.

Open API (Swagger) Swagger is a powerful open API specification framework backed by a large ecosystem of tools that helps you design, build, document, and consume your RESTful APIs.
Email Adapter The Email Adapter is used to send emails from the client app. You can also view the status of the emails that were sent by using the Email service. The email requests are sent to the Quantum Fabric server which in-turn redirects them to the Quantum Engagement server.
AWS S3 The AWS S3 service on Quantum Fabric connects to the specified S3 bucket, and also performs supported operations.
Cloudian The Cloudian service on Quantum Fabric connects to the specified S3 bucket on a HyperStore, and also performs supported operations.
Fabric Admin Adapter The Fabric Admin Adapter is used to perform administrative tasks (exposed via secure APIs) on a Fabric run-time server. With the adapter, external systems can invoke the provided APIs to read or modify settings on the Fabric server.
Red Hat PAM The Red Hat PAM adapter in Fabric Console exposes the services and operations that are created by using the Red Hat PAM Business Central Interface.