public class ExtensionModel extends Object
Extensions can augment a system by providing new features in the form of operations and connection providers. What makes the extension model different from a class implementing a certain interface is the fact that extensions provide enough information at runtime so that they can be used without prior knowledge, and can be both executed or integrated into tooling seamlessly.
An extension model is not a miscellaneous group of methods, but can be seen (and may be derived from) an object model. As such, an extension will provide several ways to configure itself and will provide a set of operations that may be eventually executed.
The extension model doesn't just map a JVM object model. Extensions provide richer metadata, and a dynamic execution model, but more importantly they restrict the way operations are defined and used to a manageable subset that would deterministic data flow analysis.
An extension doesn't define any predefined syntax, evaluation order or execution paradigm. The operations provided are expected
to be used as individual building blocks in a bigger system, hence the name Extension
| Constructor and Description |
|---|
ExtensionModel(String name,
Category category,
String vendor,
Set<String> resources,
Set<ImportedTypeModel> importedTypes,
Set<SubTypesModel> subTypes,
Set<org.mule.metadata.api.model.ObjectType> types,
String minMuleVersion,
String version,
XmlDslModel xmlDslModel,
String description,
DisplayModel displayModel,
Set<ExternalLibraryModel> externalLibraryModels,
List<ConfigurationModel> configurationModels,
List<OperationModel> operationModels,
List<ConnectionProviderModel> connectionProviders,
List<SourceModel> sourceModels,
List<FunctionModel> functionModels,
List<ConstructModel> constructModels,
Set<ErrorModel> errorModels,
DeprecationModel deprecationModel) |
public ExtensionModel(String name, Category category, String vendor, Set<String> resources, Set<ImportedTypeModel> importedTypes, Set<SubTypesModel> subTypes, Set<org.mule.metadata.api.model.ObjectType> types, String minMuleVersion, String version, XmlDslModel xmlDslModel, String description, DisplayModel displayModel, Set<ExternalLibraryModel> externalLibraryModels, List<ConfigurationModel> configurationModels, List<OperationModel> operationModels, List<ConnectionProviderModel> connectionProviders, List<SourceModel> sourceModels, List<FunctionModel> functionModels, List<ConstructModel> constructModels, Set<ErrorModel> errorModels, DeprecationModel deprecationModel)
public String getName()
public String getDescription()
public Category getCategory()
public String getVendor()
public Set<ImportedTypeModel> getImportedTypes()
public Set<SubTypesModel> getSubTypes()
public Set<org.mule.metadata.api.model.ObjectType> getTypes()
public String getMinMuleVersion()
public String getVersion()
public XmlDslModel getXmlDslModel()
public Optional<DisplayModel> getDisplayModel()
public Set<ExternalLibraryModel> getExternalLibraryModels()
public List<ConfigurationModel> getConfigurationModels()
public List<OperationModel> getOperationModels()
public List<ConnectionProviderModel> getConnectionProviders()
public List<SourceModel> getSourceModels()
public List<FunctionModel> getFunctionModels()
public List<ConstructModel> getConstructModels()
public Set<ErrorModel> getErrorModels()
public Feature<DeprecationModel> getDeprecationModel()
public Optional<ConfigurationModel> getConfigurationModel(String name)
public Optional<ConstructModel> getConstructModel(String name)
public Optional<SourceModel> getSourceModel(String name)
public Optional<ConnectionProviderModel> getConnectionProviderModel(String name)
public Optional<OperationModel> getOperationModel(String name)
Copyright © 2025 MuleSoft, Inc.. All rights reserved.