Anyone that has used DevKit to write a Mule extension and then wanted to add it to Studio, may have notice that the extension will appear under the Cloud Connectors category in the palette. This is not a problem when the extension is actually a Cloud Connector, but is sort of a problem when it was something else (for example a component like the LDAP connector). This is not an issue anymore since DevKit 3.3.2, as you can now use the @Category annotation at class definition level (Connector or Module) to select under which category you want your extension to be listed in:
It is important to mention that:
- You can only add the connector to one of the existing Studio categories (this means you cannot define your own category)
- The values for name and description attributes of @Category need to have specific values (please don’t be creative), as shown in the following list:
- Endpoints: org.mule.tooling.category.endpoints
- Scopes: org.mule.tooling.category.scopes
- Components: org.mule.tooling.category.core
- Transformers: org.mule.tooling.category.transformers
- Filters: org.mule.tooling.category.filters
- Flow Control: org.mule.tooling.category.flowControl
- Error Handling: org.mule.tooling.ui.modules.core.exceptions
- Cloud Connectors (DEFAULT): org.mule.tooling.category.cloudconnector
- Miscellaneous: org.mule.tooling.ui.modules.core.miscellaneous
- Security: org.mule.tooling.category.security
Too ‘meh’ to build the category annotation yourself? Just copy/paste from the following gist:
Hope this tip helps you place your Mule extensions under the right Studio category.