Mule DevKit enables developers to build their own extensions to Mule, including connectors and other components, while shielding developers from much of the complexity involved in building an extension that integrates with Mule ESB and Mule Studio as if part of the original product.
DevKit eliminates most of the hurdles you face when developing the two major types of Mule extension:
- Cloud connectors, which extend Mule integration to SaaS services and on-premise applications not supported out of the box;
- Modules, which provide core capabilities to Mule applications such as transformation, filtering, routing, or custom business logic.
Through Java annotations you apply to your code, most of the work of integrating with Mule ESB and Studio is handled for you, leaving you to focus on building out the logic of your connector and its interface to the remote system.
The dozens of connectors available for Mule at this writing are built with DevKit, and many customers have used DevKit to build connectors to in-house legacy systems and other applications.
What is this guide?
This guide will:
- Provide more background on DevKit, the types of components one can build, and the different functions of each
- Guide the developer through setting up a working development environment for building extensions with DevKit
- Introduce the critical DevKit Java annotations and other information needed to build a connector, in the context of examples of building basic working connectors for Salesforce.com
Where should I start?
- Review DevKit Overview for some initial orientation.
- To get hands on with DevKit and build a real connector to Salesforce.com, work through either the Cloud Connector Devkit Cookbook or the Cloud Connector OAuth Devkit Cookbook. These tutorials take only a short time for moderately experienced Java developers (less than two hours).
Each of these takes you through an iterative, incremental process to set up your DevKit development environment and build a working connector that queries Salesforce.com via a SOAP API. The main difference between them is the authentication method:
- The Cloud Connector Devkit Cookbook uses a username and password.
The Cloud Connector OAuth Devkit Cookbook uses OAuth 2.
Once you complete this process, you will have:
- a working development environment;
- experience incrementally building up the functionality of a connector, with it testable at each step
- Then branch out to explore more aspects of DevKit functionality as presented in the supplementary documentation:
DevKit documentation is currently being expanded to cover a wider range of connector scenarios and to cover the construction of other types of Mule modules. Watch this space for updates. For now, though, the resources available include:
- JavaDoc for the complete set of DevKit annotations
- Supplementary documentation for DevKit:
- DevKit Overview
- JavaDoc Reference for DevKit Annotations
- Cloud Connector Devkit Cookbook
- Cloud Connector OAuth Devkit Cookbook
- Building Connectors
- Writing Custom Modules
- Integration Points with ESB and Studio
- Testing Extensions
- Documenting Mule Extensions
- Sharing your Module or Connector
- Packaging Mule Extensions
- DevKit Glossary
- Your First Cloud Connector
If you need help while developing your Cloud Connector, visit the MuleForge Forums and post your question to the community.
Found a bug?
If you find a bug in one of the cloud connectors or the Mule DevKit itself, please report it with our bug tracker.