SlideShare a Scribd company logo
Anypoint Connector DevKit
0
Introduction
• The Anypoint Connector DevKit, or simply DevKit, enables the
development of Anypoint Connectors. An Anypoint Connector is an
extension module to the MuleSoft Anypoint Platform that facilitates
communication between third-party systems/APIs and Mule
applications.
Developing with DevKit
• This is what you need to develop DevKit-based Anypoint Connectors on your system with your instance of Anypoint Studio.
• See detailed instructions here on how to install: Java JDK version 8, Apache Maven, Anypoint Studio, and Anypoint DevKit Plugin to build and test
your connector. You can develop a connector using Windows, Mac, or Linux.
• New Connector:
• Anypoint Connector Developer Guide - Set up Anypoint Studio and install the connector plugin.
• Existing Connector:
• Click File > Import > Anypoint Studio > Anypoint Connector Project from External Location, choose a URL or a .zip file, and complete the wizard to
locate and import the project.
• See also Creating a SOAP Connector Creating a REST Connector Using Jersey.
• Determine resource access - Each resource has a different access method, such as REST, SOAP, FTP, or the
Java SDK features.
• Choose an authentication mechanism - Mule supports OAuth V1 or V2, and username and password
authentication (known as connection management), which can be used for protocols such as API Key, SAML,
NTLM, Kerberos, or LDAP.
• Choose the connector’s data model - Models can be static Java objects or dynamic objects. You can use
DataSense - Determine what information the target resource expects.
• Add connector @ attribute annotations - Create code for your connector containing the @ attributes that
Mule uses to designate the important parts of your connector.
• Code tests - Tests can be unit tests, functional tests, and Studio interoperability tests.
• Document your connector - MuleSoft provides a template that helps you fill in the blanks to create
documentation to help your staff and others understand the features and use of your connector.
• Package your connector.
DevKit Features
• Visual design and implementation using Anypoint Studio with an Eclipse-based interface that simplifies and speeds up
development.
• Maven support.
• Connector packaging tools.
• Authentication support for multiple types of authentication, including OAuth and username and password authentication.
• DataSense support to acquire remote metadata.
• Extensive testing capability.
• Examples, training, and support to simplify development startup.
• Batch, Query Pagination, and DataSense Query Language support.
What is a Connector?
• An Anypoint Connector is an extension module that eases the interaction
between a Mule application and external resources, such as a databases or
APIs, through REST, SOAP, or the Java SDK.
• As reusable components that hide API complexity from the integration
developer, custom connectors facilitate integration with SaaS and on-
premise web services, applications, and data sources. Connectors built
using Anypoint DevKit in Anypoint Studio, running Mule runtime
environments, act as extensions of Mule Anypoint Platform.
Connector Architecture
• Connectors operate within Mule applications, which are built up from
Mule Flows, and external resources, which are the targeted
resources.
• A Mule connector has two operational sides. The Mule-facing side
communicates with a resource’s target-facing client side to enable
content to travel between the Mule applications, and the external
target-facing resource.
Mule-Facing Functionality
• From the Mule-facing side, a connector consists of:
• Main Java class. Java code that you annotate with the @Connector attribute. See the
Anypoint DevKit API Reference for information about Anypoint Connector DevKit
annotations. See Java annotations for information on how annotations work.
• Connector attributes. Properties of the @Connector class that you annotate with the
@Configurable attribute.
• Methods. Functionality that you annotate with the @Processor attribute.
• Additional annotations define authentication-related functionality, such as
connection management. Annotations allow you to control the layout of
the Anypoint Studio dialogues for the connector as well. The data model
and exceptions that either raise or propagate are also Mule-facing classes.
• DevKit generates a scaffold connector when you create your Anypoint
Connector project in Studio. This scaffold connector includes the
@Connector class, the @Configurable attributes, the @Processor methods,
and authentication logic to build out your connector.
Target-Facing Functionality
• The target facing or client facing side of a connector depends on the client
technology that enables access to the resource. This functionality consists
of a class library and one or more classes that @Connector classes use to
access client functionality. This functionality is called the client class.
• The client class in turn generally depends on other classes to actually
implement calls to the targeted resource. Depending on your target, some
of these classes may be generated or provided for you. For example, if you
have a Java client library, or are working with a SOAP or REST services,
most of the client code is implemented there. In other cases, you have to
write the code yourself.
Coding a Connector
• DevKit lets you build connectors from scratch. Before creating your
own connector, check the Anypoint Exchange for available
connectors. The connectors page also lists Community open source
connectors that let you contribute to the growing community of
public connector development.
Connector Data Model
• The data model for the connector consists of the objects passed into
and out of the exposed operations. While many Web services accept
and return XML or JSON data, a proper Mule connector must
translate the data format the client uses into Java objects – either
POJOs or key-value maps which represent the data objects sent to,
and returned from, the target. (Returning raw XML or JSON responses
to Mule is one marker for an immature, improperly implemented
connector.)
REST Versus SOAP
• REST simplifies access to HTTP using POST, GET, PUT, and DELETE calls to provide
access to creating, getting, putting, and deleting information on a resource.
• DevKit currently provides a strategy for Creating a Connector for a RESTful API
Using Jersey to build a REST API-supported connector.
• SOAP is a traditional means of communicating with a resource and requires a
WSDL file, which is an XML file that specifies all aspects of a Java class’s structure,
methods, properties, and documentation. SOAP is an industry standard with tools
for governance, building, and schema information. DevKit provides a tools that
helps building a connector using a WSDL file.
DevKit 3.8 Example Default Connector
• The following is an example of the starting @Connector and
@Configuration classes that DevKit 3.8 create

More Related Content

What's hot

Mule database-connectors
Mule database-connectorsMule database-connectors
Mule database-connectors
Phaniu
 
MuleSoft Consuming Soap Web Service - CXF Proxy-Client Module
MuleSoft Consuming Soap Web Service - CXF Proxy-Client ModuleMuleSoft Consuming Soap Web Service - CXF Proxy-Client Module
MuleSoft Consuming Soap Web Service - CXF Proxy-Client Module
Vince Soliza
 
Mule concepts components
Mule concepts componentsMule concepts components
Mule concepts components
kunal vishe
 
Mule soa
Mule soaMule soa
Mule soa
Khasim Saheb
 
Mule real-world-old
Mule real-world-oldMule real-world-old
Mule real-world-old
Praneethchampion
 
Global Scale ESB with Mule
Global Scale ESB with MuleGlobal Scale ESB with Mule
Global Scale ESB with Mule
Andrew Kennedy
 
Mule ESB
Mule ESBMule ESB
Mule ESBniravn
 
4. mule real-world-old
4. mule real-world-old4. mule real-world-old
4. mule real-world-old
AbdulImrankhan7
 
A Short Introduction of Mule ESB
A Short Introduction of Mule ESBA Short Introduction of Mule ESB
A Short Introduction of Mule ESB
Swapnil Sahu
 
Mule Fundamentals
Mule FundamentalsMule Fundamentals
Mule Fundamentals
Khasim Cise
 
Mule anypoint data gateway
Mule  anypoint data gatewayMule  anypoint data gateway
Mule anypoint data gateway
D.Rajesh Kumar
 
ESB introduction using Mule
ESB introduction using MuleESB introduction using Mule
ESB introduction using Mule
Khasim Cise
 
Mule enterprise service introduction
Mule enterprise service introductionMule enterprise service introduction
Mule enterprise service introduction
Son Nguyen
 
Mule esb presentation 2015
Mule esb presentation 2015Mule esb presentation 2015
Mule esb presentation 2015
Nagesh Penumarthy
 
Bindings of components in mule
Bindings of components in muleBindings of components in mule
Bindings of components in mule
sathishmca143
 
A Workhorse Named Mule
A Workhorse Named MuleA Workhorse Named Mule
A Workhorse Named Mule
David Dossot
 
Anypoint data gateway
Anypoint data gatewayAnypoint data gateway
Anypoint data gateway
Khan625
 
Webservice vm in mule
Webservice vm in muleWebservice vm in mule
Webservice vm in mule
Praneethchampion
 
Core concepts in mule
Core concepts in muleCore concepts in mule
Core concepts in mule
Sindhu VL
 
Mule in a nutshell
Mule in a nutshellMule in a nutshell
Mule in a nutshell
Ravinder Singh
 

What's hot (20)

Mule database-connectors
Mule database-connectorsMule database-connectors
Mule database-connectors
 
MuleSoft Consuming Soap Web Service - CXF Proxy-Client Module
MuleSoft Consuming Soap Web Service - CXF Proxy-Client ModuleMuleSoft Consuming Soap Web Service - CXF Proxy-Client Module
MuleSoft Consuming Soap Web Service - CXF Proxy-Client Module
 
Mule concepts components
Mule concepts componentsMule concepts components
Mule concepts components
 
Mule soa
Mule soaMule soa
Mule soa
 
Mule real-world-old
Mule real-world-oldMule real-world-old
Mule real-world-old
 
Global Scale ESB with Mule
Global Scale ESB with MuleGlobal Scale ESB with Mule
Global Scale ESB with Mule
 
Mule ESB
Mule ESBMule ESB
Mule ESB
 
4. mule real-world-old
4. mule real-world-old4. mule real-world-old
4. mule real-world-old
 
A Short Introduction of Mule ESB
A Short Introduction of Mule ESBA Short Introduction of Mule ESB
A Short Introduction of Mule ESB
 
Mule Fundamentals
Mule FundamentalsMule Fundamentals
Mule Fundamentals
 
Mule anypoint data gateway
Mule  anypoint data gatewayMule  anypoint data gateway
Mule anypoint data gateway
 
ESB introduction using Mule
ESB introduction using MuleESB introduction using Mule
ESB introduction using Mule
 
Mule enterprise service introduction
Mule enterprise service introductionMule enterprise service introduction
Mule enterprise service introduction
 
Mule esb presentation 2015
Mule esb presentation 2015Mule esb presentation 2015
Mule esb presentation 2015
 
Bindings of components in mule
Bindings of components in muleBindings of components in mule
Bindings of components in mule
 
A Workhorse Named Mule
A Workhorse Named MuleA Workhorse Named Mule
A Workhorse Named Mule
 
Anypoint data gateway
Anypoint data gatewayAnypoint data gateway
Anypoint data gateway
 
Webservice vm in mule
Webservice vm in muleWebservice vm in mule
Webservice vm in mule
 
Core concepts in mule
Core concepts in muleCore concepts in mule
Core concepts in mule
 
Mule in a nutshell
Mule in a nutshellMule in a nutshell
Mule in a nutshell
 

Similar to Anypoint connector dev kit

Anypointconnectordevkit 160816041722
Anypointconnectordevkit 160816041722Anypointconnectordevkit 160816041722
Anypointconnectordevkit 160816041722
ppts123456
 
Anypoint connector dev kit
Anypoint connector dev kitAnypoint connector dev kit
Anypoint connector dev kit
himajareddys
 
How to build custom connectors in MuleSOft
How to build custom connectors in MuleSOftHow to build custom connectors in MuleSOft
How to build custom connectors in MuleSOft
Santhosh Ramagiri
 
Creating a custom connector in mule
Creating a custom connector in muleCreating a custom connector in mule
Creating a custom connector in mule
Achyuta Lakshmi
 
Creating a custom connector in mule
Creating a custom connector in muleCreating a custom connector in mule
Creating a custom connector in mule
Achyuta Lakshmi
 
Custom connectorsinmule
Custom connectorsinmuleCustom connectorsinmule
Custom connectorsinmule
Ajay Rana
 
Basics of Mulesoft Anypoint connector
Basics of Mulesoft Anypoint connectorBasics of Mulesoft Anypoint connector
Basics of Mulesoft Anypoint connector
akshay yeluru
 
Anypoint connector basics
Anypoint connector basicsAnypoint connector basics
Anypoint connector basics
Ramakrishna kapa
 
Anypoint Connector DevKit - Part I
Anypoint Connector DevKit - Part IAnypoint Connector DevKit - Part I
Anypoint Connector DevKit - Part I
RAMANAN T D
 
Anypoint connector Roadmap
Anypoint connector RoadmapAnypoint connector Roadmap
Anypoint connector Roadmap
danishsm84
 
Mule anypoint connector dev kit
Mule  anypoint connector dev kitMule  anypoint connector dev kit
Mule anypoint connector dev kit
D.Rajesh Kumar
 
Mule anypoint connector
Mule  anypoint connectorMule  anypoint connector
Mule anypoint connector
D.Rajesh Kumar
 
Mule tcat server
Mule  tcat serverMule  tcat server
Mule tcat server
D.Rajesh Kumar
 
Integrating SharePoint 2010, 2013 and Visual Studio Lightswitch by Rob Windso...
Integrating SharePoint 2010, 2013 and Visual Studio Lightswitch by Rob Windso...Integrating SharePoint 2010, 2013 and Visual Studio Lightswitch by Rob Windso...
Integrating SharePoint 2010, 2013 and Visual Studio Lightswitch by Rob Windso...
SPTechCon
 
Ananth_Ravishankar
Ananth_RavishankarAnanth_Ravishankar
Ananth_Ravishankarananth R
 
Extend The Power Platform with Custom Connectors - CollabDays NL 2022
Extend The Power Platform with Custom Connectors - CollabDays NL 2022Extend The Power Platform with Custom Connectors - CollabDays NL 2022
Extend The Power Platform with Custom Connectors - CollabDays NL 2022
Daniel Laskewitz
 
Cloud compiler - Minor Project by students of CBPGEC
Cloud compiler - Minor Project by students of CBPGEC  Cloud compiler - Minor Project by students of CBPGEC
Cloud compiler - Minor Project by students of CBPGEC
vipin kumar
 
4. J2EE.pptx
4. J2EE.pptx4. J2EE.pptx
4. J2EE.pptx
HariChandruduM
 
Introduction to Spring Framework
Introduction to Spring FrameworkIntroduction to Spring Framework
Introduction to Spring Framework
ASG
 
Dev ops using Jenkins
Dev ops using JenkinsDev ops using Jenkins

Similar to Anypoint connector dev kit (20)

Anypointconnectordevkit 160816041722
Anypointconnectordevkit 160816041722Anypointconnectordevkit 160816041722
Anypointconnectordevkit 160816041722
 
Anypoint connector dev kit
Anypoint connector dev kitAnypoint connector dev kit
Anypoint connector dev kit
 
How to build custom connectors in MuleSOft
How to build custom connectors in MuleSOftHow to build custom connectors in MuleSOft
How to build custom connectors in MuleSOft
 
Creating a custom connector in mule
Creating a custom connector in muleCreating a custom connector in mule
Creating a custom connector in mule
 
Creating a custom connector in mule
Creating a custom connector in muleCreating a custom connector in mule
Creating a custom connector in mule
 
Custom connectorsinmule
Custom connectorsinmuleCustom connectorsinmule
Custom connectorsinmule
 
Basics of Mulesoft Anypoint connector
Basics of Mulesoft Anypoint connectorBasics of Mulesoft Anypoint connector
Basics of Mulesoft Anypoint connector
 
Anypoint connector basics
Anypoint connector basicsAnypoint connector basics
Anypoint connector basics
 
Anypoint Connector DevKit - Part I
Anypoint Connector DevKit - Part IAnypoint Connector DevKit - Part I
Anypoint Connector DevKit - Part I
 
Anypoint connector Roadmap
Anypoint connector RoadmapAnypoint connector Roadmap
Anypoint connector Roadmap
 
Mule anypoint connector dev kit
Mule  anypoint connector dev kitMule  anypoint connector dev kit
Mule anypoint connector dev kit
 
Mule anypoint connector
Mule  anypoint connectorMule  anypoint connector
Mule anypoint connector
 
Mule tcat server
Mule  tcat serverMule  tcat server
Mule tcat server
 
Integrating SharePoint 2010, 2013 and Visual Studio Lightswitch by Rob Windso...
Integrating SharePoint 2010, 2013 and Visual Studio Lightswitch by Rob Windso...Integrating SharePoint 2010, 2013 and Visual Studio Lightswitch by Rob Windso...
Integrating SharePoint 2010, 2013 and Visual Studio Lightswitch by Rob Windso...
 
Ananth_Ravishankar
Ananth_RavishankarAnanth_Ravishankar
Ananth_Ravishankar
 
Extend The Power Platform with Custom Connectors - CollabDays NL 2022
Extend The Power Platform with Custom Connectors - CollabDays NL 2022Extend The Power Platform with Custom Connectors - CollabDays NL 2022
Extend The Power Platform with Custom Connectors - CollabDays NL 2022
 
Cloud compiler - Minor Project by students of CBPGEC
Cloud compiler - Minor Project by students of CBPGEC  Cloud compiler - Minor Project by students of CBPGEC
Cloud compiler - Minor Project by students of CBPGEC
 
4. J2EE.pptx
4. J2EE.pptx4. J2EE.pptx
4. J2EE.pptx
 
Introduction to Spring Framework
Introduction to Spring FrameworkIntroduction to Spring Framework
Introduction to Spring Framework
 
Dev ops using Jenkins
Dev ops using JenkinsDev ops using Jenkins
Dev ops using Jenkins
 

More from Son Nguyen

Your new maven friend – the mule maven
Your new maven friend – the mule mavenYour new maven friend – the mule maven
Your new maven friend – the mule maven
Son Nguyen
 
Soa governance for the modern business
Soa governance for the modern businessSoa governance for the modern business
Soa governance for the modern business
Son Nguyen
 
Quality sdk for your apis in minutes!
Quality sdk for your apis in minutes!Quality sdk for your apis in minutes!
Quality sdk for your apis in minutes!
Son Nguyen
 
Maven tools & archetypes
Maven tools & archetypesMaven tools & archetypes
Maven tools & archetypes
Son Nguyen
 
Let api change your relationship with your doctor
Let api change your relationship with your doctorLet api change your relationship with your doctor
Let api change your relationship with your doctor
Son Nguyen
 
Increase revenue and reinvigorate your business with api
Increase revenue and reinvigorate your business with apiIncrease revenue and reinvigorate your business with api
Increase revenue and reinvigorate your business with api
Son Nguyen
 
How to – wrap soap web service around a database
How to – wrap soap web service around a databaseHow to – wrap soap web service around a database
How to – wrap soap web service around a database
Son Nguyen
 
How to – rest api proxy to soap webservice
How to – rest api proxy to soap webserviceHow to – rest api proxy to soap webservice
How to – rest api proxy to soap webservice
Son Nguyen
 
Anypoint runtime manager v1
Anypoint runtime manager v1Anypoint runtime manager v1
Anypoint runtime manager v1
Son Nguyen
 
A good api strategy can help turn your
A good api strategy can help turn yourA good api strategy can help turn your
A good api strategy can help turn your
Son Nguyen
 
10 steps to design and build the perfect
10 steps to design and build the perfect10 steps to design and build the perfect
10 steps to design and build the perfect
Son Nguyen
 
What is the difference between using private flow
What is the difference between using private flowWhat is the difference between using private flow
What is the difference between using private flow
Son Nguyen
 
Troubleshooting mule
Troubleshooting muleTroubleshooting mule
Troubleshooting mule
Son Nguyen
 
Running mule as worker role on azure
Running mule as worker role on azureRunning mule as worker role on azure
Running mule as worker role on azure
Son Nguyen
 
Real time data processing with anypoint connector for kafka
Real time data processing with anypoint connector for kafkaReal time data processing with anypoint connector for kafka
Real time data processing with anypoint connector for kafka
Son Nguyen
 
Performance tuning in mule
Performance tuning in mulePerformance tuning in mule
Performance tuning in mule
Son Nguyen
 
Mule intelli j tips
Mule intelli j tipsMule intelli j tips
Mule intelli j tips
Son Nguyen
 
Introducing the anypoint connector for redis
Introducing the anypoint connector for redisIntroducing the anypoint connector for redis
Introducing the anypoint connector for redis
Son Nguyen
 
How to – data integrity checks in batch processing
How to – data integrity checks in batch processingHow to – data integrity checks in batch processing
How to – data integrity checks in batch processing
Son Nguyen
 
How soa paved the way for cloud
How soa paved the way for cloudHow soa paved the way for cloud
How soa paved the way for cloud
Son Nguyen
 

More from Son Nguyen (20)

Your new maven friend – the mule maven
Your new maven friend – the mule mavenYour new maven friend – the mule maven
Your new maven friend – the mule maven
 
Soa governance for the modern business
Soa governance for the modern businessSoa governance for the modern business
Soa governance for the modern business
 
Quality sdk for your apis in minutes!
Quality sdk for your apis in minutes!Quality sdk for your apis in minutes!
Quality sdk for your apis in minutes!
 
Maven tools & archetypes
Maven tools & archetypesMaven tools & archetypes
Maven tools & archetypes
 
Let api change your relationship with your doctor
Let api change your relationship with your doctorLet api change your relationship with your doctor
Let api change your relationship with your doctor
 
Increase revenue and reinvigorate your business with api
Increase revenue and reinvigorate your business with apiIncrease revenue and reinvigorate your business with api
Increase revenue and reinvigorate your business with api
 
How to – wrap soap web service around a database
How to – wrap soap web service around a databaseHow to – wrap soap web service around a database
How to – wrap soap web service around a database
 
How to – rest api proxy to soap webservice
How to – rest api proxy to soap webserviceHow to – rest api proxy to soap webservice
How to – rest api proxy to soap webservice
 
Anypoint runtime manager v1
Anypoint runtime manager v1Anypoint runtime manager v1
Anypoint runtime manager v1
 
A good api strategy can help turn your
A good api strategy can help turn yourA good api strategy can help turn your
A good api strategy can help turn your
 
10 steps to design and build the perfect
10 steps to design and build the perfect10 steps to design and build the perfect
10 steps to design and build the perfect
 
What is the difference between using private flow
What is the difference between using private flowWhat is the difference between using private flow
What is the difference between using private flow
 
Troubleshooting mule
Troubleshooting muleTroubleshooting mule
Troubleshooting mule
 
Running mule as worker role on azure
Running mule as worker role on azureRunning mule as worker role on azure
Running mule as worker role on azure
 
Real time data processing with anypoint connector for kafka
Real time data processing with anypoint connector for kafkaReal time data processing with anypoint connector for kafka
Real time data processing with anypoint connector for kafka
 
Performance tuning in mule
Performance tuning in mulePerformance tuning in mule
Performance tuning in mule
 
Mule intelli j tips
Mule intelli j tipsMule intelli j tips
Mule intelli j tips
 
Introducing the anypoint connector for redis
Introducing the anypoint connector for redisIntroducing the anypoint connector for redis
Introducing the anypoint connector for redis
 
How to – data integrity checks in batch processing
How to – data integrity checks in batch processingHow to – data integrity checks in batch processing
How to – data integrity checks in batch processing
 
How soa paved the way for cloud
How soa paved the way for cloudHow soa paved the way for cloud
How soa paved the way for cloud
 

Recently uploaded

From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 

Recently uploaded (20)

From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 

Anypoint connector dev kit

  • 2. Introduction • The Anypoint Connector DevKit, or simply DevKit, enables the development of Anypoint Connectors. An Anypoint Connector is an extension module to the MuleSoft Anypoint Platform that facilitates communication between third-party systems/APIs and Mule applications.
  • 3. Developing with DevKit • This is what you need to develop DevKit-based Anypoint Connectors on your system with your instance of Anypoint Studio. • See detailed instructions here on how to install: Java JDK version 8, Apache Maven, Anypoint Studio, and Anypoint DevKit Plugin to build and test your connector. You can develop a connector using Windows, Mac, or Linux. • New Connector: • Anypoint Connector Developer Guide - Set up Anypoint Studio and install the connector plugin. • Existing Connector: • Click File > Import > Anypoint Studio > Anypoint Connector Project from External Location, choose a URL or a .zip file, and complete the wizard to locate and import the project. • See also Creating a SOAP Connector Creating a REST Connector Using Jersey.
  • 4. • Determine resource access - Each resource has a different access method, such as REST, SOAP, FTP, or the Java SDK features. • Choose an authentication mechanism - Mule supports OAuth V1 or V2, and username and password authentication (known as connection management), which can be used for protocols such as API Key, SAML, NTLM, Kerberos, or LDAP. • Choose the connector’s data model - Models can be static Java objects or dynamic objects. You can use DataSense - Determine what information the target resource expects. • Add connector @ attribute annotations - Create code for your connector containing the @ attributes that Mule uses to designate the important parts of your connector. • Code tests - Tests can be unit tests, functional tests, and Studio interoperability tests. • Document your connector - MuleSoft provides a template that helps you fill in the blanks to create documentation to help your staff and others understand the features and use of your connector. • Package your connector.
  • 5. DevKit Features • Visual design and implementation using Anypoint Studio with an Eclipse-based interface that simplifies and speeds up development. • Maven support. • Connector packaging tools. • Authentication support for multiple types of authentication, including OAuth and username and password authentication. • DataSense support to acquire remote metadata. • Extensive testing capability. • Examples, training, and support to simplify development startup. • Batch, Query Pagination, and DataSense Query Language support.
  • 6. What is a Connector? • An Anypoint Connector is an extension module that eases the interaction between a Mule application and external resources, such as a databases or APIs, through REST, SOAP, or the Java SDK. • As reusable components that hide API complexity from the integration developer, custom connectors facilitate integration with SaaS and on- premise web services, applications, and data sources. Connectors built using Anypoint DevKit in Anypoint Studio, running Mule runtime environments, act as extensions of Mule Anypoint Platform.
  • 7. Connector Architecture • Connectors operate within Mule applications, which are built up from Mule Flows, and external resources, which are the targeted resources. • A Mule connector has two operational sides. The Mule-facing side communicates with a resource’s target-facing client side to enable content to travel between the Mule applications, and the external target-facing resource.
  • 8. Mule-Facing Functionality • From the Mule-facing side, a connector consists of: • Main Java class. Java code that you annotate with the @Connector attribute. See the Anypoint DevKit API Reference for information about Anypoint Connector DevKit annotations. See Java annotations for information on how annotations work. • Connector attributes. Properties of the @Connector class that you annotate with the @Configurable attribute. • Methods. Functionality that you annotate with the @Processor attribute.
  • 9. • Additional annotations define authentication-related functionality, such as connection management. Annotations allow you to control the layout of the Anypoint Studio dialogues for the connector as well. The data model and exceptions that either raise or propagate are also Mule-facing classes. • DevKit generates a scaffold connector when you create your Anypoint Connector project in Studio. This scaffold connector includes the @Connector class, the @Configurable attributes, the @Processor methods, and authentication logic to build out your connector.
  • 10. Target-Facing Functionality • The target facing or client facing side of a connector depends on the client technology that enables access to the resource. This functionality consists of a class library and one or more classes that @Connector classes use to access client functionality. This functionality is called the client class. • The client class in turn generally depends on other classes to actually implement calls to the targeted resource. Depending on your target, some of these classes may be generated or provided for you. For example, if you have a Java client library, or are working with a SOAP or REST services, most of the client code is implemented there. In other cases, you have to write the code yourself.
  • 11. Coding a Connector • DevKit lets you build connectors from scratch. Before creating your own connector, check the Anypoint Exchange for available connectors. The connectors page also lists Community open source connectors that let you contribute to the growing community of public connector development.
  • 12. Connector Data Model • The data model for the connector consists of the objects passed into and out of the exposed operations. While many Web services accept and return XML or JSON data, a proper Mule connector must translate the data format the client uses into Java objects – either POJOs or key-value maps which represent the data objects sent to, and returned from, the target. (Returning raw XML or JSON responses to Mule is one marker for an immature, improperly implemented connector.)
  • 13. REST Versus SOAP • REST simplifies access to HTTP using POST, GET, PUT, and DELETE calls to provide access to creating, getting, putting, and deleting information on a resource. • DevKit currently provides a strategy for Creating a Connector for a RESTful API Using Jersey to build a REST API-supported connector. • SOAP is a traditional means of communicating with a resource and requires a WSDL file, which is an XML file that specifies all aspects of a Java class’s structure, methods, properties, and documentation. SOAP is an industry standard with tools for governance, building, and schema information. DevKit provides a tools that helps building a connector using a WSDL file.
  • 14. DevKit 3.8 Example Default Connector • The following is an example of the starting @Connector and @Configuration classes that DevKit 3.8 create