{
  "name": "Integration Eye Logging Module",
  "description": "This is the main class of an extension, is the entry point from which configurations, connection providers, operations and sources are going to be declared.",
  "version": "2.2.4",
  "vendor": "Integsoft s.r.o.",
  "category": "COMMUNITY",
  "xmlDsl": {
    "prefix": "ilm",
    "namespace": "http://www.integsoft.cz/schema/mule/logging",
    "schemaLocation": "http://www.integsoft.cz/schema/mule/logging/current/mule-ilm.xsd",
    "schemaVersion": "2.2.4",
    "xsdFileName": "mule-ilm.xsd"
  },
  "resources": [],
  "subTypes": [
    {
      "baseType": {
        "format": "java",
        "type": "@ref:cz.integsoft.mule.ilm.api.http.authentication.HttpRequestAuthentication"
      },
      "subTypes": [
        {
          "format": "java",
          "type": "@ref:cz.integsoft.mule.ilm.api.http.authentication.BasicAuthentication"
        },
        {
          "format": "java",
          "type": "@ref:cz.integsoft.mule.ilm.api.http.authentication.DigestAuthentication"
        },
        {
          "format": "java",
          "type": "@ref:cz.integsoft.mule.ilm.api.http.authentication.NtlmAuthentication"
        }
      ]
    },
    {
      "baseType": {
        "format": "java",
        "type": "@ref:cz.integsoft.mule.ilm.api.http.proxy.HttpProxyConfig"
      },
      "subTypes": [
        {
          "format": "java",
          "type": "@ref:cz.integsoft.mule.ilm.api.http.proxy.DefaultProxyConfig"
        },
        {
          "format": "java",
          "type": "@ref:cz.integsoft.mule.ilm.api.http.proxy.DefaultNtlmProxyConfig"
        }
      ]
    },
    {
      "baseType": {
        "format": "java",
        "type": "@ref:cz.integsoft.mule.ilm.api.file.RollingPolicy"
      },
      "subTypes": [
        {
          "format": "java",
          "type": "@ref:cz.integsoft.mule.ilm.api.file.SizeBasedRollingPolicy"
        },
        {
          "format": "java",
          "type": "@ref:cz.integsoft.mule.ilm.api.file.TimeBasedRollingPolicy"
        }
      ]
    },
    {
      "baseType": {
        "format": "java",
        "type": "@ref:cz.integsoft.mule.ilm.api.file.FileWriterFactory"
      },
      "subTypes": [
        {
          "format": "java",
          "type": "@ref:cz.integsoft.mule.ilm.api.file.CharacterFileWriterFactory"
        }
      ]
    }
  ],
  "privilegedPackages": [],
  "privilegedArtifacts": [],
  "externalLibraries": [],
  "importedTypes": [],
  "configurations": [
    {
      "stereotype": {
        "type": "DATABASE-LOGGING-CONFIG",
        "namespace": "ILM",
        "parent": {
          "type": "MODULE_CONFIG",
          "namespace": "MULE"
        }
      },
      "parameterGroupModels": [
        {
          "parameters": [
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": true,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "allowedStereotypeModels": [],
              "name": "template-file",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 2
              },
              "allowedStereotypeModels": [],
              "name": "application-key",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "#[app.name]",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 3
              },
              "allowedStereotypeModels": [],
              "name": "application-name",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Boolean",
                "annotations": {
                  "typeId": "boolean"
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "true",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 4
              },
              "allowedStereotypeModels": [],
              "name": "fail-on-missing-properties",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "null",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 5
              },
              "allowedStereotypeModels": [],
              "name": "replace-if-missing-with",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Boolean",
                "annotations": {
                  "typeId": "boolean"
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "true",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 6
              },
              "allowedStereotypeModels": [],
              "name": "fail-on-missing-duration",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "null",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 7
              },
              "allowedStereotypeModels": [],
              "name": "replace-if-missing-duration-with",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Boolean",
                "annotations": {
                  "typeId": "boolean"
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "true",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 8
              },
              "allowedStereotypeModels": [],
              "name": "ignore-exceptions",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "valueProviderModel": {
                "actingParameters": [],
                "partOrder": 1,
                "providerName": "escape-values",
                "requiresConfiguration": false,
                "requiresConnection": false,
                "isOpen": true
              },
              "expressionSupport": "NOT_SUPPORTED",
              "defaultValue": "default",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 9
              },
              "allowedStereotypeModels": [],
              "name": "escape-values",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 10
              },
              "allowedStereotypeModels": [],
              "name": "escaper-class",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Boolean",
                "annotations": {
                  "typeId": "boolean"
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "defaultValue": "false",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 11
              },
              "allowedStereotypeModels": [],
              "name": "validate-payload",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 12
              },
              "allowedStereotypeModels": [],
              "name": "payload-validator-class",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "@ref:cz.integsoft.mule.ilm.api.persistence.PersistenceParameters"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": true,
                "allowsReferences": true,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 13
              },
              "allowedStereotypeModels": [],
              "name": "log-persistence-strategy",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Array",
                "annotations": {
                  "classInformation": {
                    "classname": "java.util.List",
                    "hasDefaultConstructor": false,
                    "isInterface": true,
                    "isInstantiable": false,
                    "isAbstract": true,
                    "isFinal": false,
                    "implementedInterfaces": [
                      "java.util.Collection"
                    ],
                    "parent": "",
                    "genericTypes": [
                      "cz.integsoft.mule.ilm.api.processor.LogPostProcessorParameters"
                    ],
                    "isMap": false
                  }
                },
                "item": {
                  "type": "@ref:cz.integsoft.mule.ilm.api.processor.LogPostProcessorParameters"
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": true,
                "allowsReferences": true,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 14
              },
              "allowedStereotypeModels": [],
              "name": "log-post-processors",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Number",
                "annotations": {
                  "classInformation": {
                    "classname": "java.lang.Integer",
                    "hasDefaultConstructor": false,
                    "isInterface": false,
                    "isInstantiable": false,
                    "isAbstract": false,
                    "isFinal": true,
                    "implementedInterfaces": [
                      "java.lang.Comparable"
                    ],
                    "parent": "java.lang.Number",
                    "genericTypes": [],
                    "isMap": false
                  },
                  "int": {}
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "-1",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 15
              },
              "allowedStereotypeModels": [],
              "name": "stack-trace-limit",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": true,
              "isConfigOverride": false,
              "isComponentId": true,
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 17
              },
              "allowedStereotypeModels": [],
              "name": "name",
              "description": "The identifier of this element used to reference it in other components",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Object",
                "annotations": {
                  "typeId": "org.mule.runtime.extension.api.runtime.ExpirationPolicy",
                  "description": {
                    "value": "Configures the minimum amount of time that a dynamic configuration instance can remain idle before the runtime considers it eligible for expiration. This does not mean that the platform will expire the instance at the exact moment that it becomes eligible. The runtime will actually purge the instances when it sees it fit."
                  },
                  "typeDsl": {
                    "allowInlineDefinition": true,
                    "allowTopLevelDefinition": false
                  }
                },
                "fields": [
                  {
                    "key": {
                      "name": "maxIdleTime"
                    },
                    "model": {
                      "type": "Number",
                      "annotations": {
                        "int": {},
                        "classInformation": {
                          "classname": "java.lang.Long",
                          "hasDefaultConstructor": false,
                          "isInterface": false,
                          "isInstantiable": false,
                          "isAbstract": false,
                          "isFinal": true,
                          "implementedInterfaces": [
                            "java.lang.Comparable"
                          ],
                          "parent": "java.lang.Number",
                          "genericTypes": [],
                          "isMap": false
                        },
                        "default": "5"
                      }
                    },
                    "annotations": {
                      "description": {
                        "value": "A scalar time value for the maximum amount of time a dynamic configuration instance should be allowed to be idle before it\u0027s considered eligible for expiration"
                      },
                      "expressionSupport": {
                        "value": "NOT_SUPPORTED"
                      }
                    }
                  },
                  {
                    "key": {
                      "name": "timeUnit"
                    },
                    "model": {
                      "type": "String",
                      "annotations": {
                        "enum": {
                          "type": "[Ljava.lang.String;",
                          "values": [
                            "NANOSECONDS",
                            "MICROSECONDS",
                            "MILLISECONDS",
                            "SECONDS",
                            "MINUTES",
                            "HOURS",
                            "DAYS"
                          ]
                        },
                        "default": "MINUTES"
                      }
                    },
                    "annotations": {
                      "description": {
                        "value": "A time unit that qualifies the maxIdleTime attribute"
                      },
                      "expressionSupport": {
                        "value": "NOT_SUPPORTED"
                      }
                    }
                  }
                ]
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": true,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 16,
                "tabName": "Advanced"
              },
              "allowedStereotypeModels": [],
              "name": "expirationPolicy",
              "description": "Configures the minimum amount of time that a dynamic configuration instance can remain idle before the runtime considers it eligible for expiration. This does not mean that the platform will expire the instance at the exact moment that it becomes eligible. The runtime will actually purge the instances when it sees it fit.",
              "modelProperties": {
                "org.mule.runtime.extension.api.property.QNameModelProperty": {
                  "value": {
                    "namespaceURI": "http://www.mulesoft.org/schema/mule/core",
                    "localPart": "expiration-policy",
                    "prefix": "mule"
                  }
                },
                "org.mule.runtime.extension.api.property.InfrastructureParameterModelProperty": {
                  "sequence": 4
                }
              }
            }
          ],
          "exclusiveParametersModels": [],
          "layoutModel": {
            "password": false,
            "text": false,
            "query": false,
            "order": 1
          },
          "showInDsl": false,
          "name": "General",
          "description": "",
          "modelProperties": {}
        }
      ],
      "externalLibraryModels": [
        {
          "name": "JDBC Driver",
          "description": "A JDBC driver which supports connecting to the Database",
          "regexMatcher": "(.*)\\.jar",
          "type": "JAR",
          "optional": false
        },
        {
          "name": "Spring Core",
          "description": "",
          "type": "DEPENDENCY",
          "suggestedCoordinates": "org.springframework:spring-core:[5.1.0.RELEASE,)",
          "optional": false
        }
      ],
      "operations": [
        {
          "blocking": true,
          "executionType": "CPU_LITE",
          "output": {
            "type": {
              "format": "java",
              "type": "Any",
              "annotations": {
                "classInformation": {
                  "classname": "cz.integsoft.mule.ilm.api.LoggingModuleAttributes",
                  "hasDefaultConstructor": false,
                  "isInterface": true,
                  "isInstantiable": false,
                  "isAbstract": true,
                  "isFinal": false,
                  "implementedInterfaces": [
                    "java.io.Serializable"
                  ],
                  "parent": "",
                  "genericTypes": [],
                  "isMap": false
                }
              }
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "outputAttributes": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "transactional": false,
          "requiresConnection": false,
          "supportsStreaming": false,
          "notifications": [],
          "nestedComponents": [],
          "errors": [],
          "stereotype": {
            "type": "LAST-LOG-ATTRIBUTES",
            "namespace": "ILM",
            "parent": {
              "type": "PROCESSOR",
              "namespace": "ILM",
              "parent": {
                "type": "PROCESSOR",
                "namespace": "MULE"
              }
            }
          },
          "parameterGroupModels": [
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[correlationId]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1
                  },
                  "allowedStereotypeModels": [],
                  "name": "execution-id",
                  "description": "Execution id. Defaults to #[correlationId]",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "org.mule.runtime.extension.api.runtime.config.ConfigurationProvider"
                    },
                    "fields": []
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2
                  },
                  "allowedStereotypeModels": [
                    {
                      "type": "DATABASE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "FILE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "HTTP-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "RABBITMQ-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    }
                  ],
                  "name": "config-ref",
                  "description": "The name of the configuration to be used to execute this component",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "showInDsl": false,
              "name": "General",
              "description": "",
              "modelProperties": {}
            },
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 3,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "target",
                  "displayModel": {
                    "displayName": "Target Variable"
                  },
                  "description": "The name of a variable on which the operation\u0027s output will be placed",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "REQUIRED",
                  "defaultValue": "#[payload]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 4,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "targetValue",
                  "displayModel": {
                    "displayName": "Target Value"
                  },
                  "description": "An expression that will be evaluated against the operation\u0027s output and the outcome of that expression will be stored in the target variable",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 2
              },
              "showInDsl": false,
              "name": "Output",
              "description": "",
              "modelProperties": {}
            }
          ],
          "name": "last-log-attributes",
          "description": "",
          "modelProperties": {},
          "kind": "operation"
        },
        {
          "blocking": false,
          "executionType": "CPU_INTENSIVE",
          "output": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "outputAttributes": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "transactional": false,
          "requiresConnection": true,
          "supportsStreaming": false,
          "notifications": [],
          "nestedComponents": [],
          "errors": [
            "ILM:NO_LICENSE",
            "ILM:TEMPLATE_PROCESSING",
            "ILM:INITIALIZATION",
            "ILM:PROCESSING",
            "ILM:MAX_CALLS_REACHED",
            "ILM:CONNECTION",
            "ILM:RETRY_EXHAUSTED",
            "ILM:GENERIC_ERROR",
            "ILM:VALIDATION",
            "ILM:CONNECTIVITY"
          ],
          "stereotype": {
            "type": "LOG",
            "namespace": "ILM",
            "parent": {
              "type": "PROCESSOR",
              "namespace": "ILM",
              "parent": {
                "type": "PROCESSOR",
                "namespace": "MULE"
              }
            }
          },
          "parameterGroupModels": [
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[correlationId]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1
                  },
                  "allowedStereotypeModels": [],
                  "name": "execution-id",
                  "description": "Execution id. Defaults to #[correlationId]",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": true,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2
                  },
                  "allowedStereotypeModels": [],
                  "name": "template-file",
                  "description": "The file name with message template",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Any",
                    "annotations": {
                      "typeId": "java.lang.Object",
                      "classInformation": {
                        "classname": "java.lang.Object",
                        "hasDefaultConstructor": true,
                        "isInterface": false,
                        "isInstantiable": true,
                        "isAbstract": false,
                        "isFinal": false,
                        "implementedInterfaces": [],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "typeAlias": {
                        "value": "Object"
                      }
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[message]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 3
                  },
                  "allowedStereotypeModels": [],
                  "name": "message",
                  "description": "message",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "classInformation": {
                        "classname": "java.util.Map",
                        "hasDefaultConstructor": false,
                        "isInterface": true,
                        "isInstantiable": false,
                        "isAbstract": true,
                        "isFinal": false,
                        "implementedInterfaces": [],
                        "parent": "",
                        "genericTypes": [
                          "java.lang.String",
                          "java.lang.Object"
                        ],
                        "isMap": true
                      }
                    },
                    "open": {
                      "type": "Object",
                      "annotations": {
                        "typeId": "java.lang.Object",
                        "classInformation": {
                          "classname": "java.lang.Object",
                          "hasDefaultConstructor": true,
                          "isInterface": false,
                          "isInstantiable": true,
                          "isAbstract": false,
                          "isFinal": false,
                          "implementedInterfaces": [],
                          "parent": "",
                          "genericTypes": [],
                          "isMap": false
                        },
                        "typeAlias": {
                          "value": "Object"
                        }
                      },
                      "fields": []
                    },
                    "fields": []
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[vars]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 4
                  },
                  "allowedStereotypeModels": [],
                  "name": "variables",
                  "description": "variables",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Any",
                    "annotations": {
                      "typeId": "java.lang.Object",
                      "classInformation": {
                        "classname": "java.lang.Object",
                        "hasDefaultConstructor": true,
                        "isInterface": false,
                        "isInstantiable": true,
                        "isAbstract": false,
                        "isFinal": false,
                        "implementedInterfaces": [],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "typeAlias": {
                        "value": "Object"
                      }
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[payload]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 5
                  },
                  "allowedStereotypeModels": [],
                  "name": "payload",
                  "description": "payload",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Any",
                    "annotations": {
                      "typeId": "java.lang.Object",
                      "classInformation": {
                        "classname": "java.lang.Object",
                        "hasDefaultConstructor": true,
                        "isInterface": false,
                        "isInstantiable": true,
                        "isAbstract": false,
                        "isFinal": false,
                        "implementedInterfaces": [],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "typeAlias": {
                        "value": "Object"
                      }
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[attributes]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 6
                  },
                  "allowedStereotypeModels": [],
                  "name": "attributes",
                  "description": "attributes",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "org.mule.runtime.extension.api.runtime.config.ConfigurationProvider"
                    },
                    "fields": []
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 7
                  },
                  "allowedStereotypeModels": [
                    {
                      "type": "DATABASE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "FILE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "HTTP-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "RABBITMQ-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    }
                  ],
                  "name": "config-ref",
                  "description": "The name of the configuration to be used to execute this component",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "showInDsl": false,
              "name": "General",
              "description": "",
              "modelProperties": {}
            },
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 8
                  },
                  "allowedStereotypeModels": [],
                  "name": "level",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 9
                  },
                  "allowedStereotypeModels": [],
                  "name": "logger-point",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 10
                  },
                  "allowedStereotypeModels": [],
                  "name": "user",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 11
                  },
                  "allowedStereotypeModels": [],
                  "name": "log-message",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 12
                  },
                  "allowedStereotypeModels": [],
                  "name": "custom-correlation-id",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "valueProviderModel": {
                    "actingParameters": [],
                    "partOrder": 1,
                    "providerName": "message-type",
                    "requiresConfiguration": false,
                    "requiresConnection": false,
                    "isOpen": true
                  },
                  "expressionSupport": "NOT_SUPPORTED",
                  "defaultValue": "normal",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 13
                  },
                  "allowedStereotypeModels": [],
                  "name": "message-type",
                  "description": "",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 2
              },
              "showInDsl": false,
              "name": "Log parameters",
              "description": "",
              "modelProperties": {}
            },
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "Union",
                    "annotations": {
                      "typeId": "ReconnectionStrategy"
                    },
                    "of": [
                      {
                        "type": "Object",
                        "annotations": {
                          "typeId": "reconnect"
                        },
                        "fields": [
                          {
                            "key": {
                              "name": "frequency"
                            },
                            "model": {
                              "type": "Number",
                              "annotations": {
                                "int": {},
                                "classInformation": {
                                  "classname": "java.lang.Long",
                                  "hasDefaultConstructor": false,
                                  "isInterface": false,
                                  "isInstantiable": false,
                                  "isAbstract": false,
                                  "isFinal": true,
                                  "implementedInterfaces": [
                                    "java.lang.Comparable"
                                  ],
                                  "parent": "java.lang.Number",
                                  "genericTypes": [],
                                  "isMap": false
                                },
                                "default": "2000"
                              }
                            },
                            "annotations": {
                              "description": {
                                "value": "How often (in ms) to reconnect"
                              }
                            }
                          },
                          {
                            "key": {
                              "name": "blocking"
                            },
                            "model": {
                              "type": "Boolean",
                              "annotations": {
                                "default": "true"
                              }
                            },
                            "annotations": {
                              "description": {
                                "value": "If false, the reconnection strategy will run in a separate, non-blocking thread"
                              }
                            }
                          },
                          {
                            "key": {
                              "name": "count"
                            },
                            "model": {
                              "type": "Number",
                              "annotations": {
                                "int": {},
                                "default": "2"
                              }
                            },
                            "annotations": {
                              "description": {
                                "value": "How many reconnection attempts to make"
                              }
                            }
                          }
                        ]
                      },
                      {
                        "type": "Object",
                        "annotations": {
                          "typeId": "reconnect-forever"
                        },
                        "fields": [
                          {
                            "key": {
                              "name": "frequency"
                            },
                            "model": {
                              "type": "Number",
                              "annotations": {
                                "int": {},
                                "classInformation": {
                                  "classname": "java.lang.Long",
                                  "hasDefaultConstructor": false,
                                  "isInterface": false,
                                  "isInstantiable": false,
                                  "isAbstract": false,
                                  "isFinal": true,
                                  "implementedInterfaces": [
                                    "java.lang.Comparable"
                                  ],
                                  "parent": "java.lang.Number",
                                  "genericTypes": [],
                                  "isMap": false
                                },
                                "default": "2000"
                              }
                            },
                            "annotations": {
                              "description": {
                                "value": "How often (in ms) to reconnect"
                              }
                            }
                          },
                          {
                            "key": {
                              "name": "blocking"
                            },
                            "model": {
                              "type": "Boolean",
                              "annotations": {
                                "default": "true"
                              }
                            },
                            "annotations": {
                              "description": {
                                "value": "If false, the reconnection strategy will run in a separate, non-blocking thread"
                              }
                            }
                          }
                        ]
                      }
                    ]
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 14,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "reconnectionStrategy",
                  "description": "A retry strategy in case of connectivity errors",
                  "modelProperties": {
                    "org.mule.runtime.extension.api.property.QNameModelProperty": {
                      "value": {
                        "namespaceURI": "http://www.mulesoft.org/schema/mule/core",
                        "localPart": "abstract-reconnection-strategy",
                        "prefix": "mule"
                      }
                    },
                    "org.mule.runtime.extension.api.property.InfrastructureParameterModelProperty": {
                      "sequence": 3
                    }
                  }
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 3
              },
              "showInDsl": false,
              "name": "Connection",
              "description": "",
              "modelProperties": {}
            }
          ],
          "name": "log",
          "description": "Send a message to the underlying connection manager. This should be executed asynchronously.",
          "modelProperties": {},
          "kind": "operation"
        },
        {
          "blocking": true,
          "executionType": "CPU_LITE",
          "output": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "outputAttributes": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "transactional": false,
          "requiresConnection": false,
          "supportsStreaming": false,
          "notifications": [],
          "nestedComponents": [],
          "errors": [],
          "stereotype": {
            "type": "MARK-DURATION-OFFSET",
            "namespace": "ILM",
            "parent": {
              "type": "PROCESSOR",
              "namespace": "ILM",
              "parent": {
                "type": "PROCESSOR",
                "namespace": "MULE"
              }
            }
          },
          "parameterGroupModels": [
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[correlationId]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1
                  },
                  "allowedStereotypeModels": [],
                  "name": "execution-id",
                  "description": "Execution id. Defaults to #[correlationId]",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2
                  },
                  "allowedStereotypeModels": [],
                  "name": "offset-id",
                  "displayModel": {
                    "example": "offset1"
                  },
                  "description": "Offset id. It\u0027s mandatory. Cannot be \u0027start\u0027 or \u0027end\u0027 since these are reserved words.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "org.mule.runtime.extension.api.runtime.config.ConfigurationProvider"
                    },
                    "fields": []
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 3
                  },
                  "allowedStereotypeModels": [
                    {
                      "type": "DATABASE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "FILE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "HTTP-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "RABBITMQ-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    }
                  ],
                  "name": "config-ref",
                  "description": "The name of the configuration to be used to execute this component",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "showInDsl": false,
              "name": "General",
              "description": "",
              "modelProperties": {}
            }
          ],
          "name": "mark-duration-offset",
          "description": "Marks offset. It expects to be within an execution context. If there is no execution context, nothing happens.",
          "modelProperties": {},
          "kind": "operation"
        },
        {
          "blocking": true,
          "executionType": "CPU_LITE",
          "output": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "outputAttributes": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "transactional": false,
          "requiresConnection": false,
          "supportsStreaming": false,
          "notifications": [],
          "nestedComponents": [],
          "errors": [],
          "stereotype": {
            "type": "MARK-END",
            "namespace": "ILM",
            "parent": {
              "type": "PROCESSOR",
              "namespace": "ILM",
              "parent": {
                "type": "PROCESSOR",
                "namespace": "MULE"
              }
            }
          },
          "parameterGroupModels": [
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[correlationId]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1
                  },
                  "allowedStereotypeModels": [],
                  "name": "execution-id",
                  "description": "Execution id. Defaults to #[correlationId]",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "org.mule.runtime.extension.api.runtime.config.ConfigurationProvider"
                    },
                    "fields": []
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2
                  },
                  "allowedStereotypeModels": [
                    {
                      "type": "DATABASE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "FILE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "HTTP-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "RABBITMQ-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    }
                  ],
                  "name": "config-ref",
                  "description": "The name of the configuration to be used to execute this component",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "showInDsl": false,
              "name": "General",
              "description": "",
              "modelProperties": {}
            }
          ],
          "name": "mark-end",
          "description": "Marks current end epoch and store in thread local variable.",
          "modelProperties": {},
          "kind": "operation"
        },
        {
          "blocking": true,
          "executionType": "CPU_LITE",
          "output": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "outputAttributes": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "transactional": false,
          "requiresConnection": false,
          "supportsStreaming": false,
          "notifications": [],
          "nestedComponents": [],
          "errors": [
            "ILM:NO_LICENSE",
            "ILM:TEMPLATE_PROCESSING",
            "ILM:INITIALIZATION",
            "ILM:PROCESSING",
            "ILM:MAX_CALLS_REACHED",
            "ILM:CONNECTION",
            "ILM:GENERIC_ERROR",
            "ILM:VALIDATION"
          ],
          "stereotype": {
            "type": "MARK-START",
            "namespace": "ILM",
            "parent": {
              "type": "PROCESSOR",
              "namespace": "ILM",
              "parent": {
                "type": "PROCESSOR",
                "namespace": "MULE"
              }
            }
          },
          "parameterGroupModels": [
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[correlationId]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1
                  },
                  "allowedStereotypeModels": [],
                  "name": "execution-id",
                  "description": "Execution id. Defaults to #[correlationId]",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "org.mule.runtime.extension.api.runtime.config.ConfigurationProvider"
                    },
                    "fields": []
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2
                  },
                  "allowedStereotypeModels": [
                    {
                      "type": "DATABASE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "FILE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "HTTP-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "RABBITMQ-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    }
                  ],
                  "name": "config-ref",
                  "description": "The name of the configuration to be used to execute this component",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "showInDsl": false,
              "name": "General",
              "description": "",
              "modelProperties": {}
            }
          ],
          "name": "mark-start",
          "description": "Marks current epoch and store in thread local variable.",
          "modelProperties": {},
          "kind": "operation"
        }
      ],
      "connectionProviders": [
        {
          "connectionManagementType": "POOLING",
          "externalLibraryModels": [],
          "supportsConnectivityTesting": true,
          "stereotype": {
            "type": "DATABASE",
            "namespace": "ILM",
            "parent": {
              "type": "CONNECTION",
              "namespace": "MULE"
            }
          },
          "parameterGroupModels": [
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "Boolean",
                    "annotations": {
                      "typeId": "boolean"
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "false",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1,
                    "tabName": "Connection"
                  },
                  "allowedStereotypeModels": [],
                  "name": "disabled",
                  "description": "Enables or disables connections. If true, all connections are DisabledConnection. And the log operation do not log. Setting system property ilm.logging.disabled disables logging globally.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1,
                    "tabName": "Connection"
                  },
                  "allowedStereotypeModels": [],
                  "name": "url",
                  "displayModel": {
                    "displayName": "URL"
                  },
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2,
                    "tabName": "Connection"
                  },
                  "allowedStereotypeModels": [],
                  "name": "driver-class-name",
                  "displayModel": {
                    "classValueModel": {
                      "assignableFrom": [
                        "java.sql.Driver"
                      ]
                    }
                  },
                  "description": "Fully-qualified name of the database driver class.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Boolean",
                    "annotations": {
                      "typeId": "boolean"
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "defaultValue": "false",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 3,
                    "tabName": "Connection"
                  },
                  "allowedStereotypeModels": [],
                  "name": "ignore-connection-errors",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 4,
                    "tabName": "Connection"
                  },
                  "allowedStereotypeModels": [],
                  "name": "validation-query",
                  "displayModel": {
                    "displayName": "Validation query"
                  },
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1,
                    "tabName": "TLS"
                  },
                  "allowedStereotypeModels": [],
                  "name": "username",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": true,
                    "text": false,
                    "query": false,
                    "order": 2,
                    "tabName": "TLS"
                  },
                  "allowedStereotypeModels": [],
                  "name": "password",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "Reconnection"
                    },
                    "fields": [
                      {
                        "key": {
                          "name": "failsDeployment"
                        },
                        "model": {
                          "type": "Boolean",
                          "annotations": {
                            "default": "false"
                          }
                        },
                        "annotations": {
                          "description": {
                            "value": "When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment will fail if the test doesn\u0027t pass after exhausting the associated reconnection strategy"
                          }
                        }
                      },
                      {
                        "key": {
                          "name": "reconnectionStrategy"
                        },
                        "model": {
                          "type": "Union",
                          "annotations": {
                            "typeId": "ReconnectionStrategy"
                          },
                          "of": [
                            {
                              "type": "Object",
                              "annotations": {
                                "typeId": "reconnect"
                              },
                              "fields": [
                                {
                                  "key": {
                                    "name": "frequency"
                                  },
                                  "model": {
                                    "type": "Number",
                                    "annotations": {
                                      "int": {},
                                      "classInformation": {
                                        "classname": "java.lang.Long",
                                        "hasDefaultConstructor": false,
                                        "isInterface": false,
                                        "isInstantiable": false,
                                        "isAbstract": false,
                                        "isFinal": true,
                                        "implementedInterfaces": [
                                          "java.lang.Comparable"
                                        ],
                                        "parent": "java.lang.Number",
                                        "genericTypes": [],
                                        "isMap": false
                                      },
                                      "default": "2000"
                                    }
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "How often (in ms) to reconnect"
                                    }
                                  }
                                },
                                {
                                  "key": {
                                    "name": "blocking"
                                  },
                                  "model": {
                                    "type": "Boolean",
                                    "annotations": {
                                      "default": "true"
                                    }
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "If false, the reconnection strategy will run in a separate, non-blocking thread"
                                    }
                                  }
                                },
                                {
                                  "key": {
                                    "name": "count"
                                  },
                                  "model": {
                                    "type": "Number",
                                    "annotations": {
                                      "int": {},
                                      "default": "2"
                                    }
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "How many reconnection attempts to make"
                                    }
                                  }
                                }
                              ]
                            },
                            {
                              "type": "Object",
                              "annotations": {
                                "typeId": "reconnect-forever"
                              },
                              "fields": [
                                {
                                  "key": {
                                    "name": "frequency"
                                  },
                                  "model": {
                                    "type": "Number",
                                    "annotations": {
                                      "int": {},
                                      "classInformation": {
                                        "classname": "java.lang.Long",
                                        "hasDefaultConstructor": false,
                                        "isInterface": false,
                                        "isInstantiable": false,
                                        "isAbstract": false,
                                        "isFinal": true,
                                        "implementedInterfaces": [
                                          "java.lang.Comparable"
                                        ],
                                        "parent": "java.lang.Number",
                                        "genericTypes": [],
                                        "isMap": false
                                      },
                                      "default": "2000"
                                    }
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "How often (in ms) to reconnect"
                                    }
                                  }
                                },
                                {
                                  "key": {
                                    "name": "blocking"
                                  },
                                  "model": {
                                    "type": "Boolean",
                                    "annotations": {
                                      "default": "true"
                                    }
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "If false, the reconnection strategy will run in a separate, non-blocking thread"
                                    }
                                  }
                                }
                              ]
                            }
                          ]
                        },
                        "annotations": {
                          "description": {
                            "value": "The reconnection strategy to use"
                          }
                        }
                      }
                    ]
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 5,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "reconnection",
                  "description": "When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment will fail if the test doesn\u0027t pass after exhausting the associated reconnection strategy",
                  "modelProperties": {
                    "org.mule.runtime.extension.api.property.QNameModelProperty": {
                      "value": {
                        "namespaceURI": "http://www.mulesoft.org/schema/mule/core",
                        "localPart": "reconnection",
                        "prefix": "mule"
                      }
                    },
                    "org.mule.runtime.extension.api.property.InfrastructureParameterModelProperty": {
                      "sequence": 3
                    }
                  }
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "org.mule.runtime.api.config.PoolingProfile",
                      "description": {
                        "value": "A pooling profile is used to configure the pooling behaviour of Mule components. Each component can have its own pooling profile."
                      }
                    },
                    "fields": [
                      {
                        "key": {
                          "name": "maxActive"
                        },
                        "model": {
                          "type": "Number",
                          "annotations": {
                            "int": {},
                            "default": "5"
                          }
                        },
                        "annotations": {
                          "description": {
                            "value": "Controls the maximum number of Mule components that can be borrowed from a session at one time. When set to a negative value, there is no limit to the number of components that may be active at one time. When maxActive is exceeded, the pool is said to be exhausted."
                          }
                        }
                      },
                      {
                        "key": {
                          "name": "maxIdle"
                        },
                        "model": {
                          "type": "Number",
                          "annotations": {
                            "int": {},
                            "default": "5"
                          }
                        },
                        "annotations": {
                          "description": {
                            "value": "Controls the maximum number of Mule components that can sit idle in the pool at any time. When set to a negative value, there is no limit to the number of Mule components that may be idle at one time."
                          }
                        }
                      },
                      {
                        "key": {
                          "name": "maxWait"
                        },
                        "model": {
                          "type": "Number",
                          "annotations": {
                            "int": {},
                            "classInformation": {
                              "classname": "java.lang.Long",
                              "hasDefaultConstructor": false,
                              "isInterface": false,
                              "isInstantiable": false,
                              "isAbstract": false,
                              "isFinal": true,
                              "implementedInterfaces": [
                                "java.lang.Comparable"
                              ],
                              "parent": "java.lang.Number",
                              "genericTypes": [],
                              "isMap": false
                            },
                            "default": "4000"
                          }
                        },
                        "annotations": {
                          "description": {
                            "value": "Specifies the number of milliseconds to wait for a pooled component to become available when the pool is exhausted and the exhaustedAction is set to WHEN_EXHAUSTED_WAIT."
                          }
                        }
                      },
                      {
                        "key": {
                          "name": "minEvictionMillis"
                        },
                        "model": {
                          "type": "Number",
                          "annotations": {
                            "int": {},
                            "default": "1800000"
                          }
                        },
                        "annotations": {
                          "description": {
                            "value": "Determines the minimum amount of time an object may sit idle in the pool before it is eligible for eviction. When non-positive, no objects will be evicted from the pool due to idle time alone."
                          }
                        }
                      },
                      {
                        "key": {
                          "name": "evictionCheckIntervalMillis"
                        },
                        "model": {
                          "type": "Number",
                          "annotations": {
                            "int": {},
                            "default": "-1"
                          }
                        },
                        "annotations": {
                          "description": {
                            "value": "Specifies the number of milliseconds between runs of the object evictor. When non-positive, no object evictor is executed."
                          }
                        }
                      },
                      {
                        "key": {
                          "name": "exhaustedAction"
                        },
                        "model": {
                          "type": "String",
                          "annotations": {
                            "enum": {
                              "type": "[Ljava.lang.String;",
                              "values": [
                                "WHEN_EXHAUSTED_GROW",
                                "WHEN_EXHAUSTED_WAIT",
                                "WHEN_EXHAUSTED_FAIL"
                              ]
                            },
                            "default": "WHEN_EXHAUSTED_GROW"
                          }
                        },
                        "annotations": {
                          "description": {
                            "value": "Specifies the behavior of the Mule component pool when the pool is exhausted. Possible values are: \"WHEN_EXHAUSTED_FAIL\", which will throw a NoSuchElementException, \"WHEN_EXHAUSTED_WAIT\", which will block by invoking Object.wait(long) until a new or idle object is available, or WHEN_EXHAUSTED_GROW, which will create a new Mule instance and return it, essentially making maxActive meaningless. If a positive maxWait value is supplied, it will block for at most that many milliseconds, after which a NoSuchElementException will be thrown. If maxThreadWait is a negative value, it will block indefinitely."
                          }
                        }
                      },
                      {
                        "key": {
                          "name": "initialisationPolicy"
                        },
                        "model": {
                          "type": "String",
                          "annotations": {
                            "enum": {
                              "type": "[Ljava.lang.String;",
                              "values": [
                                "INITIALISE_NONE",
                                "INITIALISE_ONE",
                                "INITIALISE_ALL"
                              ]
                            },
                            "default": "INITIALISE_ONE"
                          }
                        },
                        "annotations": {
                          "description": {
                            "value": "Determines how components in a pool should be initialized. The possible values are: INITIALISE_NONE (will not load any components into the pool on startup), INITIALISE_ONE (will load one initial component into the pool on startup), or INITIALISE_ALL (will load all components in the pool on startup)"
                          }
                        }
                      },
                      {
                        "key": {
                          "name": "disabled"
                        },
                        "model": {
                          "type": "Boolean",
                          "annotations": {
                            "default": "false"
                          }
                        },
                        "annotations": {
                          "description": {
                            "value": "Whether pooling should be disabled"
                          }
                        }
                      }
                    ]
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 6,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "poolingProfile",
                  "description": "Characteristics of the connection pool",
                  "modelProperties": {
                    "org.mule.runtime.extension.api.property.QNameModelProperty": {
                      "value": {
                        "namespaceURI": "http://www.mulesoft.org/schema/mule/core",
                        "localPart": "pooling-profile",
                        "prefix": "mule"
                      }
                    },
                    "org.mule.runtime.extension.api.property.InfrastructureParameterModelProperty": {
                      "sequence": 5
                    }
                  }
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "showInDsl": false,
              "name": "Connection",
              "description": "",
              "modelProperties": {}
            }
          ],
          "name": "database",
          "description": "Generic database connection provider.",
          "modelProperties": {
            "requiredForMetadata": {
              "requiredParameters": [
                "disabled",
                "url",
                "driver-class-name",
                "ignore-connection-errors",
                "validation-query",
                "username",
                "password"
              ]
            }
          }
        }
      ],
      "messageSources": [],
      "name": "database-logging-config",
      "description": "Generic database configuration.",
      "modelProperties": {
        "requiredForMetadata": {
          "requiredParameters": [
            "template-file",
            "application-key",
            "application-name",
            "fail-on-missing-properties",
            "replace-if-missing-with",
            "fail-on-missing-duration",
            "replace-if-missing-duration-with",
            "ignore-exceptions",
            "escape-values",
            "escaper-class",
            "validate-payload",
            "payload-validator-class",
            "log-persistence-strategy",
            "log-post-processors",
            "stack-trace-limit",
            "name"
          ]
        }
      }
    },
    {
      "stereotype": {
        "type": "FILE-LOGGING-CONFIG",
        "namespace": "ILM",
        "parent": {
          "type": "MODULE_CONFIG",
          "namespace": "MULE"
        }
      },
      "parameterGroupModels": [
        {
          "parameters": [
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": true,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "allowedStereotypeModels": [],
              "name": "template-file",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 2
              },
              "allowedStereotypeModels": [],
              "name": "application-key",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "#[app.name]",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 3
              },
              "allowedStereotypeModels": [],
              "name": "application-name",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Boolean",
                "annotations": {
                  "typeId": "boolean"
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "true",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 4
              },
              "allowedStereotypeModels": [],
              "name": "fail-on-missing-properties",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "null",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 5
              },
              "allowedStereotypeModels": [],
              "name": "replace-if-missing-with",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Boolean",
                "annotations": {
                  "typeId": "boolean"
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "true",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 6
              },
              "allowedStereotypeModels": [],
              "name": "fail-on-missing-duration",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "null",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 7
              },
              "allowedStereotypeModels": [],
              "name": "replace-if-missing-duration-with",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Boolean",
                "annotations": {
                  "typeId": "boolean"
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "true",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 8
              },
              "allowedStereotypeModels": [],
              "name": "ignore-exceptions",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "valueProviderModel": {
                "actingParameters": [],
                "partOrder": 1,
                "providerName": "escape-values",
                "requiresConfiguration": false,
                "requiresConnection": false,
                "isOpen": true
              },
              "expressionSupport": "NOT_SUPPORTED",
              "defaultValue": "default",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 9
              },
              "allowedStereotypeModels": [],
              "name": "escape-values",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 10
              },
              "allowedStereotypeModels": [],
              "name": "escaper-class",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Boolean",
                "annotations": {
                  "typeId": "boolean"
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "defaultValue": "false",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 11
              },
              "allowedStereotypeModels": [],
              "name": "validate-payload",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 12
              },
              "allowedStereotypeModels": [],
              "name": "payload-validator-class",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "@ref:cz.integsoft.mule.ilm.api.persistence.PersistenceParameters"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": true,
                "allowsReferences": true,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 13
              },
              "allowedStereotypeModels": [],
              "name": "log-persistence-strategy",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Array",
                "annotations": {
                  "classInformation": {
                    "classname": "java.util.List",
                    "hasDefaultConstructor": false,
                    "isInterface": true,
                    "isInstantiable": false,
                    "isAbstract": true,
                    "isFinal": false,
                    "implementedInterfaces": [
                      "java.util.Collection"
                    ],
                    "parent": "",
                    "genericTypes": [
                      "cz.integsoft.mule.ilm.api.processor.LogPostProcessorParameters"
                    ],
                    "isMap": false
                  }
                },
                "item": {
                  "type": "@ref:cz.integsoft.mule.ilm.api.processor.LogPostProcessorParameters"
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": true,
                "allowsReferences": true,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 14
              },
              "allowedStereotypeModels": [],
              "name": "log-post-processors",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Number",
                "annotations": {
                  "classInformation": {
                    "classname": "java.lang.Integer",
                    "hasDefaultConstructor": false,
                    "isInterface": false,
                    "isInstantiable": false,
                    "isAbstract": false,
                    "isFinal": true,
                    "implementedInterfaces": [
                      "java.lang.Comparable"
                    ],
                    "parent": "java.lang.Number",
                    "genericTypes": [],
                    "isMap": false
                  },
                  "int": {}
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "-1",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 15
              },
              "allowedStereotypeModels": [],
              "name": "stack-trace-limit",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": true,
              "isConfigOverride": false,
              "isComponentId": true,
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 17
              },
              "allowedStereotypeModels": [],
              "name": "name",
              "description": "The identifier of this element used to reference it in other components",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Object",
                "annotations": {
                  "typeId": "org.mule.runtime.extension.api.runtime.ExpirationPolicy",
                  "description": {
                    "value": "Configures the minimum amount of time that a dynamic configuration instance can remain idle before the runtime considers it eligible for expiration. This does not mean that the platform will expire the instance at the exact moment that it becomes eligible. The runtime will actually purge the instances when it sees it fit."
                  },
                  "typeDsl": {
                    "allowInlineDefinition": true,
                    "allowTopLevelDefinition": false
                  }
                },
                "fields": [
                  {
                    "key": {
                      "name": "maxIdleTime"
                    },
                    "model": {
                      "type": "Number",
                      "annotations": {
                        "int": {},
                        "classInformation": {
                          "classname": "java.lang.Long",
                          "hasDefaultConstructor": false,
                          "isInterface": false,
                          "isInstantiable": false,
                          "isAbstract": false,
                          "isFinal": true,
                          "implementedInterfaces": [
                            "java.lang.Comparable"
                          ],
                          "parent": "java.lang.Number",
                          "genericTypes": [],
                          "isMap": false
                        },
                        "default": "5"
                      }
                    },
                    "annotations": {
                      "description": {
                        "value": "A scalar time value for the maximum amount of time a dynamic configuration instance should be allowed to be idle before it\u0027s considered eligible for expiration"
                      },
                      "expressionSupport": {
                        "value": "NOT_SUPPORTED"
                      }
                    }
                  },
                  {
                    "key": {
                      "name": "timeUnit"
                    },
                    "model": {
                      "type": "String",
                      "annotations": {
                        "enum": {
                          "type": "[Ljava.lang.String;",
                          "values": [
                            "NANOSECONDS",
                            "MICROSECONDS",
                            "MILLISECONDS",
                            "SECONDS",
                            "MINUTES",
                            "HOURS",
                            "DAYS"
                          ]
                        },
                        "default": "MINUTES"
                      }
                    },
                    "annotations": {
                      "description": {
                        "value": "A time unit that qualifies the maxIdleTime attribute"
                      },
                      "expressionSupport": {
                        "value": "NOT_SUPPORTED"
                      }
                    }
                  }
                ]
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": true,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 16,
                "tabName": "Advanced"
              },
              "allowedStereotypeModels": [],
              "name": "expirationPolicy",
              "description": "Configures the minimum amount of time that a dynamic configuration instance can remain idle before the runtime considers it eligible for expiration. This does not mean that the platform will expire the instance at the exact moment that it becomes eligible. The runtime will actually purge the instances when it sees it fit.",
              "modelProperties": {
                "org.mule.runtime.extension.api.property.QNameModelProperty": {
                  "value": {
                    "namespaceURI": "http://www.mulesoft.org/schema/mule/core",
                    "localPart": "expiration-policy",
                    "prefix": "mule"
                  }
                },
                "org.mule.runtime.extension.api.property.InfrastructureParameterModelProperty": {
                  "sequence": 4
                }
              }
            }
          ],
          "exclusiveParametersModels": [],
          "layoutModel": {
            "password": false,
            "text": false,
            "query": false,
            "order": 1
          },
          "showInDsl": false,
          "name": "General",
          "description": "",
          "modelProperties": {}
        }
      ],
      "externalLibraryModels": [
        {
          "name": "Spring Core",
          "description": "",
          "type": "DEPENDENCY",
          "suggestedCoordinates": "org.springframework:spring-core:[5.1.0.RELEASE,)",
          "optional": false
        }
      ],
      "operations": [
        {
          "blocking": true,
          "executionType": "CPU_LITE",
          "output": {
            "type": {
              "format": "java",
              "type": "Any",
              "annotations": {
                "classInformation": {
                  "classname": "cz.integsoft.mule.ilm.api.LoggingModuleAttributes",
                  "hasDefaultConstructor": false,
                  "isInterface": true,
                  "isInstantiable": false,
                  "isAbstract": true,
                  "isFinal": false,
                  "implementedInterfaces": [
                    "java.io.Serializable"
                  ],
                  "parent": "",
                  "genericTypes": [],
                  "isMap": false
                }
              }
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "outputAttributes": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "transactional": false,
          "requiresConnection": false,
          "supportsStreaming": false,
          "notifications": [],
          "nestedComponents": [],
          "errors": [],
          "stereotype": {
            "type": "LAST-LOG-ATTRIBUTES",
            "namespace": "ILM",
            "parent": {
              "type": "PROCESSOR",
              "namespace": "ILM",
              "parent": {
                "type": "PROCESSOR",
                "namespace": "MULE"
              }
            }
          },
          "parameterGroupModels": [
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[correlationId]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1
                  },
                  "allowedStereotypeModels": [],
                  "name": "execution-id",
                  "description": "Execution id. Defaults to #[correlationId]",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "org.mule.runtime.extension.api.runtime.config.ConfigurationProvider"
                    },
                    "fields": []
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2
                  },
                  "allowedStereotypeModels": [
                    {
                      "type": "DATABASE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "FILE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "HTTP-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "RABBITMQ-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    }
                  ],
                  "name": "config-ref",
                  "description": "The name of the configuration to be used to execute this component",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "showInDsl": false,
              "name": "General",
              "description": "",
              "modelProperties": {}
            },
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 3,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "target",
                  "displayModel": {
                    "displayName": "Target Variable"
                  },
                  "description": "The name of a variable on which the operation\u0027s output will be placed",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "REQUIRED",
                  "defaultValue": "#[payload]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 4,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "targetValue",
                  "displayModel": {
                    "displayName": "Target Value"
                  },
                  "description": "An expression that will be evaluated against the operation\u0027s output and the outcome of that expression will be stored in the target variable",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 2
              },
              "showInDsl": false,
              "name": "Output",
              "description": "",
              "modelProperties": {}
            }
          ],
          "name": "last-log-attributes",
          "description": "",
          "modelProperties": {},
          "kind": "operation"
        },
        {
          "blocking": false,
          "executionType": "CPU_INTENSIVE",
          "output": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "outputAttributes": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "transactional": false,
          "requiresConnection": true,
          "supportsStreaming": false,
          "notifications": [],
          "nestedComponents": [],
          "errors": [
            "ILM:NO_LICENSE",
            "ILM:TEMPLATE_PROCESSING",
            "ILM:INITIALIZATION",
            "ILM:PROCESSING",
            "ILM:MAX_CALLS_REACHED",
            "ILM:CONNECTION",
            "ILM:RETRY_EXHAUSTED",
            "ILM:GENERIC_ERROR",
            "ILM:VALIDATION",
            "ILM:CONNECTIVITY"
          ],
          "stereotype": {
            "type": "LOG",
            "namespace": "ILM",
            "parent": {
              "type": "PROCESSOR",
              "namespace": "ILM",
              "parent": {
                "type": "PROCESSOR",
                "namespace": "MULE"
              }
            }
          },
          "parameterGroupModels": [
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[correlationId]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1
                  },
                  "allowedStereotypeModels": [],
                  "name": "execution-id",
                  "description": "Execution id. Defaults to #[correlationId]",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": true,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2
                  },
                  "allowedStereotypeModels": [],
                  "name": "template-file",
                  "description": "The file name with message template",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Any",
                    "annotations": {
                      "typeId": "java.lang.Object",
                      "classInformation": {
                        "classname": "java.lang.Object",
                        "hasDefaultConstructor": true,
                        "isInterface": false,
                        "isInstantiable": true,
                        "isAbstract": false,
                        "isFinal": false,
                        "implementedInterfaces": [],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "typeAlias": {
                        "value": "Object"
                      }
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[message]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 3
                  },
                  "allowedStereotypeModels": [],
                  "name": "message",
                  "description": "message",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "classInformation": {
                        "classname": "java.util.Map",
                        "hasDefaultConstructor": false,
                        "isInterface": true,
                        "isInstantiable": false,
                        "isAbstract": true,
                        "isFinal": false,
                        "implementedInterfaces": [],
                        "parent": "",
                        "genericTypes": [
                          "java.lang.String",
                          "java.lang.Object"
                        ],
                        "isMap": true
                      }
                    },
                    "open": {
                      "type": "Object",
                      "annotations": {
                        "typeId": "java.lang.Object",
                        "classInformation": {
                          "classname": "java.lang.Object",
                          "hasDefaultConstructor": true,
                          "isInterface": false,
                          "isInstantiable": true,
                          "isAbstract": false,
                          "isFinal": false,
                          "implementedInterfaces": [],
                          "parent": "",
                          "genericTypes": [],
                          "isMap": false
                        },
                        "typeAlias": {
                          "value": "Object"
                        }
                      },
                      "fields": []
                    },
                    "fields": []
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[vars]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 4
                  },
                  "allowedStereotypeModels": [],
                  "name": "variables",
                  "description": "variables",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Any",
                    "annotations": {
                      "typeId": "java.lang.Object",
                      "classInformation": {
                        "classname": "java.lang.Object",
                        "hasDefaultConstructor": true,
                        "isInterface": false,
                        "isInstantiable": true,
                        "isAbstract": false,
                        "isFinal": false,
                        "implementedInterfaces": [],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "typeAlias": {
                        "value": "Object"
                      }
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[payload]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 5
                  },
                  "allowedStereotypeModels": [],
                  "name": "payload",
                  "description": "payload",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Any",
                    "annotations": {
                      "typeId": "java.lang.Object",
                      "classInformation": {
                        "classname": "java.lang.Object",
                        "hasDefaultConstructor": true,
                        "isInterface": false,
                        "isInstantiable": true,
                        "isAbstract": false,
                        "isFinal": false,
                        "implementedInterfaces": [],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "typeAlias": {
                        "value": "Object"
                      }
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[attributes]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 6
                  },
                  "allowedStereotypeModels": [],
                  "name": "attributes",
                  "description": "attributes",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "org.mule.runtime.extension.api.runtime.config.ConfigurationProvider"
                    },
                    "fields": []
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 7
                  },
                  "allowedStereotypeModels": [
                    {
                      "type": "DATABASE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "FILE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "HTTP-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "RABBITMQ-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    }
                  ],
                  "name": "config-ref",
                  "description": "The name of the configuration to be used to execute this component",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "showInDsl": false,
              "name": "General",
              "description": "",
              "modelProperties": {}
            },
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 8
                  },
                  "allowedStereotypeModels": [],
                  "name": "level",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 9
                  },
                  "allowedStereotypeModels": [],
                  "name": "logger-point",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 10
                  },
                  "allowedStereotypeModels": [],
                  "name": "user",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 11
                  },
                  "allowedStereotypeModels": [],
                  "name": "log-message",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 12
                  },
                  "allowedStereotypeModels": [],
                  "name": "custom-correlation-id",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "valueProviderModel": {
                    "actingParameters": [],
                    "partOrder": 1,
                    "providerName": "message-type",
                    "requiresConfiguration": false,
                    "requiresConnection": false,
                    "isOpen": true
                  },
                  "expressionSupport": "NOT_SUPPORTED",
                  "defaultValue": "normal",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 13
                  },
                  "allowedStereotypeModels": [],
                  "name": "message-type",
                  "description": "",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 2
              },
              "showInDsl": false,
              "name": "Log parameters",
              "description": "",
              "modelProperties": {}
            },
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "Union",
                    "annotations": {
                      "typeId": "ReconnectionStrategy"
                    },
                    "of": [
                      {
                        "type": "Object",
                        "annotations": {
                          "typeId": "reconnect"
                        },
                        "fields": [
                          {
                            "key": {
                              "name": "frequency"
                            },
                            "model": {
                              "type": "Number",
                              "annotations": {
                                "int": {},
                                "classInformation": {
                                  "classname": "java.lang.Long",
                                  "hasDefaultConstructor": false,
                                  "isInterface": false,
                                  "isInstantiable": false,
                                  "isAbstract": false,
                                  "isFinal": true,
                                  "implementedInterfaces": [
                                    "java.lang.Comparable"
                                  ],
                                  "parent": "java.lang.Number",
                                  "genericTypes": [],
                                  "isMap": false
                                },
                                "default": "2000"
                              }
                            },
                            "annotations": {
                              "description": {
                                "value": "How often (in ms) to reconnect"
                              }
                            }
                          },
                          {
                            "key": {
                              "name": "blocking"
                            },
                            "model": {
                              "type": "Boolean",
                              "annotations": {
                                "default": "true"
                              }
                            },
                            "annotations": {
                              "description": {
                                "value": "If false, the reconnection strategy will run in a separate, non-blocking thread"
                              }
                            }
                          },
                          {
                            "key": {
                              "name": "count"
                            },
                            "model": {
                              "type": "Number",
                              "annotations": {
                                "int": {},
                                "default": "2"
                              }
                            },
                            "annotations": {
                              "description": {
                                "value": "How many reconnection attempts to make"
                              }
                            }
                          }
                        ]
                      },
                      {
                        "type": "Object",
                        "annotations": {
                          "typeId": "reconnect-forever"
                        },
                        "fields": [
                          {
                            "key": {
                              "name": "frequency"
                            },
                            "model": {
                              "type": "Number",
                              "annotations": {
                                "int": {},
                                "classInformation": {
                                  "classname": "java.lang.Long",
                                  "hasDefaultConstructor": false,
                                  "isInterface": false,
                                  "isInstantiable": false,
                                  "isAbstract": false,
                                  "isFinal": true,
                                  "implementedInterfaces": [
                                    "java.lang.Comparable"
                                  ],
                                  "parent": "java.lang.Number",
                                  "genericTypes": [],
                                  "isMap": false
                                },
                                "default": "2000"
                              }
                            },
                            "annotations": {
                              "description": {
                                "value": "How often (in ms) to reconnect"
                              }
                            }
                          },
                          {
                            "key": {
                              "name": "blocking"
                            },
                            "model": {
                              "type": "Boolean",
                              "annotations": {
                                "default": "true"
                              }
                            },
                            "annotations": {
                              "description": {
                                "value": "If false, the reconnection strategy will run in a separate, non-blocking thread"
                              }
                            }
                          }
                        ]
                      }
                    ]
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 14,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "reconnectionStrategy",
                  "description": "A retry strategy in case of connectivity errors",
                  "modelProperties": {
                    "org.mule.runtime.extension.api.property.QNameModelProperty": {
                      "value": {
                        "namespaceURI": "http://www.mulesoft.org/schema/mule/core",
                        "localPart": "abstract-reconnection-strategy",
                        "prefix": "mule"
                      }
                    },
                    "org.mule.runtime.extension.api.property.InfrastructureParameterModelProperty": {
                      "sequence": 3
                    }
                  }
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 3
              },
              "showInDsl": false,
              "name": "Connection",
              "description": "",
              "modelProperties": {}
            }
          ],
          "name": "log",
          "description": "Send a message to the underlying connection manager. This should be executed asynchronously.",
          "modelProperties": {},
          "kind": "operation"
        },
        {
          "blocking": true,
          "executionType": "CPU_LITE",
          "output": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "outputAttributes": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "transactional": false,
          "requiresConnection": false,
          "supportsStreaming": false,
          "notifications": [],
          "nestedComponents": [],
          "errors": [],
          "stereotype": {
            "type": "MARK-DURATION-OFFSET",
            "namespace": "ILM",
            "parent": {
              "type": "PROCESSOR",
              "namespace": "ILM",
              "parent": {
                "type": "PROCESSOR",
                "namespace": "MULE"
              }
            }
          },
          "parameterGroupModels": [
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[correlationId]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1
                  },
                  "allowedStereotypeModels": [],
                  "name": "execution-id",
                  "description": "Execution id. Defaults to #[correlationId]",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2
                  },
                  "allowedStereotypeModels": [],
                  "name": "offset-id",
                  "displayModel": {
                    "example": "offset1"
                  },
                  "description": "Offset id. It\u0027s mandatory. Cannot be \u0027start\u0027 or \u0027end\u0027 since these are reserved words.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "org.mule.runtime.extension.api.runtime.config.ConfigurationProvider"
                    },
                    "fields": []
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 3
                  },
                  "allowedStereotypeModels": [
                    {
                      "type": "DATABASE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "FILE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "HTTP-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "RABBITMQ-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    }
                  ],
                  "name": "config-ref",
                  "description": "The name of the configuration to be used to execute this component",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "showInDsl": false,
              "name": "General",
              "description": "",
              "modelProperties": {}
            }
          ],
          "name": "mark-duration-offset",
          "description": "Marks offset. It expects to be within an execution context. If there is no execution context, nothing happens.",
          "modelProperties": {},
          "kind": "operation"
        },
        {
          "blocking": true,
          "executionType": "CPU_LITE",
          "output": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "outputAttributes": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "transactional": false,
          "requiresConnection": false,
          "supportsStreaming": false,
          "notifications": [],
          "nestedComponents": [],
          "errors": [],
          "stereotype": {
            "type": "MARK-END",
            "namespace": "ILM",
            "parent": {
              "type": "PROCESSOR",
              "namespace": "ILM",
              "parent": {
                "type": "PROCESSOR",
                "namespace": "MULE"
              }
            }
          },
          "parameterGroupModels": [
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[correlationId]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1
                  },
                  "allowedStereotypeModels": [],
                  "name": "execution-id",
                  "description": "Execution id. Defaults to #[correlationId]",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "org.mule.runtime.extension.api.runtime.config.ConfigurationProvider"
                    },
                    "fields": []
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2
                  },
                  "allowedStereotypeModels": [
                    {
                      "type": "DATABASE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "FILE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "HTTP-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "RABBITMQ-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    }
                  ],
                  "name": "config-ref",
                  "description": "The name of the configuration to be used to execute this component",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "showInDsl": false,
              "name": "General",
              "description": "",
              "modelProperties": {}
            }
          ],
          "name": "mark-end",
          "description": "Marks current end epoch and store in thread local variable.",
          "modelProperties": {},
          "kind": "operation"
        },
        {
          "blocking": true,
          "executionType": "CPU_LITE",
          "output": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "outputAttributes": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "transactional": false,
          "requiresConnection": false,
          "supportsStreaming": false,
          "notifications": [],
          "nestedComponents": [],
          "errors": [
            "ILM:NO_LICENSE",
            "ILM:TEMPLATE_PROCESSING",
            "ILM:INITIALIZATION",
            "ILM:PROCESSING",
            "ILM:MAX_CALLS_REACHED",
            "ILM:CONNECTION",
            "ILM:GENERIC_ERROR",
            "ILM:VALIDATION"
          ],
          "stereotype": {
            "type": "MARK-START",
            "namespace": "ILM",
            "parent": {
              "type": "PROCESSOR",
              "namespace": "ILM",
              "parent": {
                "type": "PROCESSOR",
                "namespace": "MULE"
              }
            }
          },
          "parameterGroupModels": [
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[correlationId]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1
                  },
                  "allowedStereotypeModels": [],
                  "name": "execution-id",
                  "description": "Execution id. Defaults to #[correlationId]",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "org.mule.runtime.extension.api.runtime.config.ConfigurationProvider"
                    },
                    "fields": []
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2
                  },
                  "allowedStereotypeModels": [
                    {
                      "type": "DATABASE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "FILE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "HTTP-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "RABBITMQ-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    }
                  ],
                  "name": "config-ref",
                  "description": "The name of the configuration to be used to execute this component",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "showInDsl": false,
              "name": "General",
              "description": "",
              "modelProperties": {}
            }
          ],
          "name": "mark-start",
          "description": "Marks current epoch and store in thread local variable.",
          "modelProperties": {},
          "kind": "operation"
        }
      ],
      "connectionProviders": [
        {
          "connectionManagementType": "NONE",
          "externalLibraryModels": [],
          "supportsConnectivityTesting": true,
          "stereotype": {
            "type": "FILE",
            "namespace": "ILM",
            "parent": {
              "type": "CONNECTION",
              "namespace": "MULE"
            }
          },
          "parameterGroupModels": [
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "@ref:cz.integsoft.mule.ilm.api.file.FileWriterFactory"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 5,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "file-writer",
                  "displayModel": {
                    "summary": "File writer. The default is character writer."
                  },
                  "description": "Optional file writer factory.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "@ref:cz.integsoft.mule.ilm.api.file.RollingPolicy"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 6,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "rolling-policy",
                  "displayModel": {
                    "summary": "Rolling policy definition."
                  },
                  "description": "Optional rolling policy.",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 0
              },
              "showInDsl": false,
              "name": "General",
              "description": "",
              "modelProperties": {}
            },
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "Boolean",
                    "annotations": {
                      "typeId": "boolean"
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "false",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1,
                    "tabName": "Connection"
                  },
                  "allowedStereotypeModels": [],
                  "name": "disabled",
                  "description": "Enables or disables connections. If true, all connections are DisabledConnection. And the log operation do not log. Setting system property ilm.logging.disabled disables logging globally.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": ".",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1,
                    "tabName": "Connection"
                  },
                  "allowedStereotypeModels": [],
                  "name": "path",
                  "description": "Log file path (folder). Default is \u0027.\u0027.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2,
                    "tabName": "Connection"
                  },
                  "allowedStereotypeModels": [],
                  "name": "filename",
                  "description": "Log file name.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Boolean",
                    "annotations": {
                      "typeId": "boolean"
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "defaultValue": "false",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 4,
                    "tabName": "Connection"
                  },
                  "allowedStereotypeModels": [],
                  "name": "ignore-connection-errors",
                  "description": "Ignore connection errors. This may result in not connected resource. Better use reconnection strategy.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "Reconnection"
                    },
                    "fields": [
                      {
                        "key": {
                          "name": "failsDeployment"
                        },
                        "model": {
                          "type": "Boolean",
                          "annotations": {
                            "default": "false"
                          }
                        },
                        "annotations": {
                          "description": {
                            "value": "When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment will fail if the test doesn\u0027t pass after exhausting the associated reconnection strategy"
                          }
                        }
                      },
                      {
                        "key": {
                          "name": "reconnectionStrategy"
                        },
                        "model": {
                          "type": "Union",
                          "annotations": {
                            "typeId": "ReconnectionStrategy"
                          },
                          "of": [
                            {
                              "type": "Object",
                              "annotations": {
                                "typeId": "reconnect"
                              },
                              "fields": [
                                {
                                  "key": {
                                    "name": "frequency"
                                  },
                                  "model": {
                                    "type": "Number",
                                    "annotations": {
                                      "int": {},
                                      "classInformation": {
                                        "classname": "java.lang.Long",
                                        "hasDefaultConstructor": false,
                                        "isInterface": false,
                                        "isInstantiable": false,
                                        "isAbstract": false,
                                        "isFinal": true,
                                        "implementedInterfaces": [
                                          "java.lang.Comparable"
                                        ],
                                        "parent": "java.lang.Number",
                                        "genericTypes": [],
                                        "isMap": false
                                      },
                                      "default": "2000"
                                    }
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "How often (in ms) to reconnect"
                                    }
                                  }
                                },
                                {
                                  "key": {
                                    "name": "blocking"
                                  },
                                  "model": {
                                    "type": "Boolean",
                                    "annotations": {
                                      "default": "true"
                                    }
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "If false, the reconnection strategy will run in a separate, non-blocking thread"
                                    }
                                  }
                                },
                                {
                                  "key": {
                                    "name": "count"
                                  },
                                  "model": {
                                    "type": "Number",
                                    "annotations": {
                                      "int": {},
                                      "default": "2"
                                    }
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "How many reconnection attempts to make"
                                    }
                                  }
                                }
                              ]
                            },
                            {
                              "type": "Object",
                              "annotations": {
                                "typeId": "reconnect-forever"
                              },
                              "fields": [
                                {
                                  "key": {
                                    "name": "frequency"
                                  },
                                  "model": {
                                    "type": "Number",
                                    "annotations": {
                                      "int": {},
                                      "classInformation": {
                                        "classname": "java.lang.Long",
                                        "hasDefaultConstructor": false,
                                        "isInterface": false,
                                        "isInstantiable": false,
                                        "isAbstract": false,
                                        "isFinal": true,
                                        "implementedInterfaces": [
                                          "java.lang.Comparable"
                                        ],
                                        "parent": "java.lang.Number",
                                        "genericTypes": [],
                                        "isMap": false
                                      },
                                      "default": "2000"
                                    }
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "How often (in ms) to reconnect"
                                    }
                                  }
                                },
                                {
                                  "key": {
                                    "name": "blocking"
                                  },
                                  "model": {
                                    "type": "Boolean",
                                    "annotations": {
                                      "default": "true"
                                    }
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "If false, the reconnection strategy will run in a separate, non-blocking thread"
                                    }
                                  }
                                }
                              ]
                            }
                          ]
                        },
                        "annotations": {
                          "description": {
                            "value": "The reconnection strategy to use"
                          }
                        }
                      }
                    ]
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 3,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "reconnection",
                  "description": "When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment will fail if the test doesn\u0027t pass after exhausting the associated reconnection strategy",
                  "modelProperties": {
                    "org.mule.runtime.extension.api.property.QNameModelProperty": {
                      "value": {
                        "namespaceURI": "http://www.mulesoft.org/schema/mule/core",
                        "localPart": "reconnection",
                        "prefix": "mule"
                      }
                    },
                    "org.mule.runtime.extension.api.property.InfrastructureParameterModelProperty": {
                      "sequence": 3
                    }
                  }
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "showInDsl": false,
              "name": "Connection",
              "description": "",
              "modelProperties": {}
            }
          ],
          "name": "file",
          "description": "File connection provider. Prepares Path object. If the root folders dont\u0027t exist it creates them as well as the file itself.",
          "modelProperties": {
            "requiredForMetadata": {
              "requiredParameters": [
                "disabled",
                "path",
                "filename",
                "ignore-connection-errors",
                "file-writer",
                "rolling-policy"
              ]
            }
          }
        }
      ],
      "messageSources": [],
      "name": "file-logging-config",
      "description": "File logging configuration.",
      "modelProperties": {
        "requiredForMetadata": {
          "requiredParameters": [
            "template-file",
            "application-key",
            "application-name",
            "fail-on-missing-properties",
            "replace-if-missing-with",
            "fail-on-missing-duration",
            "replace-if-missing-duration-with",
            "ignore-exceptions",
            "escape-values",
            "escaper-class",
            "validate-payload",
            "payload-validator-class",
            "log-persistence-strategy",
            "log-post-processors",
            "stack-trace-limit",
            "name"
          ]
        }
      }
    },
    {
      "stereotype": {
        "type": "HTTP-LOGGING-CONFIG",
        "namespace": "ILM",
        "parent": {
          "type": "MODULE_CONFIG",
          "namespace": "MULE"
        }
      },
      "parameterGroupModels": [
        {
          "parameters": [
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": true,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 5
              },
              "allowedStereotypeModels": [],
              "name": "template-file",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 6
              },
              "allowedStereotypeModels": [],
              "name": "application-key",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "#[app.name]",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 7
              },
              "allowedStereotypeModels": [],
              "name": "application-name",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Boolean",
                "annotations": {
                  "typeId": "boolean"
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "true",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 8
              },
              "allowedStereotypeModels": [],
              "name": "fail-on-missing-properties",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "null",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 9
              },
              "allowedStereotypeModels": [],
              "name": "replace-if-missing-with",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Boolean",
                "annotations": {
                  "typeId": "boolean"
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "true",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 10
              },
              "allowedStereotypeModels": [],
              "name": "fail-on-missing-duration",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "null",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 11
              },
              "allowedStereotypeModels": [],
              "name": "replace-if-missing-duration-with",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Boolean",
                "annotations": {
                  "typeId": "boolean"
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "true",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 12
              },
              "allowedStereotypeModels": [],
              "name": "ignore-exceptions",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "valueProviderModel": {
                "actingParameters": [],
                "partOrder": 1,
                "providerName": "escape-values",
                "requiresConfiguration": false,
                "requiresConnection": false,
                "isOpen": true
              },
              "expressionSupport": "NOT_SUPPORTED",
              "defaultValue": "default",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 13
              },
              "allowedStereotypeModels": [],
              "name": "escape-values",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 14
              },
              "allowedStereotypeModels": [],
              "name": "escaper-class",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Boolean",
                "annotations": {
                  "typeId": "boolean"
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "defaultValue": "false",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 15
              },
              "allowedStereotypeModels": [],
              "name": "validate-payload",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 16
              },
              "allowedStereotypeModels": [],
              "name": "payload-validator-class",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "@ref:cz.integsoft.mule.ilm.api.persistence.PersistenceParameters"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": true,
                "allowsReferences": true,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 17
              },
              "allowedStereotypeModels": [],
              "name": "log-persistence-strategy",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Array",
                "annotations": {
                  "classInformation": {
                    "classname": "java.util.List",
                    "hasDefaultConstructor": false,
                    "isInterface": true,
                    "isInstantiable": false,
                    "isAbstract": true,
                    "isFinal": false,
                    "implementedInterfaces": [
                      "java.util.Collection"
                    ],
                    "parent": "",
                    "genericTypes": [
                      "cz.integsoft.mule.ilm.api.processor.LogPostProcessorParameters"
                    ],
                    "isMap": false
                  }
                },
                "item": {
                  "type": "@ref:cz.integsoft.mule.ilm.api.processor.LogPostProcessorParameters"
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": true,
                "allowsReferences": true,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 18
              },
              "allowedStereotypeModels": [],
              "name": "log-post-processors",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Number",
                "annotations": {
                  "classInformation": {
                    "classname": "java.lang.Integer",
                    "hasDefaultConstructor": false,
                    "isInterface": false,
                    "isInstantiable": false,
                    "isAbstract": false,
                    "isFinal": true,
                    "implementedInterfaces": [
                      "java.lang.Comparable"
                    ],
                    "parent": "java.lang.Number",
                    "genericTypes": [],
                    "isMap": false
                  },
                  "int": {}
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "-1",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 19
              },
              "allowedStereotypeModels": [],
              "name": "stack-trace-limit",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1,
                "tabName": "General"
              },
              "allowedStereotypeModels": [],
              "name": "path",
              "description": "HTTP path.",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String",
                "annotations": {
                  "typeId": "cz.integsoft.mule.ilm.api.http.AllowedHttpMethod",
                  "enum": {
                    "type": "[Ljava.lang.String;",
                    "values": [
                      "POST",
                      "PUT",
                      "PATCH"
                    ]
                  }
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "defaultValue": "POST",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 2,
                "tabName": "General"
              },
              "allowedStereotypeModels": [],
              "name": "method",
              "description": "Allowed HTTP method.",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Array",
                "annotations": {
                  "classInformation": {
                    "classname": "java.util.List",
                    "hasDefaultConstructor": false,
                    "isInterface": true,
                    "isInstantiable": false,
                    "isAbstract": true,
                    "isFinal": false,
                    "implementedInterfaces": [
                      "java.util.Collection"
                    ],
                    "parent": "",
                    "genericTypes": [
                      "cz.integsoft.mule.ilm.api.http.HttpHeader"
                    ],
                    "isMap": false
                  }
                },
                "item": {
                  "type": "@ref:cz.integsoft.mule.ilm.api.http.HttpHeader"
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": true,
                "allowsReferences": true,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 3,
                "tabName": "General"
              },
              "allowedStereotypeModels": [],
              "name": "http-headers",
              "description": "Default HTTP headers the message should include. It\u0027s expected at least content-type header should be addded since logging methods must have a body.",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Array",
                "annotations": {
                  "classInformation": {
                    "classname": "java.util.List",
                    "hasDefaultConstructor": false,
                    "isInterface": true,
                    "isInstantiable": false,
                    "isAbstract": true,
                    "isFinal": false,
                    "implementedInterfaces": [
                      "java.util.Collection"
                    ],
                    "parent": "",
                    "genericTypes": [
                      "cz.integsoft.mule.ilm.api.http.QueryParam"
                    ],
                    "isMap": false
                  }
                },
                "item": {
                  "type": "@ref:cz.integsoft.mule.ilm.api.http.QueryParam"
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": true,
                "allowsReferences": true,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 4,
                "tabName": "General"
              },
              "allowedStereotypeModels": [],
              "name": "query-params",
              "displayModel": {
                "displayName": "Query Parameters"
              },
              "description": "Default Query parameters the request should include.",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "defaultValue": "200..226",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 2,
                "tabName": "Advanced"
              },
              "allowedStereotypeModels": [],
              "name": "success-http-status-codes",
              "displayModel": {
                "example": "200..202,205,400"
              },
              "description": "Sets a range or comma separated status codes, which will be treated as success. All the others will be treated as an error.",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Boolean",
                "annotations": {
                  "typeId": "boolean"
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "false",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 20
              },
              "allowedStereotypeModels": [],
              "name": "allow-gzip",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": true,
              "isConfigOverride": false,
              "isComponentId": true,
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 22
              },
              "allowedStereotypeModels": [],
              "name": "name",
              "description": "The identifier of this element used to reference it in other components",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Object",
                "annotations": {
                  "typeId": "org.mule.runtime.extension.api.runtime.ExpirationPolicy",
                  "description": {
                    "value": "Configures the minimum amount of time that a dynamic configuration instance can remain idle before the runtime considers it eligible for expiration. This does not mean that the platform will expire the instance at the exact moment that it becomes eligible. The runtime will actually purge the instances when it sees it fit."
                  },
                  "typeDsl": {
                    "allowInlineDefinition": true,
                    "allowTopLevelDefinition": false
                  }
                },
                "fields": [
                  {
                    "key": {
                      "name": "maxIdleTime"
                    },
                    "model": {
                      "type": "Number",
                      "annotations": {
                        "int": {},
                        "classInformation": {
                          "classname": "java.lang.Long",
                          "hasDefaultConstructor": false,
                          "isInterface": false,
                          "isInstantiable": false,
                          "isAbstract": false,
                          "isFinal": true,
                          "implementedInterfaces": [
                            "java.lang.Comparable"
                          ],
                          "parent": "java.lang.Number",
                          "genericTypes": [],
                          "isMap": false
                        },
                        "default": "5"
                      }
                    },
                    "annotations": {
                      "description": {
                        "value": "A scalar time value for the maximum amount of time a dynamic configuration instance should be allowed to be idle before it\u0027s considered eligible for expiration"
                      },
                      "expressionSupport": {
                        "value": "NOT_SUPPORTED"
                      }
                    }
                  },
                  {
                    "key": {
                      "name": "timeUnit"
                    },
                    "model": {
                      "type": "String",
                      "annotations": {
                        "enum": {
                          "type": "[Ljava.lang.String;",
                          "values": [
                            "NANOSECONDS",
                            "MICROSECONDS",
                            "MILLISECONDS",
                            "SECONDS",
                            "MINUTES",
                            "HOURS",
                            "DAYS"
                          ]
                        },
                        "default": "MINUTES"
                      }
                    },
                    "annotations": {
                      "description": {
                        "value": "A time unit that qualifies the maxIdleTime attribute"
                      },
                      "expressionSupport": {
                        "value": "NOT_SUPPORTED"
                      }
                    }
                  }
                ]
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": true,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 21,
                "tabName": "Advanced"
              },
              "allowedStereotypeModels": [],
              "name": "expirationPolicy",
              "description": "Configures the minimum amount of time that a dynamic configuration instance can remain idle before the runtime considers it eligible for expiration. This does not mean that the platform will expire the instance at the exact moment that it becomes eligible. The runtime will actually purge the instances when it sees it fit.",
              "modelProperties": {
                "org.mule.runtime.extension.api.property.QNameModelProperty": {
                  "value": {
                    "namespaceURI": "http://www.mulesoft.org/schema/mule/core",
                    "localPart": "expiration-policy",
                    "prefix": "mule"
                  }
                },
                "org.mule.runtime.extension.api.property.InfrastructureParameterModelProperty": {
                  "sequence": 4
                }
              }
            }
          ],
          "exclusiveParametersModels": [],
          "layoutModel": {
            "password": false,
            "text": false,
            "query": false,
            "order": 1
          },
          "showInDsl": false,
          "name": "General",
          "description": "",
          "modelProperties": {}
        }
      ],
      "externalLibraryModels": [
        {
          "name": "Commons Codec",
          "description": "Apache Commons Codec",
          "type": "DEPENDENCY",
          "suggestedCoordinates": "commons-codec:commons-codec:1.9",
          "optional": false
        },
        {
          "name": "Http Client",
          "description": "Apache HTTP Client connector library",
          "type": "DEPENDENCY",
          "suggestedCoordinates": "org.apache.httpcomponents:httpclient:4.5.3",
          "optional": false
        },
        {
          "name": "Http Client Core",
          "description": "Apache HTTP Client connector library",
          "type": "DEPENDENCY",
          "suggestedCoordinates": "org.apache.httpcomponents:httpcore:4.4.6",
          "optional": false
        },
        {
          "name": "Spring Core",
          "description": "",
          "type": "DEPENDENCY",
          "suggestedCoordinates": "org.springframework:spring-core:[5.1.0.RELEASE,)",
          "optional": false
        }
      ],
      "operations": [
        {
          "blocking": true,
          "executionType": "CPU_LITE",
          "output": {
            "type": {
              "format": "java",
              "type": "Any",
              "annotations": {
                "classInformation": {
                  "classname": "cz.integsoft.mule.ilm.api.LoggingModuleAttributes",
                  "hasDefaultConstructor": false,
                  "isInterface": true,
                  "isInstantiable": false,
                  "isAbstract": true,
                  "isFinal": false,
                  "implementedInterfaces": [
                    "java.io.Serializable"
                  ],
                  "parent": "",
                  "genericTypes": [],
                  "isMap": false
                }
              }
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "outputAttributes": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "transactional": false,
          "requiresConnection": false,
          "supportsStreaming": false,
          "notifications": [],
          "nestedComponents": [],
          "errors": [],
          "stereotype": {
            "type": "LAST-LOG-ATTRIBUTES",
            "namespace": "ILM",
            "parent": {
              "type": "PROCESSOR",
              "namespace": "ILM",
              "parent": {
                "type": "PROCESSOR",
                "namespace": "MULE"
              }
            }
          },
          "parameterGroupModels": [
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[correlationId]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1
                  },
                  "allowedStereotypeModels": [],
                  "name": "execution-id",
                  "description": "Execution id. Defaults to #[correlationId]",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "org.mule.runtime.extension.api.runtime.config.ConfigurationProvider"
                    },
                    "fields": []
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2
                  },
                  "allowedStereotypeModels": [
                    {
                      "type": "DATABASE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "FILE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "HTTP-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "RABBITMQ-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    }
                  ],
                  "name": "config-ref",
                  "description": "The name of the configuration to be used to execute this component",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "showInDsl": false,
              "name": "General",
              "description": "",
              "modelProperties": {}
            },
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 3,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "target",
                  "displayModel": {
                    "displayName": "Target Variable"
                  },
                  "description": "The name of a variable on which the operation\u0027s output will be placed",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "REQUIRED",
                  "defaultValue": "#[payload]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 4,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "targetValue",
                  "displayModel": {
                    "displayName": "Target Value"
                  },
                  "description": "An expression that will be evaluated against the operation\u0027s output and the outcome of that expression will be stored in the target variable",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 2
              },
              "showInDsl": false,
              "name": "Output",
              "description": "",
              "modelProperties": {}
            }
          ],
          "name": "last-log-attributes",
          "description": "",
          "modelProperties": {},
          "kind": "operation"
        },
        {
          "blocking": false,
          "executionType": "CPU_INTENSIVE",
          "output": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "outputAttributes": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "transactional": false,
          "requiresConnection": true,
          "supportsStreaming": false,
          "notifications": [],
          "nestedComponents": [],
          "errors": [
            "ILM:NO_LICENSE",
            "ILM:TEMPLATE_PROCESSING",
            "ILM:INITIALIZATION",
            "ILM:PROCESSING",
            "ILM:MAX_CALLS_REACHED",
            "ILM:CONNECTION",
            "ILM:RETRY_EXHAUSTED",
            "ILM:GENERIC_ERROR",
            "ILM:VALIDATION",
            "ILM:CONNECTIVITY"
          ],
          "stereotype": {
            "type": "LOG",
            "namespace": "ILM",
            "parent": {
              "type": "PROCESSOR",
              "namespace": "ILM",
              "parent": {
                "type": "PROCESSOR",
                "namespace": "MULE"
              }
            }
          },
          "parameterGroupModels": [
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[correlationId]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1
                  },
                  "allowedStereotypeModels": [],
                  "name": "execution-id",
                  "description": "Execution id. Defaults to #[correlationId]",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": true,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2
                  },
                  "allowedStereotypeModels": [],
                  "name": "template-file",
                  "description": "The file name with message template",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Any",
                    "annotations": {
                      "typeId": "java.lang.Object",
                      "classInformation": {
                        "classname": "java.lang.Object",
                        "hasDefaultConstructor": true,
                        "isInterface": false,
                        "isInstantiable": true,
                        "isAbstract": false,
                        "isFinal": false,
                        "implementedInterfaces": [],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "typeAlias": {
                        "value": "Object"
                      }
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[message]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 3
                  },
                  "allowedStereotypeModels": [],
                  "name": "message",
                  "description": "message",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "classInformation": {
                        "classname": "java.util.Map",
                        "hasDefaultConstructor": false,
                        "isInterface": true,
                        "isInstantiable": false,
                        "isAbstract": true,
                        "isFinal": false,
                        "implementedInterfaces": [],
                        "parent": "",
                        "genericTypes": [
                          "java.lang.String",
                          "java.lang.Object"
                        ],
                        "isMap": true
                      }
                    },
                    "open": {
                      "type": "Object",
                      "annotations": {
                        "typeId": "java.lang.Object",
                        "classInformation": {
                          "classname": "java.lang.Object",
                          "hasDefaultConstructor": true,
                          "isInterface": false,
                          "isInstantiable": true,
                          "isAbstract": false,
                          "isFinal": false,
                          "implementedInterfaces": [],
                          "parent": "",
                          "genericTypes": [],
                          "isMap": false
                        },
                        "typeAlias": {
                          "value": "Object"
                        }
                      },
                      "fields": []
                    },
                    "fields": []
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[vars]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 4
                  },
                  "allowedStereotypeModels": [],
                  "name": "variables",
                  "description": "variables",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Any",
                    "annotations": {
                      "typeId": "java.lang.Object",
                      "classInformation": {
                        "classname": "java.lang.Object",
                        "hasDefaultConstructor": true,
                        "isInterface": false,
                        "isInstantiable": true,
                        "isAbstract": false,
                        "isFinal": false,
                        "implementedInterfaces": [],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "typeAlias": {
                        "value": "Object"
                      }
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[payload]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 5
                  },
                  "allowedStereotypeModels": [],
                  "name": "payload",
                  "description": "payload",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Any",
                    "annotations": {
                      "typeId": "java.lang.Object",
                      "classInformation": {
                        "classname": "java.lang.Object",
                        "hasDefaultConstructor": true,
                        "isInterface": false,
                        "isInstantiable": true,
                        "isAbstract": false,
                        "isFinal": false,
                        "implementedInterfaces": [],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "typeAlias": {
                        "value": "Object"
                      }
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[attributes]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 6
                  },
                  "allowedStereotypeModels": [],
                  "name": "attributes",
                  "description": "attributes",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "org.mule.runtime.extension.api.runtime.config.ConfigurationProvider"
                    },
                    "fields": []
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 7
                  },
                  "allowedStereotypeModels": [
                    {
                      "type": "DATABASE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "FILE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "HTTP-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "RABBITMQ-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    }
                  ],
                  "name": "config-ref",
                  "description": "The name of the configuration to be used to execute this component",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "showInDsl": false,
              "name": "General",
              "description": "",
              "modelProperties": {}
            },
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 8
                  },
                  "allowedStereotypeModels": [],
                  "name": "level",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 9
                  },
                  "allowedStereotypeModels": [],
                  "name": "logger-point",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 10
                  },
                  "allowedStereotypeModels": [],
                  "name": "user",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 11
                  },
                  "allowedStereotypeModels": [],
                  "name": "log-message",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 12
                  },
                  "allowedStereotypeModels": [],
                  "name": "custom-correlation-id",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "valueProviderModel": {
                    "actingParameters": [],
                    "partOrder": 1,
                    "providerName": "message-type",
                    "requiresConfiguration": false,
                    "requiresConnection": false,
                    "isOpen": true
                  },
                  "expressionSupport": "NOT_SUPPORTED",
                  "defaultValue": "normal",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 13
                  },
                  "allowedStereotypeModels": [],
                  "name": "message-type",
                  "description": "",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 2
              },
              "showInDsl": false,
              "name": "Log parameters",
              "description": "",
              "modelProperties": {}
            },
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "Union",
                    "annotations": {
                      "typeId": "ReconnectionStrategy"
                    },
                    "of": [
                      {
                        "type": "Object",
                        "annotations": {
                          "typeId": "reconnect"
                        },
                        "fields": [
                          {
                            "key": {
                              "name": "frequency"
                            },
                            "model": {
                              "type": "Number",
                              "annotations": {
                                "int": {},
                                "classInformation": {
                                  "classname": "java.lang.Long",
                                  "hasDefaultConstructor": false,
                                  "isInterface": false,
                                  "isInstantiable": false,
                                  "isAbstract": false,
                                  "isFinal": true,
                                  "implementedInterfaces": [
                                    "java.lang.Comparable"
                                  ],
                                  "parent": "java.lang.Number",
                                  "genericTypes": [],
                                  "isMap": false
                                },
                                "default": "2000"
                              }
                            },
                            "annotations": {
                              "description": {
                                "value": "How often (in ms) to reconnect"
                              }
                            }
                          },
                          {
                            "key": {
                              "name": "blocking"
                            },
                            "model": {
                              "type": "Boolean",
                              "annotations": {
                                "default": "true"
                              }
                            },
                            "annotations": {
                              "description": {
                                "value": "If false, the reconnection strategy will run in a separate, non-blocking thread"
                              }
                            }
                          },
                          {
                            "key": {
                              "name": "count"
                            },
                            "model": {
                              "type": "Number",
                              "annotations": {
                                "int": {},
                                "default": "2"
                              }
                            },
                            "annotations": {
                              "description": {
                                "value": "How many reconnection attempts to make"
                              }
                            }
                          }
                        ]
                      },
                      {
                        "type": "Object",
                        "annotations": {
                          "typeId": "reconnect-forever"
                        },
                        "fields": [
                          {
                            "key": {
                              "name": "frequency"
                            },
                            "model": {
                              "type": "Number",
                              "annotations": {
                                "int": {},
                                "classInformation": {
                                  "classname": "java.lang.Long",
                                  "hasDefaultConstructor": false,
                                  "isInterface": false,
                                  "isInstantiable": false,
                                  "isAbstract": false,
                                  "isFinal": true,
                                  "implementedInterfaces": [
                                    "java.lang.Comparable"
                                  ],
                                  "parent": "java.lang.Number",
                                  "genericTypes": [],
                                  "isMap": false
                                },
                                "default": "2000"
                              }
                            },
                            "annotations": {
                              "description": {
                                "value": "How often (in ms) to reconnect"
                              }
                            }
                          },
                          {
                            "key": {
                              "name": "blocking"
                            },
                            "model": {
                              "type": "Boolean",
                              "annotations": {
                                "default": "true"
                              }
                            },
                            "annotations": {
                              "description": {
                                "value": "If false, the reconnection strategy will run in a separate, non-blocking thread"
                              }
                            }
                          }
                        ]
                      }
                    ]
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 14,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "reconnectionStrategy",
                  "description": "A retry strategy in case of connectivity errors",
                  "modelProperties": {
                    "org.mule.runtime.extension.api.property.QNameModelProperty": {
                      "value": {
                        "namespaceURI": "http://www.mulesoft.org/schema/mule/core",
                        "localPart": "abstract-reconnection-strategy",
                        "prefix": "mule"
                      }
                    },
                    "org.mule.runtime.extension.api.property.InfrastructureParameterModelProperty": {
                      "sequence": 3
                    }
                  }
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 3
              },
              "showInDsl": false,
              "name": "Connection",
              "description": "",
              "modelProperties": {}
            }
          ],
          "name": "log",
          "description": "Send a message to the underlying connection manager. This should be executed asynchronously.",
          "modelProperties": {},
          "kind": "operation"
        },
        {
          "blocking": true,
          "executionType": "CPU_LITE",
          "output": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "outputAttributes": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "transactional": false,
          "requiresConnection": false,
          "supportsStreaming": false,
          "notifications": [],
          "nestedComponents": [],
          "errors": [],
          "stereotype": {
            "type": "MARK-DURATION-OFFSET",
            "namespace": "ILM",
            "parent": {
              "type": "PROCESSOR",
              "namespace": "ILM",
              "parent": {
                "type": "PROCESSOR",
                "namespace": "MULE"
              }
            }
          },
          "parameterGroupModels": [
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[correlationId]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1
                  },
                  "allowedStereotypeModels": [],
                  "name": "execution-id",
                  "description": "Execution id. Defaults to #[correlationId]",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2
                  },
                  "allowedStereotypeModels": [],
                  "name": "offset-id",
                  "displayModel": {
                    "example": "offset1"
                  },
                  "description": "Offset id. It\u0027s mandatory. Cannot be \u0027start\u0027 or \u0027end\u0027 since these are reserved words.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "org.mule.runtime.extension.api.runtime.config.ConfigurationProvider"
                    },
                    "fields": []
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 3
                  },
                  "allowedStereotypeModels": [
                    {
                      "type": "DATABASE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "FILE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "HTTP-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "RABBITMQ-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    }
                  ],
                  "name": "config-ref",
                  "description": "The name of the configuration to be used to execute this component",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "showInDsl": false,
              "name": "General",
              "description": "",
              "modelProperties": {}
            }
          ],
          "name": "mark-duration-offset",
          "description": "Marks offset. It expects to be within an execution context. If there is no execution context, nothing happens.",
          "modelProperties": {},
          "kind": "operation"
        },
        {
          "blocking": true,
          "executionType": "CPU_LITE",
          "output": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "outputAttributes": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "transactional": false,
          "requiresConnection": false,
          "supportsStreaming": false,
          "notifications": [],
          "nestedComponents": [],
          "errors": [],
          "stereotype": {
            "type": "MARK-END",
            "namespace": "ILM",
            "parent": {
              "type": "PROCESSOR",
              "namespace": "ILM",
              "parent": {
                "type": "PROCESSOR",
                "namespace": "MULE"
              }
            }
          },
          "parameterGroupModels": [
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[correlationId]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1
                  },
                  "allowedStereotypeModels": [],
                  "name": "execution-id",
                  "description": "Execution id. Defaults to #[correlationId]",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "org.mule.runtime.extension.api.runtime.config.ConfigurationProvider"
                    },
                    "fields": []
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2
                  },
                  "allowedStereotypeModels": [
                    {
                      "type": "DATABASE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "FILE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "HTTP-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "RABBITMQ-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    }
                  ],
                  "name": "config-ref",
                  "description": "The name of the configuration to be used to execute this component",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "showInDsl": false,
              "name": "General",
              "description": "",
              "modelProperties": {}
            }
          ],
          "name": "mark-end",
          "description": "Marks current end epoch and store in thread local variable.",
          "modelProperties": {},
          "kind": "operation"
        },
        {
          "blocking": true,
          "executionType": "CPU_LITE",
          "output": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "outputAttributes": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "transactional": false,
          "requiresConnection": false,
          "supportsStreaming": false,
          "notifications": [],
          "nestedComponents": [],
          "errors": [
            "ILM:NO_LICENSE",
            "ILM:TEMPLATE_PROCESSING",
            "ILM:INITIALIZATION",
            "ILM:PROCESSING",
            "ILM:MAX_CALLS_REACHED",
            "ILM:CONNECTION",
            "ILM:GENERIC_ERROR",
            "ILM:VALIDATION"
          ],
          "stereotype": {
            "type": "MARK-START",
            "namespace": "ILM",
            "parent": {
              "type": "PROCESSOR",
              "namespace": "ILM",
              "parent": {
                "type": "PROCESSOR",
                "namespace": "MULE"
              }
            }
          },
          "parameterGroupModels": [
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[correlationId]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1
                  },
                  "allowedStereotypeModels": [],
                  "name": "execution-id",
                  "description": "Execution id. Defaults to #[correlationId]",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "org.mule.runtime.extension.api.runtime.config.ConfigurationProvider"
                    },
                    "fields": []
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2
                  },
                  "allowedStereotypeModels": [
                    {
                      "type": "DATABASE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "FILE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "HTTP-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "RABBITMQ-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    }
                  ],
                  "name": "config-ref",
                  "description": "The name of the configuration to be used to execute this component",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "showInDsl": false,
              "name": "General",
              "description": "",
              "modelProperties": {}
            }
          ],
          "name": "mark-start",
          "description": "Marks current epoch and store in thread local variable.",
          "modelProperties": {},
          "kind": "operation"
        }
      ],
      "connectionProviders": [
        {
          "connectionManagementType": "CACHED",
          "externalLibraryModels": [],
          "supportsConnectivityTesting": false,
          "stereotype": {
            "type": "HTTP",
            "namespace": "ILM",
            "parent": {
              "type": "CONNECTION",
              "namespace": "MULE"
            }
          },
          "parameterGroupModels": [
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "Boolean",
                    "annotations": {
                      "typeId": "boolean"
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "defaultValue": "false",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 11,
                    "tabName": "TLS"
                  },
                  "allowedStereotypeModels": [],
                  "name": "trust-all",
                  "displayModel": {
                    "summary": "Set to true to disable trust check on the SSL endpoint."
                  },
                  "description": "Set to true to disable trust check on the SSL endpoint.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "@ref:cz.integsoft.mule.ilm.api.http.proxy.HttpProxyConfig"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 12,
                    "tabName": "Proxy"
                  },
                  "allowedStereotypeModels": [],
                  "name": "proxy-config",
                  "displayModel": {
                    "summary": "Reusable configuration element for outbound connections through a proxy"
                  },
                  "description": "Reusable configuration element for outbound connections through a proxy. A proxy element must define a host name and a port attributes, and optionally can define a username and a password.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "@ref:cz.integsoft.mule.ilm.api.http.authentication.HttpRequestAuthentication"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 13,
                    "tabName": "TLS"
                  },
                  "allowedStereotypeModels": [],
                  "name": "authentication",
                  "description": "Authentication method to use for the HTTP request.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "org.mule.runtime.api.tls.TlsContextFactory",
                      "typeAlias": {
                        "value": "Tls"
                      },
                      "typeDsl": {
                        "allowInlineDefinition": true,
                        "allowTopLevelDefinition": true
                      },
                      "QName": {
                        "value": {
                          "namespaceURI": "http://www.mulesoft.org/schema/mule/tls",
                          "localPart": "context",
                          "prefix": "tls"
                        }
                      }
                    },
                    "fields": [
                      {
                        "key": {
                          "name": "enabledProtocols"
                        },
                        "model": {
                          "type": "String"
                        },
                        "annotations": {
                          "description": {
                            "value": "A comma separated list of protocols enabled for this context."
                          }
                        }
                      },
                      {
                        "key": {
                          "name": "enabledCipherSuites"
                        },
                        "model": {
                          "type": "String"
                        },
                        "annotations": {
                          "description": {
                            "value": "A comma separated list of cipher suites enabled for this context."
                          }
                        }
                      },
                      {
                        "key": {
                          "name": "trust-store"
                        },
                        "model": {
                          "type": "Object",
                          "annotations": {
                            "typeId": "TrustStore",
                            "description": {
                              "value": "Trust store configuration. If used client side, the trust store contains the certificates of the trusted servers. If used server side, it contains the certificates of the trusted clients."
                            }
                          },
                          "fields": [
                            {
                              "key": {
                                "name": "path"
                              },
                              "model": {
                                "type": "String"
                              },
                              "annotations": {
                                "description": {
                                  "value": "The location (which will be resolved relative to the current classpath and file system, if possible) of the trust store."
                                },
                                "display": {
                                  "displayModel": {
                                    "pathModel": {
                                      "type": "FILE",
                                      "fileExtensions": [],
                                      "acceptsUrls": false,
                                      "location": "EMBEDDED"
                                    }
                                  }
                                }
                              }
                            },
                            {
                              "key": {
                                "name": "password"
                              },
                              "model": {
                                "type": "String"
                              },
                              "annotations": {
                                "description": {
                                  "value": "The password used to protect the trust store."
                                },
                                "layout": {
                                  "layoutModel": {
                                    "password": true,
                                    "text": false,
                                    "query": false
                                  }
                                }
                              }
                            },
                            {
                              "key": {
                                "name": "type"
                              },
                              "model": {
                                "type": "String",
                                "annotations": {
                                  "display": {
                                    "displayModel": {
                                      "example": "jks, jceks, pkcs12 or other store type"
                                    }
                                  }
                                }
                              },
                              "annotations": {
                                "description": {
                                  "value": "The type of store used."
                                }
                              }
                            },
                            {
                              "key": {
                                "name": "algorithm"
                              },
                              "model": {
                                "type": "String"
                              },
                              "annotations": {
                                "description": {
                                  "value": "The algorithm used by the trust store."
                                }
                              }
                            },
                            {
                              "key": {
                                "name": "insecure"
                              },
                              "model": {
                                "type": "Boolean",
                                "annotations": {
                                  "default": "false"
                                }
                              },
                              "annotations": {
                                "description": {
                                  "value": "If true, no certificate validations will be performed, rendering connections vulnerable to attacks. Use at your own risk."
                                }
                              }
                            }
                          ]
                        },
                        "annotations": {
                          "parameterDsl": {
                            "allowInlineDefinition": true,
                            "allowReferences": false
                          },
                          "expressionSupport": {
                            "value": "NOT_SUPPORTED"
                          }
                        }
                      },
                      {
                        "key": {
                          "name": "key-store"
                        },
                        "model": {
                          "type": "Object",
                          "annotations": {
                            "typeId": "KeyStore",
                            "description": {
                              "value": "Key store configuration. The key store contains the keys of this server/client."
                            }
                          },
                          "fields": [
                            {
                              "key": {
                                "name": "path"
                              },
                              "model": {
                                "type": "String"
                              },
                              "annotations": {
                                "description": {
                                  "value": "The location (which will be resolved relative to the current classpath and file system, if possible) of the key store."
                                },
                                "display": {
                                  "displayModel": {
                                    "pathModel": {
                                      "type": "FILE",
                                      "fileExtensions": [],
                                      "acceptsUrls": false,
                                      "location": "EMBEDDED"
                                    }
                                  }
                                }
                              }
                            },
                            {
                              "key": {
                                "name": "type"
                              },
                              "model": {
                                "type": "String",
                                "annotations": {
                                  "display": {
                                    "displayModel": {
                                      "example": "jks, jceks, pkcs12 or other store type"
                                    }
                                  }
                                }
                              },
                              "annotations": {
                                "description": {
                                  "value": "The type of store used."
                                }
                              }
                            },
                            {
                              "key": {
                                "name": "alias"
                              },
                              "model": {
                                "type": "String"
                              },
                              "annotations": {
                                "description": {
                                  "value": "When the key store contains many private keys, this attribute indicates the alias of the key that should be used. If not defined, the first key in the file will be used by default."
                                }
                              }
                            },
                            {
                              "key": {
                                "name": "keyPassword"
                              },
                              "model": {
                                "type": "String"
                              },
                              "annotations": {
                                "description": {
                                  "value": "The password used to protect the private key."
                                },
                                "layout": {
                                  "layoutModel": {
                                    "password": true,
                                    "text": false,
                                    "query": false
                                  }
                                }
                              }
                            },
                            {
                              "key": {
                                "name": "password"
                              },
                              "model": {
                                "type": "String"
                              },
                              "annotations": {
                                "description": {
                                  "value": "The password used to protect the key store."
                                },
                                "layout": {
                                  "layoutModel": {
                                    "password": true,
                                    "text": false,
                                    "query": false
                                  }
                                }
                              }
                            },
                            {
                              "key": {
                                "name": "algorithm"
                              },
                              "model": {
                                "type": "String"
                              },
                              "annotations": {
                                "description": {
                                  "value": "The algorithm used by the key store."
                                }
                              }
                            }
                          ]
                        },
                        "annotations": {
                          "parameterDsl": {
                            "allowInlineDefinition": true,
                            "allowReferences": false
                          },
                          "expressionSupport": {
                            "value": "NOT_SUPPORTED"
                          }
                        }
                      },
                      {
                        "key": {
                          "name": "revocation-check"
                        },
                        "model": {
                          "type": "Union",
                          "annotations": {
                            "typeId": "RevocationCheck"
                          },
                          "of": [
                            {
                              "type": "Object",
                              "annotations": {
                                "typeId": "standard-revocation-check",
                                "description": {
                                  "value": "Uses the standard JVM certificate revocation checks, which depend on the certificate having the corresponding extension points (additional tags for CRLDP or OCSP), and the availability of revocation servers."
                                }
                              },
                              "fields": [
                                {
                                  "key": {
                                    "name": "onlyEndEntities"
                                  },
                                  "model": {
                                    "type": "Boolean",
                                    "annotations": {
                                      "default": "false"
                                    }
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "Only verify the last element of the certificate chain."
                                    }
                                  }
                                },
                                {
                                  "key": {
                                    "name": "preferCrls"
                                  },
                                  "model": {
                                    "type": "Boolean",
                                    "annotations": {
                                      "default": "false"
                                    }
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "Try CRL instead of OCSP first."
                                    }
                                  }
                                },
                                {
                                  "key": {
                                    "name": "noFallback"
                                  },
                                  "model": {
                                    "type": "Boolean",
                                    "annotations": {
                                      "default": "false"
                                    }
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "Do not use the secondary checking method (the one not selected before)."
                                    }
                                  }
                                },
                                {
                                  "key": {
                                    "name": "softFail"
                                  },
                                  "model": {
                                    "type": "Boolean",
                                    "annotations": {
                                      "default": "false"
                                    }
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "Avoid verification failure when the revocation server can not be reached or is busy."
                                    }
                                  }
                                }
                              ]
                            },
                            {
                              "type": "Object",
                              "annotations": {
                                "typeId": "custom-ocsp-responder",
                                "description": {
                                  "value": "Uses a custom OCSP responder for certificate revocation checks, with a specific trusted certificate for revocating other keys. This ignores extension points (additional tags for CRLDP or OCSP) present in the certificate, if any."
                                }
                              },
                              "fields": [
                                {
                                  "key": {
                                    "name": "url"
                                  },
                                  "model": {
                                    "type": "String"
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "The URL of the OCSP responder."
                                    }
                                  }
                                },
                                {
                                  "key": {
                                    "name": "certAlias"
                                  },
                                  "model": {
                                    "type": "String"
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "Alias of the signing certificate for the OCSP response (must be in the trust store), if present."
                                    }
                                  }
                                }
                              ]
                            },
                            {
                              "type": "Object",
                              "annotations": {
                                "typeId": "crl-file",
                                "description": {
                                  "value": "Local file based certificate revocation checker, which requires a CRL file to be accessible and ignores extension points (additional tags for CRLDP and OCSP) in the certificate."
                                }
                              },
                              "fields": [
                                {
                                  "key": {
                                    "name": "path"
                                  },
                                  "model": {
                                    "type": "String"
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "The path to the CRL file."
                                    }
                                  }
                                }
                              ]
                            }
                          ]
                        },
                        "annotations": {
                          "parameterDsl": {
                            "allowInlineDefinition": true,
                            "allowReferences": false
                          },
                          "expressionSupport": {
                            "value": "NOT_SUPPORTED"
                          }
                        }
                      }
                    ]
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": true
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 10,
                    "tabName": "TLS"
                  },
                  "allowedStereotypeModels": [],
                  "name": "tlsContext",
                  "displayModel": {
                    "displayName": "Authentication"
                  },
                  "description": "Reference to a TLS config element. This will enable HTTPS for this config.",
                  "modelProperties": {
                    "org.mule.runtime.extension.api.property.InfrastructureParameterModelProperty": {
                      "sequence": 8
                    },
                    "org.mule.runtime.extension.api.property.QNameModelProperty": {
                      "value": {
                        "namespaceURI": "http://www.mulesoft.org/schema/mule/tls",
                        "localPart": "context",
                        "prefix": "tls"
                      }
                    }
                  }
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 0
              },
              "showInDsl": false,
              "name": "General",
              "description": "",
              "modelProperties": {}
            },
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "Boolean",
                    "annotations": {
                      "typeId": "boolean"
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "false",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1,
                    "tabName": "Connection"
                  },
                  "allowedStereotypeModels": [],
                  "name": "disabled",
                  "description": "Enables or disables connections. If true, all connections are DisabledConnection. And the log operation do not log. Setting system property ilm.logging.disabled disables logging globally.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String",
                    "annotations": {
                      "typeId": "org.mule.runtime.http.api.HttpConstants.Protocol",
                      "enum": {
                        "type": "[Ljava.lang.String;",
                        "values": [
                          "HTTP",
                          "HTTPS"
                        ]
                      }
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "defaultValue": "HTTP",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1,
                    "tabName": "General"
                  },
                  "allowedStereotypeModels": [],
                  "name": "protocol",
                  "displayModel": {
                    "summary": "Protocol to use for communication. Valid values are HTTP and HTTPS"
                  },
                  "description": "Protocol to use for communication. Valid values are HTTP and HTTPS. Default value is HTTP. When using HTTPS the HTTP communication is going to be secured using TLS / SSL. If HTTPS was configured as protocol then the user can customize the tls/ssl configuration by defining the tls:context child element of this listener-config. If not tls:context is defined then the default JVM certificates are going to be used to establish communication.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2,
                    "tabName": "General"
                  },
                  "allowedStereotypeModels": [],
                  "name": "host",
                  "description": "Host where the requests will be sent.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Number",
                    "annotations": {
                      "classInformation": {
                        "classname": "java.lang.Integer",
                        "hasDefaultConstructor": false,
                        "isInterface": false,
                        "isInstantiable": false,
                        "isAbstract": false,
                        "isFinal": true,
                        "implementedInterfaces": [
                          "java.lang.Comparable"
                        ],
                        "parent": "java.lang.Number",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "int": {}
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 3,
                    "tabName": "General"
                  },
                  "allowedStereotypeModels": [],
                  "name": "port",
                  "description": "Port where the requests will be sent. If the protocol attribute is HTTP (default) then the default value is 80, if the protocol attribute is HTTPS then the default value is 443.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Number",
                    "annotations": {
                      "classInformation": {
                        "classname": "java.lang.Integer",
                        "hasDefaultConstructor": false,
                        "isInterface": false,
                        "isInstantiable": false,
                        "isAbstract": false,
                        "isFinal": true,
                        "implementedInterfaces": [
                          "java.lang.Comparable"
                        ],
                        "parent": "java.lang.Number",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "int": {}
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "defaultValue": "100",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "max-connections",
                  "description": "The maximum number of outbound connections that will be kept open at the same time. By default the number of connections is 100.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Number",
                    "annotations": {
                      "classInformation": {
                        "classname": "java.lang.Integer",
                        "hasDefaultConstructor": false,
                        "isInterface": false,
                        "isInstantiable": false,
                        "isAbstract": false,
                        "isFinal": true,
                        "implementedInterfaces": [
                          "java.lang.Comparable"
                        ],
                        "parent": "java.lang.Number",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "int": {}
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "defaultValue": "10",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "max-connections-per-route",
                  "description": "The maximum number of outbound connections that will be kept open at the same time per host. By default the number of connections is 10.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Number",
                    "annotations": {
                      "classInformation": {
                        "classname": "java.lang.Integer",
                        "hasDefaultConstructor": false,
                        "isInterface": false,
                        "isInstantiable": false,
                        "isAbstract": false,
                        "isFinal": true,
                        "implementedInterfaces": [
                          "java.lang.Comparable"
                        ],
                        "parent": "java.lang.Number",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "int": {}
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "defaultValue": "30000",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 3,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "connection-idle-timeout",
                  "description": "The number of milliseconds that a connection can remain idle before it is closed. The value of this attribute is only used when persistent connections are enabled. Default is 30000.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Number",
                    "annotations": {
                      "classInformation": {
                        "classname": "java.lang.Integer",
                        "hasDefaultConstructor": false,
                        "isInterface": false,
                        "isInstantiable": false,
                        "isAbstract": false,
                        "isFinal": true,
                        "implementedInterfaces": [
                          "java.lang.Comparable"
                        ],
                        "parent": "java.lang.Number",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "int": {}
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 4,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "connection-ttl",
                  "description": "The number of milliseconds that a connection can remain before it is closed. The value of this attribute is only used when persistent connections are enabled. There is no default.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "@ref:cz.integsoft.mule.ilm.api.http.tcp.TcpSocketProperties"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 5,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "socket-properties",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Boolean",
                    "annotations": {
                      "typeId": "boolean"
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "defaultValue": "true",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 6,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "enable-cookies",
                  "description": "If true, cookies received in HTTP responses will be stored, and sent in subsequent HTTP requests. Default is true.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Boolean",
                    "annotations": {
                      "typeId": "boolean"
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "defaultValue": "true",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 7,
                    "tabName": "Connection"
                  },
                  "allowedStereotypeModels": [],
                  "name": "follow-redirects",
                  "description": "Specifies whether to follow redirects or not. Default is true.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Boolean",
                    "annotations": {
                      "typeId": "boolean"
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "defaultValue": "false",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 8,
                    "tabName": "Connection"
                  },
                  "allowedStereotypeModels": [],
                  "name": "ignore-connection-errors",
                  "description": "Ignore connection errors. This may result in not connected resource. Better use reconnection strategy.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "Reconnection"
                    },
                    "fields": [
                      {
                        "key": {
                          "name": "failsDeployment"
                        },
                        "model": {
                          "type": "Boolean",
                          "annotations": {
                            "default": "false"
                          }
                        },
                        "annotations": {
                          "description": {
                            "value": "When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment will fail if the test doesn\u0027t pass after exhausting the associated reconnection strategy"
                          }
                        }
                      },
                      {
                        "key": {
                          "name": "reconnectionStrategy"
                        },
                        "model": {
                          "type": "Union",
                          "annotations": {
                            "typeId": "ReconnectionStrategy"
                          },
                          "of": [
                            {
                              "type": "Object",
                              "annotations": {
                                "typeId": "reconnect"
                              },
                              "fields": [
                                {
                                  "key": {
                                    "name": "frequency"
                                  },
                                  "model": {
                                    "type": "Number",
                                    "annotations": {
                                      "int": {},
                                      "classInformation": {
                                        "classname": "java.lang.Long",
                                        "hasDefaultConstructor": false,
                                        "isInterface": false,
                                        "isInstantiable": false,
                                        "isAbstract": false,
                                        "isFinal": true,
                                        "implementedInterfaces": [
                                          "java.lang.Comparable"
                                        ],
                                        "parent": "java.lang.Number",
                                        "genericTypes": [],
                                        "isMap": false
                                      },
                                      "default": "2000"
                                    }
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "How often (in ms) to reconnect"
                                    }
                                  }
                                },
                                {
                                  "key": {
                                    "name": "blocking"
                                  },
                                  "model": {
                                    "type": "Boolean",
                                    "annotations": {
                                      "default": "true"
                                    }
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "If false, the reconnection strategy will run in a separate, non-blocking thread"
                                    }
                                  }
                                },
                                {
                                  "key": {
                                    "name": "count"
                                  },
                                  "model": {
                                    "type": "Number",
                                    "annotations": {
                                      "int": {},
                                      "default": "2"
                                    }
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "How many reconnection attempts to make"
                                    }
                                  }
                                }
                              ]
                            },
                            {
                              "type": "Object",
                              "annotations": {
                                "typeId": "reconnect-forever"
                              },
                              "fields": [
                                {
                                  "key": {
                                    "name": "frequency"
                                  },
                                  "model": {
                                    "type": "Number",
                                    "annotations": {
                                      "int": {},
                                      "classInformation": {
                                        "classname": "java.lang.Long",
                                        "hasDefaultConstructor": false,
                                        "isInterface": false,
                                        "isInstantiable": false,
                                        "isAbstract": false,
                                        "isFinal": true,
                                        "implementedInterfaces": [
                                          "java.lang.Comparable"
                                        ],
                                        "parent": "java.lang.Number",
                                        "genericTypes": [],
                                        "isMap": false
                                      },
                                      "default": "2000"
                                    }
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "How often (in ms) to reconnect"
                                    }
                                  }
                                },
                                {
                                  "key": {
                                    "name": "blocking"
                                  },
                                  "model": {
                                    "type": "Boolean",
                                    "annotations": {
                                      "default": "true"
                                    }
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "If false, the reconnection strategy will run in a separate, non-blocking thread"
                                    }
                                  }
                                }
                              ]
                            }
                          ]
                        },
                        "annotations": {
                          "description": {
                            "value": "The reconnection strategy to use"
                          }
                        }
                      }
                    ]
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 9,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "reconnection",
                  "description": "When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment will fail if the test doesn\u0027t pass after exhausting the associated reconnection strategy",
                  "modelProperties": {
                    "org.mule.runtime.extension.api.property.QNameModelProperty": {
                      "value": {
                        "namespaceURI": "http://www.mulesoft.org/schema/mule/core",
                        "localPart": "reconnection",
                        "prefix": "mule"
                      }
                    },
                    "org.mule.runtime.extension.api.property.InfrastructureParameterModelProperty": {
                      "sequence": 3
                    }
                  }
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "showInDsl": false,
              "name": "Connection",
              "description": "",
              "modelProperties": {}
            }
          ],
          "name": "http",
          "description": "HttpClient provider. CloseableHttpClient is shared per configurations by use of HttpClientConnectionManager. This reduces overhead when creating more http clients.",
          "modelProperties": {
            "requiredForMetadata": {
              "requiredParameters": [
                "disabled",
                "protocol",
                "host",
                "port",
                "max-connections",
                "max-connections-per-route",
                "connection-idle-timeout",
                "connection-ttl",
                "socket-properties",
                "enable-cookies",
                "follow-redirects",
                "ignore-connection-errors",
                "trust-all",
                "proxy-config",
                "authentication"
              ]
            }
          }
        }
      ],
      "messageSources": [],
      "name": "http-logging-config",
      "description": "HTTP configuration.",
      "modelProperties": {
        "requiredForMetadata": {
          "requiredParameters": [
            "template-file",
            "application-key",
            "application-name",
            "fail-on-missing-properties",
            "replace-if-missing-with",
            "fail-on-missing-duration",
            "replace-if-missing-duration-with",
            "ignore-exceptions",
            "escape-values",
            "escaper-class",
            "validate-payload",
            "payload-validator-class",
            "log-persistence-strategy",
            "log-post-processors",
            "stack-trace-limit",
            "path",
            "method",
            "http-headers",
            "query-params",
            "success-http-status-codes",
            "allow-gzip",
            "name"
          ]
        }
      }
    },
    {
      "stereotype": {
        "type": "RABBITMQ-LOGGING-CONFIG",
        "namespace": "ILM",
        "parent": {
          "type": "MODULE_CONFIG",
          "namespace": "MULE"
        }
      },
      "parameterGroupModels": [
        {
          "parameters": [
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": true,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "allowedStereotypeModels": [],
              "name": "template-file",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 2
              },
              "allowedStereotypeModels": [],
              "name": "application-key",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "#[app.name]",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 3
              },
              "allowedStereotypeModels": [],
              "name": "application-name",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Boolean",
                "annotations": {
                  "typeId": "boolean"
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "true",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 4
              },
              "allowedStereotypeModels": [],
              "name": "fail-on-missing-properties",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "null",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 5
              },
              "allowedStereotypeModels": [],
              "name": "replace-if-missing-with",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Boolean",
                "annotations": {
                  "typeId": "boolean"
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "true",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 6
              },
              "allowedStereotypeModels": [],
              "name": "fail-on-missing-duration",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "null",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 7
              },
              "allowedStereotypeModels": [],
              "name": "replace-if-missing-duration-with",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Boolean",
                "annotations": {
                  "typeId": "boolean"
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "true",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 8
              },
              "allowedStereotypeModels": [],
              "name": "ignore-exceptions",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "valueProviderModel": {
                "actingParameters": [],
                "partOrder": 1,
                "providerName": "escape-values",
                "requiresConfiguration": false,
                "requiresConnection": false,
                "isOpen": true
              },
              "expressionSupport": "NOT_SUPPORTED",
              "defaultValue": "default",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 9
              },
              "allowedStereotypeModels": [],
              "name": "escape-values",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 10
              },
              "allowedStereotypeModels": [],
              "name": "escaper-class",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Boolean",
                "annotations": {
                  "typeId": "boolean"
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "defaultValue": "false",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 11
              },
              "allowedStereotypeModels": [],
              "name": "validate-payload",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 12
              },
              "allowedStereotypeModels": [],
              "name": "payload-validator-class",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "@ref:cz.integsoft.mule.ilm.api.persistence.PersistenceParameters"
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": true,
                "allowsReferences": true,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 13
              },
              "allowedStereotypeModels": [],
              "name": "log-persistence-strategy",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Array",
                "annotations": {
                  "classInformation": {
                    "classname": "java.util.List",
                    "hasDefaultConstructor": false,
                    "isInterface": true,
                    "isInstantiable": false,
                    "isAbstract": true,
                    "isFinal": false,
                    "implementedInterfaces": [
                      "java.util.Collection"
                    ],
                    "parent": "",
                    "genericTypes": [
                      "cz.integsoft.mule.ilm.api.processor.LogPostProcessorParameters"
                    ],
                    "isMap": false
                  }
                },
                "item": {
                  "type": "@ref:cz.integsoft.mule.ilm.api.processor.LogPostProcessorParameters"
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": true,
                "allowsReferences": true,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 14
              },
              "allowedStereotypeModels": [],
              "name": "log-post-processors",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Number",
                "annotations": {
                  "classInformation": {
                    "classname": "java.lang.Integer",
                    "hasDefaultConstructor": false,
                    "isInterface": false,
                    "isInstantiable": false,
                    "isAbstract": false,
                    "isFinal": true,
                    "implementedInterfaces": [
                      "java.lang.Comparable"
                    ],
                    "parent": "java.lang.Number",
                    "genericTypes": [],
                    "isMap": false
                  },
                  "int": {}
                }
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "SUPPORTED",
              "defaultValue": "-1",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 15
              },
              "allowedStereotypeModels": [],
              "name": "stack-trace-limit",
              "description": "",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "String"
              },
              "hasDynamicType": false,
              "required": true,
              "isConfigOverride": false,
              "isComponentId": true,
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": false,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 17
              },
              "allowedStereotypeModels": [],
              "name": "name",
              "description": "The identifier of this element used to reference it in other components",
              "modelProperties": {}
            },
            {
              "type": {
                "format": "java",
                "type": "Object",
                "annotations": {
                  "typeId": "org.mule.runtime.extension.api.runtime.ExpirationPolicy",
                  "description": {
                    "value": "Configures the minimum amount of time that a dynamic configuration instance can remain idle before the runtime considers it eligible for expiration. This does not mean that the platform will expire the instance at the exact moment that it becomes eligible. The runtime will actually purge the instances when it sees it fit."
                  },
                  "typeDsl": {
                    "allowInlineDefinition": true,
                    "allowTopLevelDefinition": false
                  }
                },
                "fields": [
                  {
                    "key": {
                      "name": "maxIdleTime"
                    },
                    "model": {
                      "type": "Number",
                      "annotations": {
                        "int": {},
                        "classInformation": {
                          "classname": "java.lang.Long",
                          "hasDefaultConstructor": false,
                          "isInterface": false,
                          "isInstantiable": false,
                          "isAbstract": false,
                          "isFinal": true,
                          "implementedInterfaces": [
                            "java.lang.Comparable"
                          ],
                          "parent": "java.lang.Number",
                          "genericTypes": [],
                          "isMap": false
                        },
                        "default": "5"
                      }
                    },
                    "annotations": {
                      "description": {
                        "value": "A scalar time value for the maximum amount of time a dynamic configuration instance should be allowed to be idle before it\u0027s considered eligible for expiration"
                      },
                      "expressionSupport": {
                        "value": "NOT_SUPPORTED"
                      }
                    }
                  },
                  {
                    "key": {
                      "name": "timeUnit"
                    },
                    "model": {
                      "type": "String",
                      "annotations": {
                        "enum": {
                          "type": "[Ljava.lang.String;",
                          "values": [
                            "NANOSECONDS",
                            "MICROSECONDS",
                            "MILLISECONDS",
                            "SECONDS",
                            "MINUTES",
                            "HOURS",
                            "DAYS"
                          ]
                        },
                        "default": "MINUTES"
                      }
                    },
                    "annotations": {
                      "description": {
                        "value": "A time unit that qualifies the maxIdleTime attribute"
                      },
                      "expressionSupport": {
                        "value": "NOT_SUPPORTED"
                      }
                    }
                  }
                ]
              },
              "hasDynamicType": false,
              "required": false,
              "isConfigOverride": false,
              "isComponentId": false,
              "expressionSupport": "NOT_SUPPORTED",
              "role": "BEHAVIOUR",
              "dslConfiguration": {
                "allowsInlineDefinition": true,
                "allowsReferences": false,
                "allowTopLevelDefinition": false
              },
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 16,
                "tabName": "Advanced"
              },
              "allowedStereotypeModels": [],
              "name": "expirationPolicy",
              "description": "Configures the minimum amount of time that a dynamic configuration instance can remain idle before the runtime considers it eligible for expiration. This does not mean that the platform will expire the instance at the exact moment that it becomes eligible. The runtime will actually purge the instances when it sees it fit.",
              "modelProperties": {
                "org.mule.runtime.extension.api.property.QNameModelProperty": {
                  "value": {
                    "namespaceURI": "http://www.mulesoft.org/schema/mule/core",
                    "localPart": "expiration-policy",
                    "prefix": "mule"
                  }
                },
                "org.mule.runtime.extension.api.property.InfrastructureParameterModelProperty": {
                  "sequence": 4
                }
              }
            }
          ],
          "exclusiveParametersModels": [],
          "layoutModel": {
            "password": false,
            "text": false,
            "query": false,
            "order": 1
          },
          "showInDsl": false,
          "name": "General",
          "description": "",
          "modelProperties": {}
        }
      ],
      "externalLibraryModels": [
        {
          "name": "Rabbit MQ Client",
          "description": "Rabbit MQ connector library",
          "type": "DEPENDENCY",
          "suggestedCoordinates": "com.rabbitmq:amqp-client:5.7.1",
          "optional": false
        },
        {
          "name": "Spring Core",
          "description": "",
          "type": "DEPENDENCY",
          "suggestedCoordinates": "org.springframework:spring-core:[5.1.0.RELEASE,)",
          "optional": false
        }
      ],
      "operations": [
        {
          "blocking": true,
          "executionType": "CPU_LITE",
          "output": {
            "type": {
              "format": "java",
              "type": "Any",
              "annotations": {
                "classInformation": {
                  "classname": "cz.integsoft.mule.ilm.api.LoggingModuleAttributes",
                  "hasDefaultConstructor": false,
                  "isInterface": true,
                  "isInstantiable": false,
                  "isAbstract": true,
                  "isFinal": false,
                  "implementedInterfaces": [
                    "java.io.Serializable"
                  ],
                  "parent": "",
                  "genericTypes": [],
                  "isMap": false
                }
              }
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "outputAttributes": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "transactional": false,
          "requiresConnection": false,
          "supportsStreaming": false,
          "notifications": [],
          "nestedComponents": [],
          "errors": [],
          "stereotype": {
            "type": "LAST-LOG-ATTRIBUTES",
            "namespace": "ILM",
            "parent": {
              "type": "PROCESSOR",
              "namespace": "ILM",
              "parent": {
                "type": "PROCESSOR",
                "namespace": "MULE"
              }
            }
          },
          "parameterGroupModels": [
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[correlationId]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1
                  },
                  "allowedStereotypeModels": [],
                  "name": "execution-id",
                  "description": "Execution id. Defaults to #[correlationId]",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "org.mule.runtime.extension.api.runtime.config.ConfigurationProvider"
                    },
                    "fields": []
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2
                  },
                  "allowedStereotypeModels": [
                    {
                      "type": "DATABASE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "FILE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "HTTP-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "RABBITMQ-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    }
                  ],
                  "name": "config-ref",
                  "description": "The name of the configuration to be used to execute this component",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "showInDsl": false,
              "name": "General",
              "description": "",
              "modelProperties": {}
            },
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 3,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "target",
                  "displayModel": {
                    "displayName": "Target Variable"
                  },
                  "description": "The name of a variable on which the operation\u0027s output will be placed",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "REQUIRED",
                  "defaultValue": "#[payload]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 4,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "targetValue",
                  "displayModel": {
                    "displayName": "Target Value"
                  },
                  "description": "An expression that will be evaluated against the operation\u0027s output and the outcome of that expression will be stored in the target variable",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 2
              },
              "showInDsl": false,
              "name": "Output",
              "description": "",
              "modelProperties": {}
            }
          ],
          "name": "last-log-attributes",
          "description": "",
          "modelProperties": {},
          "kind": "operation"
        },
        {
          "blocking": false,
          "executionType": "CPU_INTENSIVE",
          "output": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "outputAttributes": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "transactional": false,
          "requiresConnection": true,
          "supportsStreaming": false,
          "notifications": [],
          "nestedComponents": [],
          "errors": [
            "ILM:NO_LICENSE",
            "ILM:TEMPLATE_PROCESSING",
            "ILM:INITIALIZATION",
            "ILM:PROCESSING",
            "ILM:MAX_CALLS_REACHED",
            "ILM:CONNECTION",
            "ILM:RETRY_EXHAUSTED",
            "ILM:GENERIC_ERROR",
            "ILM:VALIDATION",
            "ILM:CONNECTIVITY"
          ],
          "stereotype": {
            "type": "LOG",
            "namespace": "ILM",
            "parent": {
              "type": "PROCESSOR",
              "namespace": "ILM",
              "parent": {
                "type": "PROCESSOR",
                "namespace": "MULE"
              }
            }
          },
          "parameterGroupModels": [
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[correlationId]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1
                  },
                  "allowedStereotypeModels": [],
                  "name": "execution-id",
                  "description": "Execution id. Defaults to #[correlationId]",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": true,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2
                  },
                  "allowedStereotypeModels": [],
                  "name": "template-file",
                  "description": "The file name with message template",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Any",
                    "annotations": {
                      "typeId": "java.lang.Object",
                      "classInformation": {
                        "classname": "java.lang.Object",
                        "hasDefaultConstructor": true,
                        "isInterface": false,
                        "isInstantiable": true,
                        "isAbstract": false,
                        "isFinal": false,
                        "implementedInterfaces": [],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "typeAlias": {
                        "value": "Object"
                      }
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[message]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 3
                  },
                  "allowedStereotypeModels": [],
                  "name": "message",
                  "description": "message",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "classInformation": {
                        "classname": "java.util.Map",
                        "hasDefaultConstructor": false,
                        "isInterface": true,
                        "isInstantiable": false,
                        "isAbstract": true,
                        "isFinal": false,
                        "implementedInterfaces": [],
                        "parent": "",
                        "genericTypes": [
                          "java.lang.String",
                          "java.lang.Object"
                        ],
                        "isMap": true
                      }
                    },
                    "open": {
                      "type": "Object",
                      "annotations": {
                        "typeId": "java.lang.Object",
                        "classInformation": {
                          "classname": "java.lang.Object",
                          "hasDefaultConstructor": true,
                          "isInterface": false,
                          "isInstantiable": true,
                          "isAbstract": false,
                          "isFinal": false,
                          "implementedInterfaces": [],
                          "parent": "",
                          "genericTypes": [],
                          "isMap": false
                        },
                        "typeAlias": {
                          "value": "Object"
                        }
                      },
                      "fields": []
                    },
                    "fields": []
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[vars]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 4
                  },
                  "allowedStereotypeModels": [],
                  "name": "variables",
                  "description": "variables",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Any",
                    "annotations": {
                      "typeId": "java.lang.Object",
                      "classInformation": {
                        "classname": "java.lang.Object",
                        "hasDefaultConstructor": true,
                        "isInterface": false,
                        "isInstantiable": true,
                        "isAbstract": false,
                        "isFinal": false,
                        "implementedInterfaces": [],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "typeAlias": {
                        "value": "Object"
                      }
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[payload]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 5
                  },
                  "allowedStereotypeModels": [],
                  "name": "payload",
                  "description": "payload",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Any",
                    "annotations": {
                      "typeId": "java.lang.Object",
                      "classInformation": {
                        "classname": "java.lang.Object",
                        "hasDefaultConstructor": true,
                        "isInterface": false,
                        "isInstantiable": true,
                        "isAbstract": false,
                        "isFinal": false,
                        "implementedInterfaces": [],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "typeAlias": {
                        "value": "Object"
                      }
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[attributes]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 6
                  },
                  "allowedStereotypeModels": [],
                  "name": "attributes",
                  "description": "attributes",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "org.mule.runtime.extension.api.runtime.config.ConfigurationProvider"
                    },
                    "fields": []
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 7
                  },
                  "allowedStereotypeModels": [
                    {
                      "type": "DATABASE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "FILE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "HTTP-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "RABBITMQ-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    }
                  ],
                  "name": "config-ref",
                  "description": "The name of the configuration to be used to execute this component",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "showInDsl": false,
              "name": "General",
              "description": "",
              "modelProperties": {}
            },
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 8
                  },
                  "allowedStereotypeModels": [],
                  "name": "level",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 9
                  },
                  "allowedStereotypeModels": [],
                  "name": "logger-point",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 10
                  },
                  "allowedStereotypeModels": [],
                  "name": "user",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 11
                  },
                  "allowedStereotypeModels": [],
                  "name": "log-message",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 12
                  },
                  "allowedStereotypeModels": [],
                  "name": "custom-correlation-id",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "valueProviderModel": {
                    "actingParameters": [],
                    "partOrder": 1,
                    "providerName": "message-type",
                    "requiresConfiguration": false,
                    "requiresConnection": false,
                    "isOpen": true
                  },
                  "expressionSupport": "NOT_SUPPORTED",
                  "defaultValue": "normal",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 13
                  },
                  "allowedStereotypeModels": [],
                  "name": "message-type",
                  "description": "",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 2
              },
              "showInDsl": false,
              "name": "Log parameters",
              "description": "",
              "modelProperties": {}
            },
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "Union",
                    "annotations": {
                      "typeId": "ReconnectionStrategy"
                    },
                    "of": [
                      {
                        "type": "Object",
                        "annotations": {
                          "typeId": "reconnect"
                        },
                        "fields": [
                          {
                            "key": {
                              "name": "frequency"
                            },
                            "model": {
                              "type": "Number",
                              "annotations": {
                                "int": {},
                                "classInformation": {
                                  "classname": "java.lang.Long",
                                  "hasDefaultConstructor": false,
                                  "isInterface": false,
                                  "isInstantiable": false,
                                  "isAbstract": false,
                                  "isFinal": true,
                                  "implementedInterfaces": [
                                    "java.lang.Comparable"
                                  ],
                                  "parent": "java.lang.Number",
                                  "genericTypes": [],
                                  "isMap": false
                                },
                                "default": "2000"
                              }
                            },
                            "annotations": {
                              "description": {
                                "value": "How often (in ms) to reconnect"
                              }
                            }
                          },
                          {
                            "key": {
                              "name": "blocking"
                            },
                            "model": {
                              "type": "Boolean",
                              "annotations": {
                                "default": "true"
                              }
                            },
                            "annotations": {
                              "description": {
                                "value": "If false, the reconnection strategy will run in a separate, non-blocking thread"
                              }
                            }
                          },
                          {
                            "key": {
                              "name": "count"
                            },
                            "model": {
                              "type": "Number",
                              "annotations": {
                                "int": {},
                                "default": "2"
                              }
                            },
                            "annotations": {
                              "description": {
                                "value": "How many reconnection attempts to make"
                              }
                            }
                          }
                        ]
                      },
                      {
                        "type": "Object",
                        "annotations": {
                          "typeId": "reconnect-forever"
                        },
                        "fields": [
                          {
                            "key": {
                              "name": "frequency"
                            },
                            "model": {
                              "type": "Number",
                              "annotations": {
                                "int": {},
                                "classInformation": {
                                  "classname": "java.lang.Long",
                                  "hasDefaultConstructor": false,
                                  "isInterface": false,
                                  "isInstantiable": false,
                                  "isAbstract": false,
                                  "isFinal": true,
                                  "implementedInterfaces": [
                                    "java.lang.Comparable"
                                  ],
                                  "parent": "java.lang.Number",
                                  "genericTypes": [],
                                  "isMap": false
                                },
                                "default": "2000"
                              }
                            },
                            "annotations": {
                              "description": {
                                "value": "How often (in ms) to reconnect"
                              }
                            }
                          },
                          {
                            "key": {
                              "name": "blocking"
                            },
                            "model": {
                              "type": "Boolean",
                              "annotations": {
                                "default": "true"
                              }
                            },
                            "annotations": {
                              "description": {
                                "value": "If false, the reconnection strategy will run in a separate, non-blocking thread"
                              }
                            }
                          }
                        ]
                      }
                    ]
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 14,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "reconnectionStrategy",
                  "description": "A retry strategy in case of connectivity errors",
                  "modelProperties": {
                    "org.mule.runtime.extension.api.property.QNameModelProperty": {
                      "value": {
                        "namespaceURI": "http://www.mulesoft.org/schema/mule/core",
                        "localPart": "abstract-reconnection-strategy",
                        "prefix": "mule"
                      }
                    },
                    "org.mule.runtime.extension.api.property.InfrastructureParameterModelProperty": {
                      "sequence": 3
                    }
                  }
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 3
              },
              "showInDsl": false,
              "name": "Connection",
              "description": "",
              "modelProperties": {}
            }
          ],
          "name": "log",
          "description": "Send a message to the underlying connection manager. This should be executed asynchronously.",
          "modelProperties": {},
          "kind": "operation"
        },
        {
          "blocking": true,
          "executionType": "CPU_LITE",
          "output": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "outputAttributes": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "transactional": false,
          "requiresConnection": false,
          "supportsStreaming": false,
          "notifications": [],
          "nestedComponents": [],
          "errors": [],
          "stereotype": {
            "type": "MARK-DURATION-OFFSET",
            "namespace": "ILM",
            "parent": {
              "type": "PROCESSOR",
              "namespace": "ILM",
              "parent": {
                "type": "PROCESSOR",
                "namespace": "MULE"
              }
            }
          },
          "parameterGroupModels": [
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[correlationId]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1
                  },
                  "allowedStereotypeModels": [],
                  "name": "execution-id",
                  "description": "Execution id. Defaults to #[correlationId]",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2
                  },
                  "allowedStereotypeModels": [],
                  "name": "offset-id",
                  "displayModel": {
                    "example": "offset1"
                  },
                  "description": "Offset id. It\u0027s mandatory. Cannot be \u0027start\u0027 or \u0027end\u0027 since these are reserved words.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "org.mule.runtime.extension.api.runtime.config.ConfigurationProvider"
                    },
                    "fields": []
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 3
                  },
                  "allowedStereotypeModels": [
                    {
                      "type": "DATABASE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "FILE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "HTTP-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "RABBITMQ-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    }
                  ],
                  "name": "config-ref",
                  "description": "The name of the configuration to be used to execute this component",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "showInDsl": false,
              "name": "General",
              "description": "",
              "modelProperties": {}
            }
          ],
          "name": "mark-duration-offset",
          "description": "Marks offset. It expects to be within an execution context. If there is no execution context, nothing happens.",
          "modelProperties": {},
          "kind": "operation"
        },
        {
          "blocking": true,
          "executionType": "CPU_LITE",
          "output": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "outputAttributes": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "transactional": false,
          "requiresConnection": false,
          "supportsStreaming": false,
          "notifications": [],
          "nestedComponents": [],
          "errors": [],
          "stereotype": {
            "type": "MARK-END",
            "namespace": "ILM",
            "parent": {
              "type": "PROCESSOR",
              "namespace": "ILM",
              "parent": {
                "type": "PROCESSOR",
                "namespace": "MULE"
              }
            }
          },
          "parameterGroupModels": [
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[correlationId]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1
                  },
                  "allowedStereotypeModels": [],
                  "name": "execution-id",
                  "description": "Execution id. Defaults to #[correlationId]",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "org.mule.runtime.extension.api.runtime.config.ConfigurationProvider"
                    },
                    "fields": []
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2
                  },
                  "allowedStereotypeModels": [
                    {
                      "type": "DATABASE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "FILE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "HTTP-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "RABBITMQ-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    }
                  ],
                  "name": "config-ref",
                  "description": "The name of the configuration to be used to execute this component",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "showInDsl": false,
              "name": "General",
              "description": "",
              "modelProperties": {}
            }
          ],
          "name": "mark-end",
          "description": "Marks current end epoch and store in thread local variable.",
          "modelProperties": {},
          "kind": "operation"
        },
        {
          "blocking": true,
          "executionType": "CPU_LITE",
          "output": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "outputAttributes": {
            "type": {
              "format": "java",
              "type": "Void"
            },
            "hasDynamicType": false,
            "description": "",
            "modelProperties": {}
          },
          "transactional": false,
          "requiresConnection": false,
          "supportsStreaming": false,
          "notifications": [],
          "nestedComponents": [],
          "errors": [
            "ILM:NO_LICENSE",
            "ILM:TEMPLATE_PROCESSING",
            "ILM:INITIALIZATION",
            "ILM:PROCESSING",
            "ILM:MAX_CALLS_REACHED",
            "ILM:CONNECTION",
            "ILM:GENERIC_ERROR",
            "ILM:VALIDATION"
          ],
          "stereotype": {
            "type": "MARK-START",
            "namespace": "ILM",
            "parent": {
              "type": "PROCESSOR",
              "namespace": "ILM",
              "parent": {
                "type": "PROCESSOR",
                "namespace": "MULE"
              }
            }
          },
          "parameterGroupModels": [
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "#[correlationId]",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1
                  },
                  "allowedStereotypeModels": [],
                  "name": "execution-id",
                  "description": "Execution id. Defaults to #[correlationId]",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "org.mule.runtime.extension.api.runtime.config.ConfigurationProvider"
                    },
                    "fields": []
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": true,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2
                  },
                  "allowedStereotypeModels": [
                    {
                      "type": "DATABASE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "FILE-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "HTTP-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    },
                    {
                      "type": "RABBITMQ-LOGGING-CONFIG",
                      "namespace": "ILM",
                      "parent": {
                        "type": "MODULE_CONFIG",
                        "namespace": "MULE"
                      }
                    }
                  ],
                  "name": "config-ref",
                  "description": "The name of the configuration to be used to execute this component",
                  "modelProperties": {}
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "showInDsl": false,
              "name": "General",
              "description": "",
              "modelProperties": {}
            }
          ],
          "name": "mark-start",
          "description": "Marks current epoch and store in thread local variable.",
          "modelProperties": {},
          "kind": "operation"
        }
      ],
      "connectionProviders": [
        {
          "connectionManagementType": "POOLING",
          "externalLibraryModels": [],
          "supportsConnectivityTesting": true,
          "stereotype": {
            "type": "RABBITMQ",
            "namespace": "ILM",
            "parent": {
              "type": "CONNECTION",
              "namespace": "MULE"
            }
          },
          "parameterGroupModels": [
            {
              "parameters": [
                {
                  "type": {
                    "format": "java",
                    "type": "Boolean",
                    "annotations": {
                      "typeId": "boolean"
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "false",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1,
                    "tabName": "Connection"
                  },
                  "allowedStereotypeModels": [],
                  "name": "disabled",
                  "description": "Enables or disables connections. If true, all connections are DisabledConnection. And the log operation do not log. Setting system property ilm.logging.disabled disables logging globally.",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "defaultValue": "localhost",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1,
                    "tabName": "Connection"
                  },
                  "allowedStereotypeModels": [],
                  "name": "hostname",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Number",
                    "annotations": {
                      "classInformation": {
                        "classname": "java.lang.Integer",
                        "hasDefaultConstructor": false,
                        "isInterface": false,
                        "isInstantiable": false,
                        "isAbstract": false,
                        "isFinal": true,
                        "implementedInterfaces": [
                          "java.lang.Comparable"
                        ],
                        "parent": "java.lang.Number",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "int": {}
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "defaultValue": "5672",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2,
                    "tabName": "Connection"
                  },
                  "allowedStereotypeModels": [],
                  "name": "port",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Boolean",
                    "annotations": {
                      "typeId": "boolean"
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "defaultValue": "true",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 3,
                    "tabName": "Connection"
                  },
                  "allowedStereotypeModels": [],
                  "name": "auto-recovery-enabled",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Number",
                    "annotations": {
                      "classInformation": {
                        "classname": "java.lang.Integer",
                        "hasDefaultConstructor": false,
                        "isInterface": false,
                        "isInstantiable": false,
                        "isAbstract": false,
                        "isFinal": true,
                        "implementedInterfaces": [
                          "java.lang.Comparable"
                        ],
                        "parent": "java.lang.Number",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "int": {}
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 4,
                    "tabName": "Connection"
                  },
                  "allowedStereotypeModels": [],
                  "name": "nio-threads-count",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Boolean",
                    "annotations": {
                      "typeId": "boolean"
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "defaultValue": "false",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 5,
                    "tabName": "Connection"
                  },
                  "allowedStereotypeModels": [],
                  "name": "ignore-connection-errors",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1,
                    "tabName": "TLS"
                  },
                  "allowedStereotypeModels": [],
                  "name": "username",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": true,
                    "text": false,
                    "query": false,
                    "order": 2,
                    "tabName": "TLS"
                  },
                  "allowedStereotypeModels": [],
                  "name": "password",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Boolean",
                    "annotations": {
                      "typeId": "boolean"
                    }
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "defaultValue": "false",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 3,
                    "tabName": "TLS"
                  },
                  "allowedStereotypeModels": [],
                  "name": "use-ssl",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "defaultValue": "/",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 1,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "virtual-host",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 2,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "queue",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": true,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 3,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "exchange",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "defaultValue": "fanout",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 4,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "exchange-type",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "String"
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "SUPPORTED",
                  "defaultValue": "ilm-routing-key",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": false,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 5,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "routing-key",
                  "description": "",
                  "modelProperties": {}
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "Reconnection"
                    },
                    "fields": [
                      {
                        "key": {
                          "name": "failsDeployment"
                        },
                        "model": {
                          "type": "Boolean",
                          "annotations": {
                            "default": "false"
                          }
                        },
                        "annotations": {
                          "description": {
                            "value": "When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment will fail if the test doesn\u0027t pass after exhausting the associated reconnection strategy"
                          }
                        }
                      },
                      {
                        "key": {
                          "name": "reconnectionStrategy"
                        },
                        "model": {
                          "type": "Union",
                          "annotations": {
                            "typeId": "ReconnectionStrategy"
                          },
                          "of": [
                            {
                              "type": "Object",
                              "annotations": {
                                "typeId": "reconnect"
                              },
                              "fields": [
                                {
                                  "key": {
                                    "name": "frequency"
                                  },
                                  "model": {
                                    "type": "Number",
                                    "annotations": {
                                      "int": {},
                                      "classInformation": {
                                        "classname": "java.lang.Long",
                                        "hasDefaultConstructor": false,
                                        "isInterface": false,
                                        "isInstantiable": false,
                                        "isAbstract": false,
                                        "isFinal": true,
                                        "implementedInterfaces": [
                                          "java.lang.Comparable"
                                        ],
                                        "parent": "java.lang.Number",
                                        "genericTypes": [],
                                        "isMap": false
                                      },
                                      "default": "2000"
                                    }
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "How often (in ms) to reconnect"
                                    }
                                  }
                                },
                                {
                                  "key": {
                                    "name": "blocking"
                                  },
                                  "model": {
                                    "type": "Boolean",
                                    "annotations": {
                                      "default": "true"
                                    }
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "If false, the reconnection strategy will run in a separate, non-blocking thread"
                                    }
                                  }
                                },
                                {
                                  "key": {
                                    "name": "count"
                                  },
                                  "model": {
                                    "type": "Number",
                                    "annotations": {
                                      "int": {},
                                      "default": "2"
                                    }
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "How many reconnection attempts to make"
                                    }
                                  }
                                }
                              ]
                            },
                            {
                              "type": "Object",
                              "annotations": {
                                "typeId": "reconnect-forever"
                              },
                              "fields": [
                                {
                                  "key": {
                                    "name": "frequency"
                                  },
                                  "model": {
                                    "type": "Number",
                                    "annotations": {
                                      "int": {},
                                      "classInformation": {
                                        "classname": "java.lang.Long",
                                        "hasDefaultConstructor": false,
                                        "isInterface": false,
                                        "isInstantiable": false,
                                        "isAbstract": false,
                                        "isFinal": true,
                                        "implementedInterfaces": [
                                          "java.lang.Comparable"
                                        ],
                                        "parent": "java.lang.Number",
                                        "genericTypes": [],
                                        "isMap": false
                                      },
                                      "default": "2000"
                                    }
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "How often (in ms) to reconnect"
                                    }
                                  }
                                },
                                {
                                  "key": {
                                    "name": "blocking"
                                  },
                                  "model": {
                                    "type": "Boolean",
                                    "annotations": {
                                      "default": "true"
                                    }
                                  },
                                  "annotations": {
                                    "description": {
                                      "value": "If false, the reconnection strategy will run in a separate, non-blocking thread"
                                    }
                                  }
                                }
                              ]
                            }
                          ]
                        },
                        "annotations": {
                          "description": {
                            "value": "The reconnection strategy to use"
                          }
                        }
                      }
                    ]
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 6,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "reconnection",
                  "description": "When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment will fail if the test doesn\u0027t pass after exhausting the associated reconnection strategy",
                  "modelProperties": {
                    "org.mule.runtime.extension.api.property.QNameModelProperty": {
                      "value": {
                        "namespaceURI": "http://www.mulesoft.org/schema/mule/core",
                        "localPart": "reconnection",
                        "prefix": "mule"
                      }
                    },
                    "org.mule.runtime.extension.api.property.InfrastructureParameterModelProperty": {
                      "sequence": 3
                    }
                  }
                },
                {
                  "type": {
                    "format": "java",
                    "type": "Object",
                    "annotations": {
                      "typeId": "org.mule.runtime.api.config.PoolingProfile",
                      "description": {
                        "value": "A pooling profile is used to configure the pooling behaviour of Mule components. Each component can have its own pooling profile."
                      }
                    },
                    "fields": [
                      {
                        "key": {
                          "name": "maxActive"
                        },
                        "model": {
                          "type": "Number",
                          "annotations": {
                            "int": {},
                            "default": "5"
                          }
                        },
                        "annotations": {
                          "description": {
                            "value": "Controls the maximum number of Mule components that can be borrowed from a session at one time. When set to a negative value, there is no limit to the number of components that may be active at one time. When maxActive is exceeded, the pool is said to be exhausted."
                          }
                        }
                      },
                      {
                        "key": {
                          "name": "maxIdle"
                        },
                        "model": {
                          "type": "Number",
                          "annotations": {
                            "int": {},
                            "default": "5"
                          }
                        },
                        "annotations": {
                          "description": {
                            "value": "Controls the maximum number of Mule components that can sit idle in the pool at any time. When set to a negative value, there is no limit to the number of Mule components that may be idle at one time."
                          }
                        }
                      },
                      {
                        "key": {
                          "name": "maxWait"
                        },
                        "model": {
                          "type": "Number",
                          "annotations": {
                            "int": {},
                            "classInformation": {
                              "classname": "java.lang.Long",
                              "hasDefaultConstructor": false,
                              "isInterface": false,
                              "isInstantiable": false,
                              "isAbstract": false,
                              "isFinal": true,
                              "implementedInterfaces": [
                                "java.lang.Comparable"
                              ],
                              "parent": "java.lang.Number",
                              "genericTypes": [],
                              "isMap": false
                            },
                            "default": "4000"
                          }
                        },
                        "annotations": {
                          "description": {
                            "value": "Specifies the number of milliseconds to wait for a pooled component to become available when the pool is exhausted and the exhaustedAction is set to WHEN_EXHAUSTED_WAIT."
                          }
                        }
                      },
                      {
                        "key": {
                          "name": "minEvictionMillis"
                        },
                        "model": {
                          "type": "Number",
                          "annotations": {
                            "int": {},
                            "default": "1800000"
                          }
                        },
                        "annotations": {
                          "description": {
                            "value": "Determines the minimum amount of time an object may sit idle in the pool before it is eligible for eviction. When non-positive, no objects will be evicted from the pool due to idle time alone."
                          }
                        }
                      },
                      {
                        "key": {
                          "name": "evictionCheckIntervalMillis"
                        },
                        "model": {
                          "type": "Number",
                          "annotations": {
                            "int": {},
                            "default": "-1"
                          }
                        },
                        "annotations": {
                          "description": {
                            "value": "Specifies the number of milliseconds between runs of the object evictor. When non-positive, no object evictor is executed."
                          }
                        }
                      },
                      {
                        "key": {
                          "name": "exhaustedAction"
                        },
                        "model": {
                          "type": "String",
                          "annotations": {
                            "enum": {
                              "type": "[Ljava.lang.String;",
                              "values": [
                                "WHEN_EXHAUSTED_GROW",
                                "WHEN_EXHAUSTED_WAIT",
                                "WHEN_EXHAUSTED_FAIL"
                              ]
                            },
                            "default": "WHEN_EXHAUSTED_GROW"
                          }
                        },
                        "annotations": {
                          "description": {
                            "value": "Specifies the behavior of the Mule component pool when the pool is exhausted. Possible values are: \"WHEN_EXHAUSTED_FAIL\", which will throw a NoSuchElementException, \"WHEN_EXHAUSTED_WAIT\", which will block by invoking Object.wait(long) until a new or idle object is available, or WHEN_EXHAUSTED_GROW, which will create a new Mule instance and return it, essentially making maxActive meaningless. If a positive maxWait value is supplied, it will block for at most that many milliseconds, after which a NoSuchElementException will be thrown. If maxThreadWait is a negative value, it will block indefinitely."
                          }
                        }
                      },
                      {
                        "key": {
                          "name": "initialisationPolicy"
                        },
                        "model": {
                          "type": "String",
                          "annotations": {
                            "enum": {
                              "type": "[Ljava.lang.String;",
                              "values": [
                                "INITIALISE_NONE",
                                "INITIALISE_ONE",
                                "INITIALISE_ALL"
                              ]
                            },
                            "default": "INITIALISE_ONE"
                          }
                        },
                        "annotations": {
                          "description": {
                            "value": "Determines how components in a pool should be initialized. The possible values are: INITIALISE_NONE (will not load any components into the pool on startup), INITIALISE_ONE (will load one initial component into the pool on startup), or INITIALISE_ALL (will load all components in the pool on startup)"
                          }
                        }
                      },
                      {
                        "key": {
                          "name": "disabled"
                        },
                        "model": {
                          "type": "Boolean",
                          "annotations": {
                            "default": "false"
                          }
                        },
                        "annotations": {
                          "description": {
                            "value": "Whether pooling should be disabled"
                          }
                        }
                      }
                    ]
                  },
                  "hasDynamicType": false,
                  "required": false,
                  "isConfigOverride": false,
                  "isComponentId": false,
                  "expressionSupport": "NOT_SUPPORTED",
                  "role": "BEHAVIOUR",
                  "dslConfiguration": {
                    "allowsInlineDefinition": true,
                    "allowsReferences": false,
                    "allowTopLevelDefinition": false
                  },
                  "layoutModel": {
                    "password": false,
                    "text": false,
                    "query": false,
                    "order": 7,
                    "tabName": "Advanced"
                  },
                  "allowedStereotypeModels": [],
                  "name": "poolingProfile",
                  "description": "Characteristics of the connection pool",
                  "modelProperties": {
                    "org.mule.runtime.extension.api.property.QNameModelProperty": {
                      "value": {
                        "namespaceURI": "http://www.mulesoft.org/schema/mule/core",
                        "localPart": "pooling-profile",
                        "prefix": "mule"
                      }
                    },
                    "org.mule.runtime.extension.api.property.InfrastructureParameterModelProperty": {
                      "sequence": 5
                    }
                  }
                }
              ],
              "exclusiveParametersModels": [],
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 1
              },
              "showInDsl": false,
              "name": "Connection",
              "description": "",
              "modelProperties": {}
            }
          ],
          "name": "rabbitmq",
          "description": "RabbitMQ connection provider. Closing channel does not close connection since it can be reused. Note that Channel is not thread safe and thus it is pooled. Note: Connection returned from this provider can be UnavailableConnection if ignoreConnectionErrors is true.",
          "modelProperties": {
            "requiredForMetadata": {
              "requiredParameters": [
                "disabled",
                "hostname",
                "port",
                "auto-recovery-enabled",
                "nio-threads-count",
                "ignore-connection-errors",
                "username",
                "password",
                "use-ssl",
                "virtual-host",
                "queue",
                "exchange",
                "exchange-type",
                "routing-key"
              ]
            }
          }
        }
      ],
      "messageSources": [],
      "name": "rabbitmq-logging-config",
      "description": "Rabbit MQ configuration.",
      "modelProperties": {
        "requiredForMetadata": {
          "requiredParameters": [
            "template-file",
            "application-key",
            "application-name",
            "fail-on-missing-properties",
            "replace-if-missing-with",
            "fail-on-missing-duration",
            "replace-if-missing-duration-with",
            "ignore-exceptions",
            "escape-values",
            "escaper-class",
            "validate-payload",
            "payload-validator-class",
            "log-persistence-strategy",
            "log-post-processors",
            "stack-trace-limit",
            "name"
          ]
        }
      }
    }
  ],
  "operations": [],
  "functions": [],
  "constructs": [],
  "connectionProviders": [],
  "messageSources": [],
  "notifications": [],
  "errors": [
    {
      "error": "MULE:ANY",
      "handleable": true
    },
    {
      "error": "MULE:RETRY_EXHAUSTED",
      "parent": "MULE:ANY",
      "handleable": true
    },
    {
      "error": "ILM:RETRY_EXHAUSTED",
      "parent": "MULE:RETRY_EXHAUSTED",
      "handleable": true
    },
    {
      "error": "ILM:CONNECTIVITY",
      "parent": "MULE:CONNECTIVITY",
      "handleable": true
    },
    {
      "error": "MULE:CONNECTIVITY",
      "parent": "MULE:ANY",
      "handleable": true
    },
    {
      "error": "ILM:PROCESSING",
      "parent": "MULE:ANY",
      "handleable": true
    },
    {
      "error": "ILM:CONNECTION",
      "parent": "MULE:CONNECTIVITY",
      "handleable": true
    },
    {
      "error": "ILM:GENERIC_ERROR",
      "parent": "MULE:ANY",
      "handleable": true
    },
    {
      "error": "ILM:VALIDATION",
      "parent": "MULE:ANY",
      "handleable": true
    },
    {
      "error": "ILM:TEMPLATE_PROCESSING",
      "parent": "MULE:ANY",
      "handleable": true
    },
    {
      "error": "ILM:NO_LICENSE",
      "parent": "MULE:ANY",
      "handleable": true
    },
    {
      "error": "ILM:INITIALIZATION",
      "parent": "MULE:ANY",
      "handleable": true
    },
    {
      "error": "ILM:MAX_CALLS_REACHED",
      "parent": "MULE:ANY",
      "handleable": true
    }
  ],
  "modelProperties": {},
  "types": [
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "cz.integsoft.mule.ilm.api.PayloadValidator",
        "classInformation": {
          "classname": "cz.integsoft.mule.ilm.api.PayloadValidator",
          "hasDefaultConstructor": false,
          "isInterface": true,
          "isInstantiable": false,
          "isAbstract": true,
          "isFinal": false,
          "implementedInterfaces": [],
          "parent": "",
          "genericTypes": [],
          "isMap": false
        },
        "typeAlias": {
          "value": "PayloadValidator"
        }
      },
      "fields": []
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "cz.integsoft.mule.ilm.api.ValueEscaper",
        "classInformation": {
          "classname": "cz.integsoft.mule.ilm.api.ValueEscaper",
          "hasDefaultConstructor": false,
          "isInterface": true,
          "isInstantiable": false,
          "isAbstract": true,
          "isFinal": false,
          "implementedInterfaces": [],
          "parent": "",
          "genericTypes": [],
          "isMap": false
        },
        "typeAlias": {
          "value": "ValueEscaper"
        }
      },
      "fields": []
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "cz.integsoft.mule.ilm.api.exception.GenericLoggingException",
        "classInformation": {
          "classname": "cz.integsoft.mule.ilm.api.exception.GenericLoggingException",
          "hasDefaultConstructor": false,
          "isInterface": false,
          "isInstantiable": false,
          "isAbstract": false,
          "isFinal": false,
          "implementedInterfaces": [],
          "parent": "org.mule.runtime.extension.api.exception.ModuleException",
          "genericTypes": [],
          "isMap": false
        },
        "typeAlias": {
          "value": "GenericLoggingException"
        }
      },
      "fields": [
        {
          "key": {
            "name": "cause"
          },
          "model": {
            "type": "Object",
            "annotations": {
              "typeId": "java.lang.Throwable",
              "classInformation": {
                "classname": "java.lang.Throwable",
                "hasDefaultConstructor": true,
                "isInterface": false,
                "isInstantiable": true,
                "isAbstract": false,
                "isFinal": false,
                "implementedInterfaces": [
                  "java.io.Serializable"
                ],
                "parent": "",
                "genericTypes": [],
                "isMap": false
              },
              "typeAlias": {
                "value": "Throwable"
              }
            },
            "fields": [
              {
                "key": {
                  "name": "cause"
                },
                "model": "#..",
                "annotations": {
                  "visibility": "READ_ONLY"
                }
              },
              {
                "key": {
                  "name": "localizedMessage"
                },
                "model": {
                  "type": "String"
                },
                "annotations": {
                  "visibility": "READ_ONLY"
                }
              },
              {
                "key": {
                  "name": "message"
                },
                "model": {
                  "type": "String"
                },
                "annotations": {
                  "visibility": "READ_ONLY"
                }
              },
              {
                "key": {
                  "name": "stackTrace"
                },
                "model": {
                  "type": "Array",
                  "annotations": {
                    "classInformation": {
                      "classname": "java.lang.StackTraceElement[]",
                      "hasDefaultConstructor": false,
                      "isInterface": false,
                      "isInstantiable": false,
                      "isAbstract": true,
                      "isFinal": true,
                      "implementedInterfaces": [
                        "java.lang.Cloneable",
                        "java.io.Serializable"
                      ],
                      "parent": "",
                      "genericTypes": [],
                      "isMap": false
                    }
                  },
                  "item": {
                    "type": "Object",
                    "annotations": {
                      "typeId": "java.lang.StackTraceElement",
                      "classInformation": {
                        "classname": "java.lang.StackTraceElement",
                        "hasDefaultConstructor": false,
                        "isInterface": false,
                        "isInstantiable": false,
                        "isAbstract": false,
                        "isFinal": true,
                        "implementedInterfaces": [
                          "java.io.Serializable"
                        ],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "typeAlias": {
                        "value": "StackTraceElement"
                      }
                    },
                    "fields": [
                      {
                        "key": {
                          "name": "className"
                        },
                        "model": {
                          "type": "String"
                        },
                        "annotations": {
                          "visibility": "READ_ONLY"
                        }
                      },
                      {
                        "key": {
                          "name": "fileName"
                        },
                        "model": {
                          "type": "String"
                        },
                        "annotations": {
                          "visibility": "READ_ONLY"
                        }
                      },
                      {
                        "key": {
                          "name": "lineNumber"
                        },
                        "model": {
                          "type": "Number",
                          "annotations": {
                            "classInformation": {
                              "classname": "int",
                              "hasDefaultConstructor": false,
                              "isInterface": false,
                              "isInstantiable": false,
                              "isAbstract": true,
                              "isFinal": true,
                              "implementedInterfaces": [],
                              "parent": "",
                              "genericTypes": [],
                              "isMap": false
                            },
                            "int": {}
                          }
                        },
                        "annotations": {
                          "visibility": "READ_ONLY"
                        }
                      },
                      {
                        "key": {
                          "name": "methodName"
                        },
                        "model": {
                          "type": "String"
                        },
                        "annotations": {
                          "visibility": "READ_ONLY"
                        }
                      },
                      {
                        "key": {
                          "name": "nativeMethod"
                        },
                        "model": {
                          "type": "Boolean",
                          "annotations": {
                            "typeId": "boolean"
                          }
                        },
                        "annotations": {
                          "visibility": "READ_ONLY"
                        }
                      }
                    ]
                  }
                }
              },
              {
                "key": {
                  "name": "suppressed"
                },
                "model": {
                  "type": "Array",
                  "annotations": {
                    "classInformation": {
                      "classname": "java.lang.Throwable[]",
                      "hasDefaultConstructor": false,
                      "isInterface": false,
                      "isInstantiable": false,
                      "isAbstract": true,
                      "isFinal": true,
                      "implementedInterfaces": [
                        "java.lang.Cloneable",
                        "java.io.Serializable"
                      ],
                      "parent": "",
                      "genericTypes": [],
                      "isMap": false
                    }
                  },
                  "item": "#../.."
                },
                "annotations": {
                  "visibility": "READ_ONLY"
                }
              }
            ]
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        },
        {
          "key": {
            "name": "errorCode"
          },
          "model": {
            "type": "String",
            "annotations": {
              "typeId": "cz.integsoft.mule.ilm.api.LoggingErrorCode",
              "enum": {
                "type": "[Ljava.lang.String;",
                "values": [
                  "ILM_ANY_001",
                  "ILM_ANY_002",
                  "ILM_ANY_003",
                  "ILM_ANY_004",
                  "ILM_ANY_005",
                  "ILM_ANY_006",
                  "ILM_TPL_001",
                  "ILM_TPL_002",
                  "ILM_TPL_003",
                  "ILM_TPL_004",
                  "ILM_TPL_005",
                  "ILM_TPL_006",
                  "ILM_TPL_007",
                  "ILM_TPL_008",
                  "ILM_SND_001",
                  "ILM_SND_002",
                  "ILM_SND_003",
                  "ILM_SND_004",
                  "ILM_CON_001",
                  "ILM_CON_002",
                  "ILM_VAL_001",
                  "ILM_VAL_002"
                ]
              }
            }
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        },
        {
          "key": {
            "name": "localizedMessage"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        },
        {
          "key": {
            "name": "message"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        },
        {
          "key": {
            "name": "stackTrace"
          },
          "model": {
            "type": "Array",
            "annotations": {
              "classInformation": {
                "classname": "java.lang.StackTraceElement[]",
                "hasDefaultConstructor": false,
                "isInterface": false,
                "isInstantiable": false,
                "isAbstract": true,
                "isFinal": true,
                "implementedInterfaces": [
                  "java.lang.Cloneable",
                  "java.io.Serializable"
                ],
                "parent": "",
                "genericTypes": [],
                "isMap": false
              }
            },
            "item": {
              "type": "Object",
              "annotations": {
                "typeId": "java.lang.StackTraceElement",
                "classInformation": {
                  "classname": "java.lang.StackTraceElement",
                  "hasDefaultConstructor": false,
                  "isInterface": false,
                  "isInstantiable": false,
                  "isAbstract": false,
                  "isFinal": true,
                  "implementedInterfaces": [
                    "java.io.Serializable"
                  ],
                  "parent": "",
                  "genericTypes": [],
                  "isMap": false
                },
                "typeAlias": {
                  "value": "StackTraceElement"
                }
              },
              "fields": [
                {
                  "key": {
                    "name": "className"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "fileName"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "lineNumber"
                  },
                  "model": {
                    "type": "Number",
                    "annotations": {
                      "classInformation": {
                        "classname": "int",
                        "hasDefaultConstructor": false,
                        "isInterface": false,
                        "isInstantiable": false,
                        "isAbstract": true,
                        "isFinal": true,
                        "implementedInterfaces": [],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "int": {}
                    }
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "methodName"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "nativeMethod"
                  },
                  "model": {
                    "type": "Boolean",
                    "annotations": {
                      "typeId": "boolean"
                    }
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                }
              ]
            }
          }
        },
        {
          "key": {
            "name": "suppressed"
          },
          "model": {
            "type": "Array",
            "annotations": {
              "classInformation": {
                "classname": "java.lang.Throwable[]",
                "hasDefaultConstructor": false,
                "isInterface": false,
                "isInstantiable": false,
                "isAbstract": true,
                "isFinal": true,
                "implementedInterfaces": [
                  "java.lang.Cloneable",
                  "java.io.Serializable"
                ],
                "parent": "",
                "genericTypes": [],
                "isMap": false
              }
            },
            "item": {
              "type": "Object",
              "annotations": {
                "typeId": "java.lang.Throwable",
                "classInformation": {
                  "classname": "java.lang.Throwable",
                  "hasDefaultConstructor": true,
                  "isInterface": false,
                  "isInstantiable": true,
                  "isAbstract": false,
                  "isFinal": false,
                  "implementedInterfaces": [
                    "java.io.Serializable"
                  ],
                  "parent": "",
                  "genericTypes": [],
                  "isMap": false
                },
                "typeAlias": {
                  "value": "Throwable"
                }
              },
              "fields": [
                {
                  "key": {
                    "name": "cause"
                  },
                  "model": "#..",
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "localizedMessage"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "message"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "stackTrace"
                  },
                  "model": {
                    "type": "Array",
                    "annotations": {
                      "classInformation": {
                        "classname": "java.lang.StackTraceElement[]",
                        "hasDefaultConstructor": false,
                        "isInterface": false,
                        "isInstantiable": false,
                        "isAbstract": true,
                        "isFinal": true,
                        "implementedInterfaces": [
                          "java.lang.Cloneable",
                          "java.io.Serializable"
                        ],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      }
                    },
                    "item": {
                      "type": "Object",
                      "annotations": {
                        "typeId": "java.lang.StackTraceElement",
                        "classInformation": {
                          "classname": "java.lang.StackTraceElement",
                          "hasDefaultConstructor": false,
                          "isInterface": false,
                          "isInstantiable": false,
                          "isAbstract": false,
                          "isFinal": true,
                          "implementedInterfaces": [
                            "java.io.Serializable"
                          ],
                          "parent": "",
                          "genericTypes": [],
                          "isMap": false
                        },
                        "typeAlias": {
                          "value": "StackTraceElement"
                        }
                      },
                      "fields": [
                        {
                          "key": {
                            "name": "className"
                          },
                          "model": {
                            "type": "String"
                          },
                          "annotations": {
                            "visibility": "READ_ONLY"
                          }
                        },
                        {
                          "key": {
                            "name": "fileName"
                          },
                          "model": {
                            "type": "String"
                          },
                          "annotations": {
                            "visibility": "READ_ONLY"
                          }
                        },
                        {
                          "key": {
                            "name": "lineNumber"
                          },
                          "model": {
                            "type": "Number",
                            "annotations": {
                              "classInformation": {
                                "classname": "int",
                                "hasDefaultConstructor": false,
                                "isInterface": false,
                                "isInstantiable": false,
                                "isAbstract": true,
                                "isFinal": true,
                                "implementedInterfaces": [],
                                "parent": "",
                                "genericTypes": [],
                                "isMap": false
                              },
                              "int": {}
                            }
                          },
                          "annotations": {
                            "visibility": "READ_ONLY"
                          }
                        },
                        {
                          "key": {
                            "name": "methodName"
                          },
                          "model": {
                            "type": "String"
                          },
                          "annotations": {
                            "visibility": "READ_ONLY"
                          }
                        },
                        {
                          "key": {
                            "name": "nativeMethod"
                          },
                          "model": {
                            "type": "Boolean",
                            "annotations": {
                              "typeId": "boolean"
                            }
                          },
                          "annotations": {
                            "visibility": "READ_ONLY"
                          }
                        }
                      ]
                    }
                  }
                },
                {
                  "key": {
                    "name": "suppressed"
                  },
                  "model": "#../..",
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                }
              ]
            }
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        },
        {
          "key": {
            "name": "type"
          },
          "model": {
            "type": "Object",
            "annotations": {
              "typeId": "org.mule.runtime.extension.api.error.ErrorTypeDefinition",
              "classInformation": {
                "classname": "org.mule.runtime.extension.api.error.ErrorTypeDefinition",
                "hasDefaultConstructor": false,
                "isInterface": true,
                "isInstantiable": false,
                "isAbstract": true,
                "isFinal": false,
                "implementedInterfaces": [],
                "parent": "",
                "genericTypes": [],
                "isMap": false
              },
              "typeAlias": {
                "value": "ErrorTypeDefinition"
              }
            },
            "fields": []
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        }
      ]
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "cz.integsoft.mule.ilm.api.exception.InitializationException",
        "classInformation": {
          "classname": "cz.integsoft.mule.ilm.api.exception.InitializationException",
          "hasDefaultConstructor": false,
          "isInterface": false,
          "isInstantiable": false,
          "isAbstract": false,
          "isFinal": false,
          "implementedInterfaces": [],
          "parent": "cz.integsoft.mule.ilm.api.exception.GenericLoggingException",
          "genericTypes": [],
          "isMap": false
        },
        "typeAlias": {
          "value": "InitializationException"
        }
      },
      "fields": [
        {
          "key": {
            "name": "cause"
          },
          "model": {
            "type": "Object",
            "annotations": {
              "typeId": "java.lang.Throwable",
              "classInformation": {
                "classname": "java.lang.Throwable",
                "hasDefaultConstructor": true,
                "isInterface": false,
                "isInstantiable": true,
                "isAbstract": false,
                "isFinal": false,
                "implementedInterfaces": [
                  "java.io.Serializable"
                ],
                "parent": "",
                "genericTypes": [],
                "isMap": false
              },
              "typeAlias": {
                "value": "Throwable"
              }
            },
            "fields": [
              {
                "key": {
                  "name": "cause"
                },
                "model": "#..",
                "annotations": {
                  "visibility": "READ_ONLY"
                }
              },
              {
                "key": {
                  "name": "localizedMessage"
                },
                "model": {
                  "type": "String"
                },
                "annotations": {
                  "visibility": "READ_ONLY"
                }
              },
              {
                "key": {
                  "name": "message"
                },
                "model": {
                  "type": "String"
                },
                "annotations": {
                  "visibility": "READ_ONLY"
                }
              },
              {
                "key": {
                  "name": "stackTrace"
                },
                "model": {
                  "type": "Array",
                  "annotations": {
                    "classInformation": {
                      "classname": "java.lang.StackTraceElement[]",
                      "hasDefaultConstructor": false,
                      "isInterface": false,
                      "isInstantiable": false,
                      "isAbstract": true,
                      "isFinal": true,
                      "implementedInterfaces": [
                        "java.lang.Cloneable",
                        "java.io.Serializable"
                      ],
                      "parent": "",
                      "genericTypes": [],
                      "isMap": false
                    }
                  },
                  "item": {
                    "type": "Object",
                    "annotations": {
                      "typeId": "java.lang.StackTraceElement",
                      "classInformation": {
                        "classname": "java.lang.StackTraceElement",
                        "hasDefaultConstructor": false,
                        "isInterface": false,
                        "isInstantiable": false,
                        "isAbstract": false,
                        "isFinal": true,
                        "implementedInterfaces": [
                          "java.io.Serializable"
                        ],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "typeAlias": {
                        "value": "StackTraceElement"
                      }
                    },
                    "fields": [
                      {
                        "key": {
                          "name": "className"
                        },
                        "model": {
                          "type": "String"
                        },
                        "annotations": {
                          "visibility": "READ_ONLY"
                        }
                      },
                      {
                        "key": {
                          "name": "fileName"
                        },
                        "model": {
                          "type": "String"
                        },
                        "annotations": {
                          "visibility": "READ_ONLY"
                        }
                      },
                      {
                        "key": {
                          "name": "lineNumber"
                        },
                        "model": {
                          "type": "Number",
                          "annotations": {
                            "classInformation": {
                              "classname": "int",
                              "hasDefaultConstructor": false,
                              "isInterface": false,
                              "isInstantiable": false,
                              "isAbstract": true,
                              "isFinal": true,
                              "implementedInterfaces": [],
                              "parent": "",
                              "genericTypes": [],
                              "isMap": false
                            },
                            "int": {}
                          }
                        },
                        "annotations": {
                          "visibility": "READ_ONLY"
                        }
                      },
                      {
                        "key": {
                          "name": "methodName"
                        },
                        "model": {
                          "type": "String"
                        },
                        "annotations": {
                          "visibility": "READ_ONLY"
                        }
                      },
                      {
                        "key": {
                          "name": "nativeMethod"
                        },
                        "model": {
                          "type": "Boolean",
                          "annotations": {
                            "typeId": "boolean"
                          }
                        },
                        "annotations": {
                          "visibility": "READ_ONLY"
                        }
                      }
                    ]
                  }
                }
              },
              {
                "key": {
                  "name": "suppressed"
                },
                "model": {
                  "type": "Array",
                  "annotations": {
                    "classInformation": {
                      "classname": "java.lang.Throwable[]",
                      "hasDefaultConstructor": false,
                      "isInterface": false,
                      "isInstantiable": false,
                      "isAbstract": true,
                      "isFinal": true,
                      "implementedInterfaces": [
                        "java.lang.Cloneable",
                        "java.io.Serializable"
                      ],
                      "parent": "",
                      "genericTypes": [],
                      "isMap": false
                    }
                  },
                  "item": "#../.."
                },
                "annotations": {
                  "visibility": "READ_ONLY"
                }
              }
            ]
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        },
        {
          "key": {
            "name": "errorCode"
          },
          "model": {
            "type": "String",
            "annotations": {
              "typeId": "cz.integsoft.mule.ilm.api.LoggingErrorCode",
              "enum": {
                "type": "[Ljava.lang.String;",
                "values": [
                  "ILM_ANY_001",
                  "ILM_ANY_002",
                  "ILM_ANY_003",
                  "ILM_ANY_004",
                  "ILM_ANY_005",
                  "ILM_ANY_006",
                  "ILM_TPL_001",
                  "ILM_TPL_002",
                  "ILM_TPL_003",
                  "ILM_TPL_004",
                  "ILM_TPL_005",
                  "ILM_TPL_006",
                  "ILM_TPL_007",
                  "ILM_TPL_008",
                  "ILM_SND_001",
                  "ILM_SND_002",
                  "ILM_SND_003",
                  "ILM_SND_004",
                  "ILM_CON_001",
                  "ILM_CON_002",
                  "ILM_VAL_001",
                  "ILM_VAL_002"
                ]
              }
            }
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        },
        {
          "key": {
            "name": "localizedMessage"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        },
        {
          "key": {
            "name": "message"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        },
        {
          "key": {
            "name": "stackTrace"
          },
          "model": {
            "type": "Array",
            "annotations": {
              "classInformation": {
                "classname": "java.lang.StackTraceElement[]",
                "hasDefaultConstructor": false,
                "isInterface": false,
                "isInstantiable": false,
                "isAbstract": true,
                "isFinal": true,
                "implementedInterfaces": [
                  "java.lang.Cloneable",
                  "java.io.Serializable"
                ],
                "parent": "",
                "genericTypes": [],
                "isMap": false
              }
            },
            "item": {
              "type": "Object",
              "annotations": {
                "typeId": "java.lang.StackTraceElement",
                "classInformation": {
                  "classname": "java.lang.StackTraceElement",
                  "hasDefaultConstructor": false,
                  "isInterface": false,
                  "isInstantiable": false,
                  "isAbstract": false,
                  "isFinal": true,
                  "implementedInterfaces": [
                    "java.io.Serializable"
                  ],
                  "parent": "",
                  "genericTypes": [],
                  "isMap": false
                },
                "typeAlias": {
                  "value": "StackTraceElement"
                }
              },
              "fields": [
                {
                  "key": {
                    "name": "className"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "fileName"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "lineNumber"
                  },
                  "model": {
                    "type": "Number",
                    "annotations": {
                      "classInformation": {
                        "classname": "int",
                        "hasDefaultConstructor": false,
                        "isInterface": false,
                        "isInstantiable": false,
                        "isAbstract": true,
                        "isFinal": true,
                        "implementedInterfaces": [],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "int": {}
                    }
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "methodName"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "nativeMethod"
                  },
                  "model": {
                    "type": "Boolean",
                    "annotations": {
                      "typeId": "boolean"
                    }
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                }
              ]
            }
          }
        },
        {
          "key": {
            "name": "suppressed"
          },
          "model": {
            "type": "Array",
            "annotations": {
              "classInformation": {
                "classname": "java.lang.Throwable[]",
                "hasDefaultConstructor": false,
                "isInterface": false,
                "isInstantiable": false,
                "isAbstract": true,
                "isFinal": true,
                "implementedInterfaces": [
                  "java.lang.Cloneable",
                  "java.io.Serializable"
                ],
                "parent": "",
                "genericTypes": [],
                "isMap": false
              }
            },
            "item": {
              "type": "Object",
              "annotations": {
                "typeId": "java.lang.Throwable",
                "classInformation": {
                  "classname": "java.lang.Throwable",
                  "hasDefaultConstructor": true,
                  "isInterface": false,
                  "isInstantiable": true,
                  "isAbstract": false,
                  "isFinal": false,
                  "implementedInterfaces": [
                    "java.io.Serializable"
                  ],
                  "parent": "",
                  "genericTypes": [],
                  "isMap": false
                },
                "typeAlias": {
                  "value": "Throwable"
                }
              },
              "fields": [
                {
                  "key": {
                    "name": "cause"
                  },
                  "model": "#..",
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "localizedMessage"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "message"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "stackTrace"
                  },
                  "model": {
                    "type": "Array",
                    "annotations": {
                      "classInformation": {
                        "classname": "java.lang.StackTraceElement[]",
                        "hasDefaultConstructor": false,
                        "isInterface": false,
                        "isInstantiable": false,
                        "isAbstract": true,
                        "isFinal": true,
                        "implementedInterfaces": [
                          "java.lang.Cloneable",
                          "java.io.Serializable"
                        ],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      }
                    },
                    "item": {
                      "type": "Object",
                      "annotations": {
                        "typeId": "java.lang.StackTraceElement",
                        "classInformation": {
                          "classname": "java.lang.StackTraceElement",
                          "hasDefaultConstructor": false,
                          "isInterface": false,
                          "isInstantiable": false,
                          "isAbstract": false,
                          "isFinal": true,
                          "implementedInterfaces": [
                            "java.io.Serializable"
                          ],
                          "parent": "",
                          "genericTypes": [],
                          "isMap": false
                        },
                        "typeAlias": {
                          "value": "StackTraceElement"
                        }
                      },
                      "fields": [
                        {
                          "key": {
                            "name": "className"
                          },
                          "model": {
                            "type": "String"
                          },
                          "annotations": {
                            "visibility": "READ_ONLY"
                          }
                        },
                        {
                          "key": {
                            "name": "fileName"
                          },
                          "model": {
                            "type": "String"
                          },
                          "annotations": {
                            "visibility": "READ_ONLY"
                          }
                        },
                        {
                          "key": {
                            "name": "lineNumber"
                          },
                          "model": {
                            "type": "Number",
                            "annotations": {
                              "classInformation": {
                                "classname": "int",
                                "hasDefaultConstructor": false,
                                "isInterface": false,
                                "isInstantiable": false,
                                "isAbstract": true,
                                "isFinal": true,
                                "implementedInterfaces": [],
                                "parent": "",
                                "genericTypes": [],
                                "isMap": false
                              },
                              "int": {}
                            }
                          },
                          "annotations": {
                            "visibility": "READ_ONLY"
                          }
                        },
                        {
                          "key": {
                            "name": "methodName"
                          },
                          "model": {
                            "type": "String"
                          },
                          "annotations": {
                            "visibility": "READ_ONLY"
                          }
                        },
                        {
                          "key": {
                            "name": "nativeMethod"
                          },
                          "model": {
                            "type": "Boolean",
                            "annotations": {
                              "typeId": "boolean"
                            }
                          },
                          "annotations": {
                            "visibility": "READ_ONLY"
                          }
                        }
                      ]
                    }
                  }
                },
                {
                  "key": {
                    "name": "suppressed"
                  },
                  "model": "#../..",
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                }
              ]
            }
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        },
        {
          "key": {
            "name": "type"
          },
          "model": {
            "type": "Object",
            "annotations": {
              "typeId": "org.mule.runtime.extension.api.error.ErrorTypeDefinition",
              "classInformation": {
                "classname": "org.mule.runtime.extension.api.error.ErrorTypeDefinition",
                "hasDefaultConstructor": false,
                "isInterface": true,
                "isInstantiable": false,
                "isAbstract": true,
                "isFinal": false,
                "implementedInterfaces": [],
                "parent": "",
                "genericTypes": [],
                "isMap": false
              },
              "typeAlias": {
                "value": "ErrorTypeDefinition"
              }
            },
            "fields": []
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        }
      ]
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "cz.integsoft.mule.ilm.api.exception.PostProcessingException",
        "classInformation": {
          "classname": "cz.integsoft.mule.ilm.api.exception.PostProcessingException",
          "hasDefaultConstructor": false,
          "isInterface": false,
          "isInstantiable": false,
          "isAbstract": false,
          "isFinal": false,
          "implementedInterfaces": [],
          "parent": "cz.integsoft.mule.ilm.api.exception.ProcessingException",
          "genericTypes": [],
          "isMap": false
        },
        "typeAlias": {
          "value": "PostProcessingException"
        }
      },
      "fields": [
        {
          "key": {
            "name": "cause"
          },
          "model": {
            "type": "Object",
            "annotations": {
              "typeId": "java.lang.Throwable",
              "classInformation": {
                "classname": "java.lang.Throwable",
                "hasDefaultConstructor": true,
                "isInterface": false,
                "isInstantiable": true,
                "isAbstract": false,
                "isFinal": false,
                "implementedInterfaces": [
                  "java.io.Serializable"
                ],
                "parent": "",
                "genericTypes": [],
                "isMap": false
              },
              "typeAlias": {
                "value": "Throwable"
              }
            },
            "fields": [
              {
                "key": {
                  "name": "cause"
                },
                "model": "#..",
                "annotations": {
                  "visibility": "READ_ONLY"
                }
              },
              {
                "key": {
                  "name": "localizedMessage"
                },
                "model": {
                  "type": "String"
                },
                "annotations": {
                  "visibility": "READ_ONLY"
                }
              },
              {
                "key": {
                  "name": "message"
                },
                "model": {
                  "type": "String"
                },
                "annotations": {
                  "visibility": "READ_ONLY"
                }
              },
              {
                "key": {
                  "name": "stackTrace"
                },
                "model": {
                  "type": "Array",
                  "annotations": {
                    "classInformation": {
                      "classname": "java.lang.StackTraceElement[]",
                      "hasDefaultConstructor": false,
                      "isInterface": false,
                      "isInstantiable": false,
                      "isAbstract": true,
                      "isFinal": true,
                      "implementedInterfaces": [
                        "java.lang.Cloneable",
                        "java.io.Serializable"
                      ],
                      "parent": "",
                      "genericTypes": [],
                      "isMap": false
                    }
                  },
                  "item": {
                    "type": "Object",
                    "annotations": {
                      "typeId": "java.lang.StackTraceElement",
                      "classInformation": {
                        "classname": "java.lang.StackTraceElement",
                        "hasDefaultConstructor": false,
                        "isInterface": false,
                        "isInstantiable": false,
                        "isAbstract": false,
                        "isFinal": true,
                        "implementedInterfaces": [
                          "java.io.Serializable"
                        ],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "typeAlias": {
                        "value": "StackTraceElement"
                      }
                    },
                    "fields": [
                      {
                        "key": {
                          "name": "className"
                        },
                        "model": {
                          "type": "String"
                        },
                        "annotations": {
                          "visibility": "READ_ONLY"
                        }
                      },
                      {
                        "key": {
                          "name": "fileName"
                        },
                        "model": {
                          "type": "String"
                        },
                        "annotations": {
                          "visibility": "READ_ONLY"
                        }
                      },
                      {
                        "key": {
                          "name": "lineNumber"
                        },
                        "model": {
                          "type": "Number",
                          "annotations": {
                            "classInformation": {
                              "classname": "int",
                              "hasDefaultConstructor": false,
                              "isInterface": false,
                              "isInstantiable": false,
                              "isAbstract": true,
                              "isFinal": true,
                              "implementedInterfaces": [],
                              "parent": "",
                              "genericTypes": [],
                              "isMap": false
                            },
                            "int": {}
                          }
                        },
                        "annotations": {
                          "visibility": "READ_ONLY"
                        }
                      },
                      {
                        "key": {
                          "name": "methodName"
                        },
                        "model": {
                          "type": "String"
                        },
                        "annotations": {
                          "visibility": "READ_ONLY"
                        }
                      },
                      {
                        "key": {
                          "name": "nativeMethod"
                        },
                        "model": {
                          "type": "Boolean",
                          "annotations": {
                            "typeId": "boolean"
                          }
                        },
                        "annotations": {
                          "visibility": "READ_ONLY"
                        }
                      }
                    ]
                  }
                }
              },
              {
                "key": {
                  "name": "suppressed"
                },
                "model": {
                  "type": "Array",
                  "annotations": {
                    "classInformation": {
                      "classname": "java.lang.Throwable[]",
                      "hasDefaultConstructor": false,
                      "isInterface": false,
                      "isInstantiable": false,
                      "isAbstract": true,
                      "isFinal": true,
                      "implementedInterfaces": [
                        "java.lang.Cloneable",
                        "java.io.Serializable"
                      ],
                      "parent": "",
                      "genericTypes": [],
                      "isMap": false
                    }
                  },
                  "item": "#../.."
                },
                "annotations": {
                  "visibility": "READ_ONLY"
                }
              }
            ]
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        },
        {
          "key": {
            "name": "errorCode"
          },
          "model": {
            "type": "String",
            "annotations": {
              "typeId": "cz.integsoft.mule.ilm.api.LoggingErrorCode",
              "enum": {
                "type": "[Ljava.lang.String;",
                "values": [
                  "ILM_ANY_001",
                  "ILM_ANY_002",
                  "ILM_ANY_003",
                  "ILM_ANY_004",
                  "ILM_ANY_005",
                  "ILM_ANY_006",
                  "ILM_TPL_001",
                  "ILM_TPL_002",
                  "ILM_TPL_003",
                  "ILM_TPL_004",
                  "ILM_TPL_005",
                  "ILM_TPL_006",
                  "ILM_TPL_007",
                  "ILM_TPL_008",
                  "ILM_SND_001",
                  "ILM_SND_002",
                  "ILM_SND_003",
                  "ILM_SND_004",
                  "ILM_CON_001",
                  "ILM_CON_002",
                  "ILM_VAL_001",
                  "ILM_VAL_002"
                ]
              }
            }
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        },
        {
          "key": {
            "name": "localizedMessage"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        },
        {
          "key": {
            "name": "message"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        },
        {
          "key": {
            "name": "stackTrace"
          },
          "model": {
            "type": "Array",
            "annotations": {
              "classInformation": {
                "classname": "java.lang.StackTraceElement[]",
                "hasDefaultConstructor": false,
                "isInterface": false,
                "isInstantiable": false,
                "isAbstract": true,
                "isFinal": true,
                "implementedInterfaces": [
                  "java.lang.Cloneable",
                  "java.io.Serializable"
                ],
                "parent": "",
                "genericTypes": [],
                "isMap": false
              }
            },
            "item": {
              "type": "Object",
              "annotations": {
                "typeId": "java.lang.StackTraceElement",
                "classInformation": {
                  "classname": "java.lang.StackTraceElement",
                  "hasDefaultConstructor": false,
                  "isInterface": false,
                  "isInstantiable": false,
                  "isAbstract": false,
                  "isFinal": true,
                  "implementedInterfaces": [
                    "java.io.Serializable"
                  ],
                  "parent": "",
                  "genericTypes": [],
                  "isMap": false
                },
                "typeAlias": {
                  "value": "StackTraceElement"
                }
              },
              "fields": [
                {
                  "key": {
                    "name": "className"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "fileName"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "lineNumber"
                  },
                  "model": {
                    "type": "Number",
                    "annotations": {
                      "classInformation": {
                        "classname": "int",
                        "hasDefaultConstructor": false,
                        "isInterface": false,
                        "isInstantiable": false,
                        "isAbstract": true,
                        "isFinal": true,
                        "implementedInterfaces": [],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "int": {}
                    }
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "methodName"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "nativeMethod"
                  },
                  "model": {
                    "type": "Boolean",
                    "annotations": {
                      "typeId": "boolean"
                    }
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                }
              ]
            }
          }
        },
        {
          "key": {
            "name": "suppressed"
          },
          "model": {
            "type": "Array",
            "annotations": {
              "classInformation": {
                "classname": "java.lang.Throwable[]",
                "hasDefaultConstructor": false,
                "isInterface": false,
                "isInstantiable": false,
                "isAbstract": true,
                "isFinal": true,
                "implementedInterfaces": [
                  "java.lang.Cloneable",
                  "java.io.Serializable"
                ],
                "parent": "",
                "genericTypes": [],
                "isMap": false
              }
            },
            "item": {
              "type": "Object",
              "annotations": {
                "typeId": "java.lang.Throwable",
                "classInformation": {
                  "classname": "java.lang.Throwable",
                  "hasDefaultConstructor": true,
                  "isInterface": false,
                  "isInstantiable": true,
                  "isAbstract": false,
                  "isFinal": false,
                  "implementedInterfaces": [
                    "java.io.Serializable"
                  ],
                  "parent": "",
                  "genericTypes": [],
                  "isMap": false
                },
                "typeAlias": {
                  "value": "Throwable"
                }
              },
              "fields": [
                {
                  "key": {
                    "name": "cause"
                  },
                  "model": "#..",
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "localizedMessage"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "message"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "stackTrace"
                  },
                  "model": {
                    "type": "Array",
                    "annotations": {
                      "classInformation": {
                        "classname": "java.lang.StackTraceElement[]",
                        "hasDefaultConstructor": false,
                        "isInterface": false,
                        "isInstantiable": false,
                        "isAbstract": true,
                        "isFinal": true,
                        "implementedInterfaces": [
                          "java.lang.Cloneable",
                          "java.io.Serializable"
                        ],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      }
                    },
                    "item": {
                      "type": "Object",
                      "annotations": {
                        "typeId": "java.lang.StackTraceElement",
                        "classInformation": {
                          "classname": "java.lang.StackTraceElement",
                          "hasDefaultConstructor": false,
                          "isInterface": false,
                          "isInstantiable": false,
                          "isAbstract": false,
                          "isFinal": true,
                          "implementedInterfaces": [
                            "java.io.Serializable"
                          ],
                          "parent": "",
                          "genericTypes": [],
                          "isMap": false
                        },
                        "typeAlias": {
                          "value": "StackTraceElement"
                        }
                      },
                      "fields": [
                        {
                          "key": {
                            "name": "className"
                          },
                          "model": {
                            "type": "String"
                          },
                          "annotations": {
                            "visibility": "READ_ONLY"
                          }
                        },
                        {
                          "key": {
                            "name": "fileName"
                          },
                          "model": {
                            "type": "String"
                          },
                          "annotations": {
                            "visibility": "READ_ONLY"
                          }
                        },
                        {
                          "key": {
                            "name": "lineNumber"
                          },
                          "model": {
                            "type": "Number",
                            "annotations": {
                              "classInformation": {
                                "classname": "int",
                                "hasDefaultConstructor": false,
                                "isInterface": false,
                                "isInstantiable": false,
                                "isAbstract": true,
                                "isFinal": true,
                                "implementedInterfaces": [],
                                "parent": "",
                                "genericTypes": [],
                                "isMap": false
                              },
                              "int": {}
                            }
                          },
                          "annotations": {
                            "visibility": "READ_ONLY"
                          }
                        },
                        {
                          "key": {
                            "name": "methodName"
                          },
                          "model": {
                            "type": "String"
                          },
                          "annotations": {
                            "visibility": "READ_ONLY"
                          }
                        },
                        {
                          "key": {
                            "name": "nativeMethod"
                          },
                          "model": {
                            "type": "Boolean",
                            "annotations": {
                              "typeId": "boolean"
                            }
                          },
                          "annotations": {
                            "visibility": "READ_ONLY"
                          }
                        }
                      ]
                    }
                  }
                },
                {
                  "key": {
                    "name": "suppressed"
                  },
                  "model": "#../..",
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                }
              ]
            }
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        },
        {
          "key": {
            "name": "type"
          },
          "model": {
            "type": "Object",
            "annotations": {
              "typeId": "org.mule.runtime.extension.api.error.ErrorTypeDefinition",
              "classInformation": {
                "classname": "org.mule.runtime.extension.api.error.ErrorTypeDefinition",
                "hasDefaultConstructor": false,
                "isInterface": true,
                "isInstantiable": false,
                "isAbstract": true,
                "isFinal": false,
                "implementedInterfaces": [],
                "parent": "",
                "genericTypes": [],
                "isMap": false
              },
              "typeAlias": {
                "value": "ErrorTypeDefinition"
              }
            },
            "fields": []
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        }
      ]
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "cz.integsoft.mule.ilm.api.exception.ResponseValidatorException",
        "classInformation": {
          "classname": "cz.integsoft.mule.ilm.api.exception.ResponseValidatorException",
          "hasDefaultConstructor": false,
          "isInterface": false,
          "isInstantiable": false,
          "isAbstract": false,
          "isFinal": false,
          "implementedInterfaces": [],
          "parent": "cz.integsoft.mule.ilm.api.exception.GenericLoggingException",
          "genericTypes": [],
          "isMap": false
        },
        "typeAlias": {
          "value": "ResponseValidatorException"
        }
      },
      "fields": [
        {
          "key": {
            "name": "cause"
          },
          "model": {
            "type": "Object",
            "annotations": {
              "typeId": "java.lang.Throwable",
              "classInformation": {
                "classname": "java.lang.Throwable",
                "hasDefaultConstructor": true,
                "isInterface": false,
                "isInstantiable": true,
                "isAbstract": false,
                "isFinal": false,
                "implementedInterfaces": [
                  "java.io.Serializable"
                ],
                "parent": "",
                "genericTypes": [],
                "isMap": false
              },
              "typeAlias": {
                "value": "Throwable"
              }
            },
            "fields": [
              {
                "key": {
                  "name": "cause"
                },
                "model": "#..",
                "annotations": {
                  "visibility": "READ_ONLY"
                }
              },
              {
                "key": {
                  "name": "localizedMessage"
                },
                "model": {
                  "type": "String"
                },
                "annotations": {
                  "visibility": "READ_ONLY"
                }
              },
              {
                "key": {
                  "name": "message"
                },
                "model": {
                  "type": "String"
                },
                "annotations": {
                  "visibility": "READ_ONLY"
                }
              },
              {
                "key": {
                  "name": "stackTrace"
                },
                "model": {
                  "type": "Array",
                  "annotations": {
                    "classInformation": {
                      "classname": "java.lang.StackTraceElement[]",
                      "hasDefaultConstructor": false,
                      "isInterface": false,
                      "isInstantiable": false,
                      "isAbstract": true,
                      "isFinal": true,
                      "implementedInterfaces": [
                        "java.lang.Cloneable",
                        "java.io.Serializable"
                      ],
                      "parent": "",
                      "genericTypes": [],
                      "isMap": false
                    }
                  },
                  "item": {
                    "type": "Object",
                    "annotations": {
                      "typeId": "java.lang.StackTraceElement",
                      "classInformation": {
                        "classname": "java.lang.StackTraceElement",
                        "hasDefaultConstructor": false,
                        "isInterface": false,
                        "isInstantiable": false,
                        "isAbstract": false,
                        "isFinal": true,
                        "implementedInterfaces": [
                          "java.io.Serializable"
                        ],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "typeAlias": {
                        "value": "StackTraceElement"
                      }
                    },
                    "fields": [
                      {
                        "key": {
                          "name": "className"
                        },
                        "model": {
                          "type": "String"
                        },
                        "annotations": {
                          "visibility": "READ_ONLY"
                        }
                      },
                      {
                        "key": {
                          "name": "fileName"
                        },
                        "model": {
                          "type": "String"
                        },
                        "annotations": {
                          "visibility": "READ_ONLY"
                        }
                      },
                      {
                        "key": {
                          "name": "lineNumber"
                        },
                        "model": {
                          "type": "Number",
                          "annotations": {
                            "classInformation": {
                              "classname": "int",
                              "hasDefaultConstructor": false,
                              "isInterface": false,
                              "isInstantiable": false,
                              "isAbstract": true,
                              "isFinal": true,
                              "implementedInterfaces": [],
                              "parent": "",
                              "genericTypes": [],
                              "isMap": false
                            },
                            "int": {}
                          }
                        },
                        "annotations": {
                          "visibility": "READ_ONLY"
                        }
                      },
                      {
                        "key": {
                          "name": "methodName"
                        },
                        "model": {
                          "type": "String"
                        },
                        "annotations": {
                          "visibility": "READ_ONLY"
                        }
                      },
                      {
                        "key": {
                          "name": "nativeMethod"
                        },
                        "model": {
                          "type": "Boolean",
                          "annotations": {
                            "typeId": "boolean"
                          }
                        },
                        "annotations": {
                          "visibility": "READ_ONLY"
                        }
                      }
                    ]
                  }
                }
              },
              {
                "key": {
                  "name": "suppressed"
                },
                "model": {
                  "type": "Array",
                  "annotations": {
                    "classInformation": {
                      "classname": "java.lang.Throwable[]",
                      "hasDefaultConstructor": false,
                      "isInterface": false,
                      "isInstantiable": false,
                      "isAbstract": true,
                      "isFinal": true,
                      "implementedInterfaces": [
                        "java.lang.Cloneable",
                        "java.io.Serializable"
                      ],
                      "parent": "",
                      "genericTypes": [],
                      "isMap": false
                    }
                  },
                  "item": "#../.."
                },
                "annotations": {
                  "visibility": "READ_ONLY"
                }
              }
            ]
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        },
        {
          "key": {
            "name": "errorCode"
          },
          "model": {
            "type": "String",
            "annotations": {
              "typeId": "cz.integsoft.mule.ilm.api.LoggingErrorCode",
              "enum": {
                "type": "[Ljava.lang.String;",
                "values": [
                  "ILM_ANY_001",
                  "ILM_ANY_002",
                  "ILM_ANY_003",
                  "ILM_ANY_004",
                  "ILM_ANY_005",
                  "ILM_ANY_006",
                  "ILM_TPL_001",
                  "ILM_TPL_002",
                  "ILM_TPL_003",
                  "ILM_TPL_004",
                  "ILM_TPL_005",
                  "ILM_TPL_006",
                  "ILM_TPL_007",
                  "ILM_TPL_008",
                  "ILM_SND_001",
                  "ILM_SND_002",
                  "ILM_SND_003",
                  "ILM_SND_004",
                  "ILM_CON_001",
                  "ILM_CON_002",
                  "ILM_VAL_001",
                  "ILM_VAL_002"
                ]
              }
            }
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        },
        {
          "key": {
            "name": "localizedMessage"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        },
        {
          "key": {
            "name": "message"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        },
        {
          "key": {
            "name": "stackTrace"
          },
          "model": {
            "type": "Array",
            "annotations": {
              "classInformation": {
                "classname": "java.lang.StackTraceElement[]",
                "hasDefaultConstructor": false,
                "isInterface": false,
                "isInstantiable": false,
                "isAbstract": true,
                "isFinal": true,
                "implementedInterfaces": [
                  "java.lang.Cloneable",
                  "java.io.Serializable"
                ],
                "parent": "",
                "genericTypes": [],
                "isMap": false
              }
            },
            "item": {
              "type": "Object",
              "annotations": {
                "typeId": "java.lang.StackTraceElement",
                "classInformation": {
                  "classname": "java.lang.StackTraceElement",
                  "hasDefaultConstructor": false,
                  "isInterface": false,
                  "isInstantiable": false,
                  "isAbstract": false,
                  "isFinal": true,
                  "implementedInterfaces": [
                    "java.io.Serializable"
                  ],
                  "parent": "",
                  "genericTypes": [],
                  "isMap": false
                },
                "typeAlias": {
                  "value": "StackTraceElement"
                }
              },
              "fields": [
                {
                  "key": {
                    "name": "className"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "fileName"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "lineNumber"
                  },
                  "model": {
                    "type": "Number",
                    "annotations": {
                      "classInformation": {
                        "classname": "int",
                        "hasDefaultConstructor": false,
                        "isInterface": false,
                        "isInstantiable": false,
                        "isAbstract": true,
                        "isFinal": true,
                        "implementedInterfaces": [],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "int": {}
                    }
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "methodName"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "nativeMethod"
                  },
                  "model": {
                    "type": "Boolean",
                    "annotations": {
                      "typeId": "boolean"
                    }
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                }
              ]
            }
          }
        },
        {
          "key": {
            "name": "suppressed"
          },
          "model": {
            "type": "Array",
            "annotations": {
              "classInformation": {
                "classname": "java.lang.Throwable[]",
                "hasDefaultConstructor": false,
                "isInterface": false,
                "isInstantiable": false,
                "isAbstract": true,
                "isFinal": true,
                "implementedInterfaces": [
                  "java.lang.Cloneable",
                  "java.io.Serializable"
                ],
                "parent": "",
                "genericTypes": [],
                "isMap": false
              }
            },
            "item": {
              "type": "Object",
              "annotations": {
                "typeId": "java.lang.Throwable",
                "classInformation": {
                  "classname": "java.lang.Throwable",
                  "hasDefaultConstructor": true,
                  "isInterface": false,
                  "isInstantiable": true,
                  "isAbstract": false,
                  "isFinal": false,
                  "implementedInterfaces": [
                    "java.io.Serializable"
                  ],
                  "parent": "",
                  "genericTypes": [],
                  "isMap": false
                },
                "typeAlias": {
                  "value": "Throwable"
                }
              },
              "fields": [
                {
                  "key": {
                    "name": "cause"
                  },
                  "model": "#..",
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "localizedMessage"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "message"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "stackTrace"
                  },
                  "model": {
                    "type": "Array",
                    "annotations": {
                      "classInformation": {
                        "classname": "java.lang.StackTraceElement[]",
                        "hasDefaultConstructor": false,
                        "isInterface": false,
                        "isInstantiable": false,
                        "isAbstract": true,
                        "isFinal": true,
                        "implementedInterfaces": [
                          "java.lang.Cloneable",
                          "java.io.Serializable"
                        ],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      }
                    },
                    "item": {
                      "type": "Object",
                      "annotations": {
                        "typeId": "java.lang.StackTraceElement",
                        "classInformation": {
                          "classname": "java.lang.StackTraceElement",
                          "hasDefaultConstructor": false,
                          "isInterface": false,
                          "isInstantiable": false,
                          "isAbstract": false,
                          "isFinal": true,
                          "implementedInterfaces": [
                            "java.io.Serializable"
                          ],
                          "parent": "",
                          "genericTypes": [],
                          "isMap": false
                        },
                        "typeAlias": {
                          "value": "StackTraceElement"
                        }
                      },
                      "fields": [
                        {
                          "key": {
                            "name": "className"
                          },
                          "model": {
                            "type": "String"
                          },
                          "annotations": {
                            "visibility": "READ_ONLY"
                          }
                        },
                        {
                          "key": {
                            "name": "fileName"
                          },
                          "model": {
                            "type": "String"
                          },
                          "annotations": {
                            "visibility": "READ_ONLY"
                          }
                        },
                        {
                          "key": {
                            "name": "lineNumber"
                          },
                          "model": {
                            "type": "Number",
                            "annotations": {
                              "classInformation": {
                                "classname": "int",
                                "hasDefaultConstructor": false,
                                "isInterface": false,
                                "isInstantiable": false,
                                "isAbstract": true,
                                "isFinal": true,
                                "implementedInterfaces": [],
                                "parent": "",
                                "genericTypes": [],
                                "isMap": false
                              },
                              "int": {}
                            }
                          },
                          "annotations": {
                            "visibility": "READ_ONLY"
                          }
                        },
                        {
                          "key": {
                            "name": "methodName"
                          },
                          "model": {
                            "type": "String"
                          },
                          "annotations": {
                            "visibility": "READ_ONLY"
                          }
                        },
                        {
                          "key": {
                            "name": "nativeMethod"
                          },
                          "model": {
                            "type": "Boolean",
                            "annotations": {
                              "typeId": "boolean"
                            }
                          },
                          "annotations": {
                            "visibility": "READ_ONLY"
                          }
                        }
                      ]
                    }
                  }
                },
                {
                  "key": {
                    "name": "suppressed"
                  },
                  "model": "#../..",
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                }
              ]
            }
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        },
        {
          "key": {
            "name": "type"
          },
          "model": {
            "type": "Object",
            "annotations": {
              "typeId": "org.mule.runtime.extension.api.error.ErrorTypeDefinition",
              "classInformation": {
                "classname": "org.mule.runtime.extension.api.error.ErrorTypeDefinition",
                "hasDefaultConstructor": false,
                "isInterface": true,
                "isInstantiable": false,
                "isAbstract": true,
                "isFinal": false,
                "implementedInterfaces": [],
                "parent": "",
                "genericTypes": [],
                "isMap": false
              },
              "typeAlias": {
                "value": "ErrorTypeDefinition"
              }
            },
            "fields": []
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        }
      ]
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "cz.integsoft.mule.ilm.api.exception.ValidationException",
        "classInformation": {
          "classname": "cz.integsoft.mule.ilm.api.exception.ValidationException",
          "hasDefaultConstructor": false,
          "isInterface": false,
          "isInstantiable": false,
          "isAbstract": false,
          "isFinal": false,
          "implementedInterfaces": [],
          "parent": "cz.integsoft.mule.ilm.api.exception.GenericLoggingException",
          "genericTypes": [],
          "isMap": false
        },
        "typeAlias": {
          "value": "ValidationException"
        }
      },
      "fields": [
        {
          "key": {
            "name": "cause"
          },
          "model": {
            "type": "Object",
            "annotations": {
              "typeId": "java.lang.Throwable",
              "classInformation": {
                "classname": "java.lang.Throwable",
                "hasDefaultConstructor": true,
                "isInterface": false,
                "isInstantiable": true,
                "isAbstract": false,
                "isFinal": false,
                "implementedInterfaces": [
                  "java.io.Serializable"
                ],
                "parent": "",
                "genericTypes": [],
                "isMap": false
              },
              "typeAlias": {
                "value": "Throwable"
              }
            },
            "fields": [
              {
                "key": {
                  "name": "cause"
                },
                "model": "#..",
                "annotations": {
                  "visibility": "READ_ONLY"
                }
              },
              {
                "key": {
                  "name": "localizedMessage"
                },
                "model": {
                  "type": "String"
                },
                "annotations": {
                  "visibility": "READ_ONLY"
                }
              },
              {
                "key": {
                  "name": "message"
                },
                "model": {
                  "type": "String"
                },
                "annotations": {
                  "visibility": "READ_ONLY"
                }
              },
              {
                "key": {
                  "name": "stackTrace"
                },
                "model": {
                  "type": "Array",
                  "annotations": {
                    "classInformation": {
                      "classname": "java.lang.StackTraceElement[]",
                      "hasDefaultConstructor": false,
                      "isInterface": false,
                      "isInstantiable": false,
                      "isAbstract": true,
                      "isFinal": true,
                      "implementedInterfaces": [
                        "java.lang.Cloneable",
                        "java.io.Serializable"
                      ],
                      "parent": "",
                      "genericTypes": [],
                      "isMap": false
                    }
                  },
                  "item": {
                    "type": "Object",
                    "annotations": {
                      "typeId": "java.lang.StackTraceElement",
                      "classInformation": {
                        "classname": "java.lang.StackTraceElement",
                        "hasDefaultConstructor": false,
                        "isInterface": false,
                        "isInstantiable": false,
                        "isAbstract": false,
                        "isFinal": true,
                        "implementedInterfaces": [
                          "java.io.Serializable"
                        ],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "typeAlias": {
                        "value": "StackTraceElement"
                      }
                    },
                    "fields": [
                      {
                        "key": {
                          "name": "className"
                        },
                        "model": {
                          "type": "String"
                        },
                        "annotations": {
                          "visibility": "READ_ONLY"
                        }
                      },
                      {
                        "key": {
                          "name": "fileName"
                        },
                        "model": {
                          "type": "String"
                        },
                        "annotations": {
                          "visibility": "READ_ONLY"
                        }
                      },
                      {
                        "key": {
                          "name": "lineNumber"
                        },
                        "model": {
                          "type": "Number",
                          "annotations": {
                            "classInformation": {
                              "classname": "int",
                              "hasDefaultConstructor": false,
                              "isInterface": false,
                              "isInstantiable": false,
                              "isAbstract": true,
                              "isFinal": true,
                              "implementedInterfaces": [],
                              "parent": "",
                              "genericTypes": [],
                              "isMap": false
                            },
                            "int": {}
                          }
                        },
                        "annotations": {
                          "visibility": "READ_ONLY"
                        }
                      },
                      {
                        "key": {
                          "name": "methodName"
                        },
                        "model": {
                          "type": "String"
                        },
                        "annotations": {
                          "visibility": "READ_ONLY"
                        }
                      },
                      {
                        "key": {
                          "name": "nativeMethod"
                        },
                        "model": {
                          "type": "Boolean",
                          "annotations": {
                            "typeId": "boolean"
                          }
                        },
                        "annotations": {
                          "visibility": "READ_ONLY"
                        }
                      }
                    ]
                  }
                }
              },
              {
                "key": {
                  "name": "suppressed"
                },
                "model": {
                  "type": "Array",
                  "annotations": {
                    "classInformation": {
                      "classname": "java.lang.Throwable[]",
                      "hasDefaultConstructor": false,
                      "isInterface": false,
                      "isInstantiable": false,
                      "isAbstract": true,
                      "isFinal": true,
                      "implementedInterfaces": [
                        "java.lang.Cloneable",
                        "java.io.Serializable"
                      ],
                      "parent": "",
                      "genericTypes": [],
                      "isMap": false
                    }
                  },
                  "item": "#../.."
                },
                "annotations": {
                  "visibility": "READ_ONLY"
                }
              }
            ]
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        },
        {
          "key": {
            "name": "errorCode"
          },
          "model": {
            "type": "String",
            "annotations": {
              "typeId": "cz.integsoft.mule.ilm.api.LoggingErrorCode",
              "enum": {
                "type": "[Ljava.lang.String;",
                "values": [
                  "ILM_ANY_001",
                  "ILM_ANY_002",
                  "ILM_ANY_003",
                  "ILM_ANY_004",
                  "ILM_ANY_005",
                  "ILM_ANY_006",
                  "ILM_TPL_001",
                  "ILM_TPL_002",
                  "ILM_TPL_003",
                  "ILM_TPL_004",
                  "ILM_TPL_005",
                  "ILM_TPL_006",
                  "ILM_TPL_007",
                  "ILM_TPL_008",
                  "ILM_SND_001",
                  "ILM_SND_002",
                  "ILM_SND_003",
                  "ILM_SND_004",
                  "ILM_CON_001",
                  "ILM_CON_002",
                  "ILM_VAL_001",
                  "ILM_VAL_002"
                ]
              }
            }
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        },
        {
          "key": {
            "name": "localizedMessage"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        },
        {
          "key": {
            "name": "message"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        },
        {
          "key": {
            "name": "stackTrace"
          },
          "model": {
            "type": "Array",
            "annotations": {
              "classInformation": {
                "classname": "java.lang.StackTraceElement[]",
                "hasDefaultConstructor": false,
                "isInterface": false,
                "isInstantiable": false,
                "isAbstract": true,
                "isFinal": true,
                "implementedInterfaces": [
                  "java.lang.Cloneable",
                  "java.io.Serializable"
                ],
                "parent": "",
                "genericTypes": [],
                "isMap": false
              }
            },
            "item": {
              "type": "Object",
              "annotations": {
                "typeId": "java.lang.StackTraceElement",
                "classInformation": {
                  "classname": "java.lang.StackTraceElement",
                  "hasDefaultConstructor": false,
                  "isInterface": false,
                  "isInstantiable": false,
                  "isAbstract": false,
                  "isFinal": true,
                  "implementedInterfaces": [
                    "java.io.Serializable"
                  ],
                  "parent": "",
                  "genericTypes": [],
                  "isMap": false
                },
                "typeAlias": {
                  "value": "StackTraceElement"
                }
              },
              "fields": [
                {
                  "key": {
                    "name": "className"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "fileName"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "lineNumber"
                  },
                  "model": {
                    "type": "Number",
                    "annotations": {
                      "classInformation": {
                        "classname": "int",
                        "hasDefaultConstructor": false,
                        "isInterface": false,
                        "isInstantiable": false,
                        "isAbstract": true,
                        "isFinal": true,
                        "implementedInterfaces": [],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      },
                      "int": {}
                    }
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "methodName"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "nativeMethod"
                  },
                  "model": {
                    "type": "Boolean",
                    "annotations": {
                      "typeId": "boolean"
                    }
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                }
              ]
            }
          }
        },
        {
          "key": {
            "name": "suppressed"
          },
          "model": {
            "type": "Array",
            "annotations": {
              "classInformation": {
                "classname": "java.lang.Throwable[]",
                "hasDefaultConstructor": false,
                "isInterface": false,
                "isInstantiable": false,
                "isAbstract": true,
                "isFinal": true,
                "implementedInterfaces": [
                  "java.lang.Cloneable",
                  "java.io.Serializable"
                ],
                "parent": "",
                "genericTypes": [],
                "isMap": false
              }
            },
            "item": {
              "type": "Object",
              "annotations": {
                "typeId": "java.lang.Throwable",
                "classInformation": {
                  "classname": "java.lang.Throwable",
                  "hasDefaultConstructor": true,
                  "isInterface": false,
                  "isInstantiable": true,
                  "isAbstract": false,
                  "isFinal": false,
                  "implementedInterfaces": [
                    "java.io.Serializable"
                  ],
                  "parent": "",
                  "genericTypes": [],
                  "isMap": false
                },
                "typeAlias": {
                  "value": "Throwable"
                }
              },
              "fields": [
                {
                  "key": {
                    "name": "cause"
                  },
                  "model": "#..",
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "localizedMessage"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "message"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                },
                {
                  "key": {
                    "name": "stackTrace"
                  },
                  "model": {
                    "type": "Array",
                    "annotations": {
                      "classInformation": {
                        "classname": "java.lang.StackTraceElement[]",
                        "hasDefaultConstructor": false,
                        "isInterface": false,
                        "isInstantiable": false,
                        "isAbstract": true,
                        "isFinal": true,
                        "implementedInterfaces": [
                          "java.lang.Cloneable",
                          "java.io.Serializable"
                        ],
                        "parent": "",
                        "genericTypes": [],
                        "isMap": false
                      }
                    },
                    "item": {
                      "type": "Object",
                      "annotations": {
                        "typeId": "java.lang.StackTraceElement",
                        "classInformation": {
                          "classname": "java.lang.StackTraceElement",
                          "hasDefaultConstructor": false,
                          "isInterface": false,
                          "isInstantiable": false,
                          "isAbstract": false,
                          "isFinal": true,
                          "implementedInterfaces": [
                            "java.io.Serializable"
                          ],
                          "parent": "",
                          "genericTypes": [],
                          "isMap": false
                        },
                        "typeAlias": {
                          "value": "StackTraceElement"
                        }
                      },
                      "fields": [
                        {
                          "key": {
                            "name": "className"
                          },
                          "model": {
                            "type": "String"
                          },
                          "annotations": {
                            "visibility": "READ_ONLY"
                          }
                        },
                        {
                          "key": {
                            "name": "fileName"
                          },
                          "model": {
                            "type": "String"
                          },
                          "annotations": {
                            "visibility": "READ_ONLY"
                          }
                        },
                        {
                          "key": {
                            "name": "lineNumber"
                          },
                          "model": {
                            "type": "Number",
                            "annotations": {
                              "classInformation": {
                                "classname": "int",
                                "hasDefaultConstructor": false,
                                "isInterface": false,
                                "isInstantiable": false,
                                "isAbstract": true,
                                "isFinal": true,
                                "implementedInterfaces": [],
                                "parent": "",
                                "genericTypes": [],
                                "isMap": false
                              },
                              "int": {}
                            }
                          },
                          "annotations": {
                            "visibility": "READ_ONLY"
                          }
                        },
                        {
                          "key": {
                            "name": "methodName"
                          },
                          "model": {
                            "type": "String"
                          },
                          "annotations": {
                            "visibility": "READ_ONLY"
                          }
                        },
                        {
                          "key": {
                            "name": "nativeMethod"
                          },
                          "model": {
                            "type": "Boolean",
                            "annotations": {
                              "typeId": "boolean"
                            }
                          },
                          "annotations": {
                            "visibility": "READ_ONLY"
                          }
                        }
                      ]
                    }
                  }
                },
                {
                  "key": {
                    "name": "suppressed"
                  },
                  "model": "#../..",
                  "annotations": {
                    "visibility": "READ_ONLY"
                  }
                }
              ]
            }
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        },
        {
          "key": {
            "name": "type"
          },
          "model": {
            "type": "Object",
            "annotations": {
              "typeId": "org.mule.runtime.extension.api.error.ErrorTypeDefinition",
              "classInformation": {
                "classname": "org.mule.runtime.extension.api.error.ErrorTypeDefinition",
                "hasDefaultConstructor": false,
                "isInterface": true,
                "isInstantiable": false,
                "isAbstract": true,
                "isFinal": false,
                "implementedInterfaces": [],
                "parent": "",
                "genericTypes": [],
                "isMap": false
              },
              "typeAlias": {
                "value": "ErrorTypeDefinition"
              }
            },
            "fields": []
          },
          "annotations": {
            "visibility": "READ_ONLY"
          }
        }
      ]
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "cz.integsoft.mule.ilm.api.file.CharacterFileWriterFactory",
        "classInformation": {
          "classname": "cz.integsoft.mule.ilm.api.file.CharacterFileWriterFactory",
          "hasDefaultConstructor": true,
          "isInterface": false,
          "isInstantiable": true,
          "isAbstract": false,
          "isFinal": false,
          "implementedInterfaces": [
            "cz.integsoft.mule.ilm.api.file.FileWriterFactory"
          ],
          "parent": "",
          "genericTypes": [],
          "isMap": false
        },
        "typeAlias": {
          "value": "char-writer"
        }
      },
      "fields": [
        {
          "key": {
            "name": "append-eol"
          },
          "model": {
            "type": "Boolean",
            "annotations": {
              "typeId": "boolean"
            }
          },
          "annotations": {
            "default": "true",
            "expressionSupport": {
              "value": "NOT_SUPPORTED"
            }
          }
        },
        {
          "key": {
            "name": "charset"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "NOT_SUPPORTED"
            },
            "layout": {
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "order": 3,
                "tabName": "Connection"
              }
            }
          }
        }
      ]
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "cz.integsoft.mule.ilm.api.file.FileWriterFactory",
        "classInformation": {
          "classname": "cz.integsoft.mule.ilm.api.file.FileWriterFactory",
          "hasDefaultConstructor": false,
          "isInterface": true,
          "isInstantiable": false,
          "isAbstract": true,
          "isFinal": false,
          "implementedInterfaces": [],
          "parent": "",
          "genericTypes": [],
          "isMap": false
        },
        "typeAlias": {
          "value": "FileWriterFactory"
        }
      },
      "fields": []
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "cz.integsoft.mule.ilm.api.file.RollingPolicy",
        "classInformation": {
          "classname": "cz.integsoft.mule.ilm.api.file.RollingPolicy",
          "hasDefaultConstructor": false,
          "isInterface": true,
          "isInstantiable": false,
          "isAbstract": true,
          "isFinal": false,
          "implementedInterfaces": [
            "org.mule.runtime.api.lifecycle.Initialisable"
          ],
          "parent": "",
          "genericTypes": [],
          "isMap": false
        },
        "typeAlias": {
          "value": "RollingPolicy"
        }
      },
      "fields": []
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "cz.integsoft.mule.ilm.api.file.SizeBasedRollingPolicy",
        "classInformation": {
          "classname": "cz.integsoft.mule.ilm.api.file.SizeBasedRollingPolicy",
          "hasDefaultConstructor": true,
          "isInterface": false,
          "isInstantiable": true,
          "isAbstract": false,
          "isFinal": false,
          "implementedInterfaces": [
            "cz.integsoft.mule.ilm.api.file.RollingPolicy"
          ],
          "parent": "",
          "genericTypes": [],
          "isMap": false
        },
        "typeAlias": {
          "value": "size-based"
        }
      },
      "fields": [
        {
          "key": {
            "name": "filename-pattern",
            "required": "true"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            },
            "layout": {
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "tabName": "Advanced"
              }
            }
          }
        },
        {
          "key": {
            "name": "max-backup-count"
          },
          "model": {
            "type": "Number",
            "annotations": {
              "classInformation": {
                "classname": "java.lang.Integer",
                "hasDefaultConstructor": false,
                "isInterface": false,
                "isInstantiable": false,
                "isAbstract": false,
                "isFinal": true,
                "implementedInterfaces": [
                  "java.lang.Comparable"
                ],
                "parent": "java.lang.Number",
                "genericTypes": [],
                "isMap": false
              },
              "int": {}
            }
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            },
            "layout": {
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "tabName": "Advanced"
              }
            }
          }
        },
        {
          "key": {
            "name": "max-file-size"
          },
          "model": {
            "type": "Number",
            "annotations": {
              "classInformation": {
                "classname": "java.lang.Long",
                "hasDefaultConstructor": false,
                "isInterface": false,
                "isInstantiable": false,
                "isAbstract": false,
                "isFinal": true,
                "implementedInterfaces": [
                  "java.lang.Comparable"
                ],
                "parent": "java.lang.Number",
                "genericTypes": [],
                "isMap": false
              },
              "int": {}
            }
          },
          "annotations": {
            "default": "10485760",
            "expressionSupport": {
              "value": "SUPPORTED"
            },
            "layout": {
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "tabName": "Advanced"
              }
            }
          }
        }
      ]
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "cz.integsoft.mule.ilm.api.file.TimeBasedRollingPolicy",
        "classInformation": {
          "classname": "cz.integsoft.mule.ilm.api.file.TimeBasedRollingPolicy",
          "hasDefaultConstructor": true,
          "isInterface": false,
          "isInstantiable": true,
          "isAbstract": false,
          "isFinal": false,
          "implementedInterfaces": [
            "cz.integsoft.mule.ilm.api.file.RollingPolicy"
          ],
          "parent": "",
          "genericTypes": [],
          "isMap": false
        },
        "typeAlias": {
          "value": "time-based"
        }
      },
      "fields": []
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "cz.integsoft.mule.ilm.api.http.HttpHeader",
        "classInformation": {
          "classname": "cz.integsoft.mule.ilm.api.http.HttpHeader",
          "hasDefaultConstructor": true,
          "isInterface": false,
          "isInstantiable": true,
          "isAbstract": false,
          "isFinal": false,
          "implementedInterfaces": [],
          "parent": "",
          "genericTypes": [],
          "isMap": false
        },
        "typeAlias": {
          "value": "http-header"
        }
      },
      "fields": [
        {
          "key": {
            "name": "key",
            "required": "true"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        },
        {
          "key": {
            "name": "value",
            "required": "true"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        }
      ]
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "cz.integsoft.mule.ilm.api.http.QueryParam",
        "classInformation": {
          "classname": "cz.integsoft.mule.ilm.api.http.QueryParam",
          "hasDefaultConstructor": true,
          "isInterface": false,
          "isInstantiable": true,
          "isAbstract": false,
          "isFinal": false,
          "implementedInterfaces": [],
          "parent": "",
          "genericTypes": [],
          "isMap": false
        },
        "typeAlias": {
          "value": "QueryParam"
        }
      },
      "fields": [
        {
          "key": {
            "name": "key",
            "required": "true"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        },
        {
          "key": {
            "name": "value",
            "required": "true"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        }
      ]
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "cz.integsoft.mule.ilm.api.http.authentication.BasicAuthentication",
        "classInformation": {
          "classname": "cz.integsoft.mule.ilm.api.http.authentication.BasicAuthentication",
          "hasDefaultConstructor": true,
          "isInterface": false,
          "isInstantiable": true,
          "isAbstract": false,
          "isFinal": false,
          "implementedInterfaces": [],
          "parent": "cz.integsoft.mule.ilm.api.http.authentication.UsernamePasswordAuthentication",
          "genericTypes": [],
          "isMap": false
        },
        "typeAlias": {
          "value": "BasicAuthentication"
        }
      },
      "fields": [
        {
          "key": {
            "name": "username",
            "required": "true"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        },
        {
          "key": {
            "name": "password",
            "required": "true"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            },
            "layout": {
              "layoutModel": {
                "password": true,
                "text": false,
                "query": false
              }
            }
          }
        },
        {
          "key": {
            "name": "preemptive"
          },
          "model": {
            "type": "Boolean",
            "annotations": {
              "typeId": "boolean"
            }
          },
          "annotations": {
            "default": "true",
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        }
      ]
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "cz.integsoft.mule.ilm.api.http.authentication.DigestAuthentication",
        "classInformation": {
          "classname": "cz.integsoft.mule.ilm.api.http.authentication.DigestAuthentication",
          "hasDefaultConstructor": true,
          "isInterface": false,
          "isInstantiable": true,
          "isAbstract": false,
          "isFinal": false,
          "implementedInterfaces": [],
          "parent": "cz.integsoft.mule.ilm.api.http.authentication.UsernamePasswordAuthentication",
          "genericTypes": [],
          "isMap": false
        },
        "typeAlias": {
          "value": "DigestAuthentication"
        }
      },
      "fields": [
        {
          "key": {
            "name": "username",
            "required": "true"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        },
        {
          "key": {
            "name": "password",
            "required": "true"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            },
            "layout": {
              "layoutModel": {
                "password": true,
                "text": false,
                "query": false
              }
            }
          }
        },
        {
          "key": {
            "name": "preemptive"
          },
          "model": {
            "type": "Boolean",
            "annotations": {
              "typeId": "boolean"
            }
          },
          "annotations": {
            "default": "true",
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        }
      ]
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "cz.integsoft.mule.ilm.api.http.authentication.HttpRequestAuthentication",
        "classInformation": {
          "classname": "cz.integsoft.mule.ilm.api.http.authentication.HttpRequestAuthentication",
          "hasDefaultConstructor": false,
          "isInterface": true,
          "isInstantiable": false,
          "isAbstract": true,
          "isFinal": false,
          "implementedInterfaces": [
            "org.mule.runtime.http.api.client.auth.HttpAuthentication"
          ],
          "parent": "",
          "genericTypes": [],
          "isMap": false
        },
        "typeAlias": {
          "value": "HttpRequestAuthentication"
        }
      },
      "fields": []
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "cz.integsoft.mule.ilm.api.http.authentication.NtlmAuthentication",
        "classInformation": {
          "classname": "cz.integsoft.mule.ilm.api.http.authentication.NtlmAuthentication",
          "hasDefaultConstructor": true,
          "isInterface": false,
          "isInstantiable": true,
          "isAbstract": false,
          "isFinal": false,
          "implementedInterfaces": [
            "org.mule.runtime.http.api.client.auth.HttpAuthentication.HttpNtlmAuthentication"
          ],
          "parent": "cz.integsoft.mule.ilm.api.http.authentication.UsernamePasswordAuthentication",
          "genericTypes": [],
          "isMap": false
        },
        "typeAlias": {
          "value": "NtlmAuthentication"
        }
      },
      "fields": [
        {
          "key": {
            "name": "domain"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        },
        {
          "key": {
            "name": "workstation"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        },
        {
          "key": {
            "name": "username",
            "required": "true"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        },
        {
          "key": {
            "name": "password",
            "required": "true"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            },
            "layout": {
              "layoutModel": {
                "password": true,
                "text": false,
                "query": false
              }
            }
          }
        },
        {
          "key": {
            "name": "preemptive"
          },
          "model": {
            "type": "Boolean",
            "annotations": {
              "typeId": "boolean"
            }
          },
          "annotations": {
            "default": "true",
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        }
      ]
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "cz.integsoft.mule.ilm.api.http.proxy.DefaultNtlmProxyConfig",
        "classInformation": {
          "classname": "cz.integsoft.mule.ilm.api.http.proxy.DefaultNtlmProxyConfig",
          "hasDefaultConstructor": true,
          "isInterface": false,
          "isInstantiable": true,
          "isAbstract": false,
          "isFinal": false,
          "implementedInterfaces": [
            "cz.integsoft.mule.ilm.api.http.proxy.HttpProxyConfig.HttpNtlmProxyConfig"
          ],
          "parent": "cz.integsoft.mule.ilm.api.http.proxy.DefaultProxyConfig",
          "genericTypes": [],
          "isMap": false
        },
        "typeDsl": {
          "allowInlineDefinition": true,
          "allowTopLevelDefinition": true
        },
        "typeAlias": {
          "value": "ntlm-proxy"
        }
      },
      "fields": [
        {
          "key": {
            "name": "ntlm-domain",
            "required": "true"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            },
            "display": {
              "displayModel": {
                "displayName": "NTLM Domain"
              }
            }
          }
        },
        {
          "key": {
            "name": "host",
            "required": "true"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        },
        {
          "key": {
            "name": "port"
          },
          "model": {
            "type": "Number",
            "annotations": {
              "classInformation": {
                "classname": "int",
                "hasDefaultConstructor": false,
                "isInterface": false,
                "isInstantiable": false,
                "isAbstract": true,
                "isFinal": true,
                "implementedInterfaces": [],
                "parent": "",
                "genericTypes": [],
                "isMap": false
              },
              "int": {}
            }
          },
          "annotations": {
            "default": "-1",
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        },
        {
          "key": {
            "name": "username"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        },
        {
          "key": {
            "name": "password"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            },
            "layout": {
              "layoutModel": {
                "password": true,
                "text": false,
                "query": false
              }
            }
          }
        },
        {
          "key": {
            "name": "non-proxy-hosts"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        }
      ]
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "cz.integsoft.mule.ilm.api.http.proxy.DefaultProxyConfig",
        "classInformation": {
          "classname": "cz.integsoft.mule.ilm.api.http.proxy.DefaultProxyConfig",
          "hasDefaultConstructor": true,
          "isInterface": false,
          "isInstantiable": true,
          "isAbstract": false,
          "isFinal": false,
          "implementedInterfaces": [
            "cz.integsoft.mule.ilm.api.http.proxy.HttpProxyConfig"
          ],
          "parent": "",
          "genericTypes": [],
          "isMap": false
        },
        "typeDsl": {
          "allowInlineDefinition": true,
          "allowTopLevelDefinition": true
        },
        "typeAlias": {
          "value": "proxy"
        }
      },
      "fields": [
        {
          "key": {
            "name": "host",
            "required": "true"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        },
        {
          "key": {
            "name": "port"
          },
          "model": {
            "type": "Number",
            "annotations": {
              "classInformation": {
                "classname": "int",
                "hasDefaultConstructor": false,
                "isInterface": false,
                "isInstantiable": false,
                "isAbstract": true,
                "isFinal": true,
                "implementedInterfaces": [],
                "parent": "",
                "genericTypes": [],
                "isMap": false
              },
              "int": {}
            }
          },
          "annotations": {
            "default": "-1",
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        },
        {
          "key": {
            "name": "username"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        },
        {
          "key": {
            "name": "password"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            },
            "layout": {
              "layoutModel": {
                "password": true,
                "text": false,
                "query": false
              }
            }
          }
        },
        {
          "key": {
            "name": "non-proxy-hosts"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            }
          }
        }
      ]
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "cz.integsoft.mule.ilm.api.http.proxy.HttpProxyConfig",
        "classInformation": {
          "classname": "cz.integsoft.mule.ilm.api.http.proxy.HttpProxyConfig",
          "hasDefaultConstructor": false,
          "isInterface": true,
          "isInstantiable": false,
          "isAbstract": true,
          "isFinal": false,
          "implementedInterfaces": [
            "org.mule.runtime.http.api.client.proxy.ProxyConfig"
          ],
          "parent": "",
          "genericTypes": [],
          "isMap": false
        },
        "typeAlias": {
          "value": "HttpProxyConfig"
        }
      },
      "fields": []
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "cz.integsoft.mule.ilm.api.http.tcp.TcpSocketProperties",
        "classInformation": {
          "classname": "cz.integsoft.mule.ilm.api.http.tcp.TcpSocketProperties",
          "hasDefaultConstructor": true,
          "isInterface": false,
          "isInstantiable": true,
          "isAbstract": false,
          "isFinal": false,
          "implementedInterfaces": [],
          "parent": "",
          "genericTypes": [],
          "isMap": false
        },
        "typeDsl": {
          "allowInlineDefinition": true,
          "allowTopLevelDefinition": true
        },
        "typeAlias": {
          "value": "socket-properties"
        }
      },
      "fields": [
        {
          "key": {
            "name": "send-buffer-size"
          },
          "model": {
            "type": "Number",
            "annotations": {
              "classInformation": {
                "classname": "java.lang.Integer",
                "hasDefaultConstructor": false,
                "isInterface": false,
                "isInstantiable": false,
                "isAbstract": false,
                "isFinal": true,
                "implementedInterfaces": [
                  "java.lang.Comparable"
                ],
                "parent": "java.lang.Number",
                "genericTypes": [],
                "isMap": false
              },
              "int": {}
            }
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            },
            "layout": {
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "tabName": "Buffer Configuration"
              }
            },
            "display": {
              "displayModel": {
                "summary": "The size of the buffer (in bytes) used when sending data"
              }
            }
          }
        },
        {
          "key": {
            "name": "receive-buffer-size"
          },
          "model": {
            "type": "Number",
            "annotations": {
              "classInformation": {
                "classname": "java.lang.Integer",
                "hasDefaultConstructor": false,
                "isInterface": false,
                "isInstantiable": false,
                "isAbstract": false,
                "isFinal": true,
                "implementedInterfaces": [
                  "java.lang.Comparable"
                ],
                "parent": "java.lang.Number",
                "genericTypes": [],
                "isMap": false
              },
              "int": {}
            }
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            },
            "layout": {
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "tabName": "Buffer Configuration"
              }
            },
            "display": {
              "displayModel": {
                "summary": "The size of the buffer (in bytes) used when receiving data"
              }
            }
          }
        },
        {
          "key": {
            "name": "client-timeout"
          },
          "model": {
            "type": "Number",
            "annotations": {
              "classInformation": {
                "classname": "java.lang.Integer",
                "hasDefaultConstructor": false,
                "isInterface": false,
                "isInstantiable": false,
                "isAbstract": false,
                "isFinal": true,
                "implementedInterfaces": [
                  "java.lang.Comparable"
                ],
                "parent": "java.lang.Number",
                "genericTypes": [],
                "isMap": false
              },
              "int": {}
            }
          },
          "annotations": {
            "default": "0",
            "expressionSupport": {
              "value": "SUPPORTED"
            },
            "layout": {
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "tabName": "Timeout Configuration"
              }
            },
            "display": {
              "displayModel": {
                "summary": "Time, in milliseconds, that the socket will wait in a blocking operation before failing"
              }
            }
          }
        },
        {
          "key": {
            "name": "reuse-address"
          },
          "model": {
            "type": "Boolean",
            "annotations": {
              "typeId": "boolean"
            }
          },
          "annotations": {
            "default": "true",
            "expressionSupport": {
              "value": "SUPPORTED"
            },
            "display": {
              "displayModel": {
                "summary": "Indicates whether if the configured socket could be reused or fail at when trying to bind it"
              }
            }
          }
        },
        {
          "key": {
            "name": "connection-timeout"
          },
          "model": {
            "type": "Number",
            "annotations": {
              "classInformation": {
                "classname": "java.lang.Integer",
                "hasDefaultConstructor": false,
                "isInterface": false,
                "isInstantiable": false,
                "isAbstract": false,
                "isFinal": true,
                "implementedInterfaces": [
                  "java.lang.Comparable"
                ],
                "parent": "java.lang.Number",
                "genericTypes": [],
                "isMap": false
              },
              "int": {}
            }
          },
          "annotations": {
            "default": "30000",
            "expressionSupport": {
              "value": "SUPPORTED"
            },
            "layout": {
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "tabName": "Timeout Configuration"
              }
            },
            "display": {
              "displayModel": {
                "summary": "Time to wait during a connection to a remote server before failing with a timeout. A timeout value of zero is interpreted as an infinite timeout."
              }
            }
          }
        },
        {
          "key": {
            "name": "send-tcp-no-delay"
          },
          "model": {
            "type": "Boolean",
            "annotations": {
              "typeId": "boolean"
            }
          },
          "annotations": {
            "default": "true",
            "expressionSupport": {
              "value": "SUPPORTED"
            },
            "display": {
              "displayModel": {
                "displayName": "Send TCP With No Delay",
                "summary": "Indicates whether the transmitted data should not be collected together for greater efficiency, and sent immediately"
              }
            }
          }
        },
        {
          "key": {
            "name": "linger"
          },
          "model": {
            "type": "Number",
            "annotations": {
              "classInformation": {
                "classname": "java.lang.Integer",
                "hasDefaultConstructor": false,
                "isInterface": false,
                "isInstantiable": false,
                "isAbstract": false,
                "isFinal": true,
                "implementedInterfaces": [
                  "java.lang.Comparable"
                ],
                "parent": "java.lang.Number",
                "genericTypes": [],
                "isMap": false
              },
              "int": {}
            }
          },
          "annotations": {
            "expressionSupport": {
              "value": "SUPPORTED"
            },
            "display": {
              "displayModel": {
                "summary": "This indicates for how long, in milliseconds, the socket will take to close so any remaining data is transmitted correctly"
              }
            }
          }
        },
        {
          "key": {
            "name": "keep-alive"
          },
          "model": {
            "type": "Boolean",
            "annotations": {
              "typeId": "boolean"
            }
          },
          "annotations": {
            "default": "false",
            "expressionSupport": {
              "value": "SUPPORTED"
            },
            "display": {
              "displayModel": {
                "summary": "Indicates whether the open socket connections unused for a long period and with an unavailable connection should be closed"
              }
            }
          }
        }
      ]
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "cz.integsoft.mule.ilm.api.persistence.PersistenceParameters",
        "classInformation": {
          "classname": "cz.integsoft.mule.ilm.api.persistence.PersistenceParameters",
          "hasDefaultConstructor": true,
          "isInterface": false,
          "isInstantiable": true,
          "isAbstract": false,
          "isFinal": false,
          "implementedInterfaces": [],
          "parent": "",
          "genericTypes": [],
          "isMap": false
        },
        "typeDsl": {
          "allowInlineDefinition": true,
          "allowTopLevelDefinition": false
        },
        "typeAlias": {
          "value": "log-persistence-strategy"
        }
      },
      "fields": [
        {
          "key": {
            "name": "class",
            "required": "true"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "NOT_SUPPORTED"
            },
            "layout": {
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "tabName": "Advanced"
              }
            }
          }
        },
        {
          "key": {
            "name": "max-queue-size"
          },
          "model": {
            "type": "Number",
            "annotations": {
              "classInformation": {
                "classname": "java.lang.Integer",
                "hasDefaultConstructor": false,
                "isInterface": false,
                "isInstantiable": false,
                "isAbstract": false,
                "isFinal": true,
                "implementedInterfaces": [
                  "java.lang.Comparable"
                ],
                "parent": "java.lang.Number",
                "genericTypes": [],
                "isMap": false
              },
              "int": {}
            }
          },
          "annotations": {
            "default": "10000",
            "expressionSupport": {
              "value": "NOT_SUPPORTED"
            },
            "layout": {
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "tabName": "Advanced"
              }
            }
          }
        },
        {
          "key": {
            "name": "log-persistence-parameters"
          },
          "model": {
            "type": "Array",
            "annotations": {
              "classInformation": {
                "classname": "java.util.List",
                "hasDefaultConstructor": false,
                "isInterface": true,
                "isInstantiable": false,
                "isAbstract": true,
                "isFinal": false,
                "implementedInterfaces": [
                  "java.util.Collection"
                ],
                "parent": "",
                "genericTypes": [
                  "cz.integsoft.mule.ilm.api.persistence.LogPersistenceParameter"
                ],
                "isMap": false
              }
            },
            "item": {
              "type": "Object",
              "annotations": {
                "typeId": "cz.integsoft.mule.ilm.api.persistence.LogPersistenceParameter",
                "classInformation": {
                  "classname": "cz.integsoft.mule.ilm.api.persistence.LogPersistenceParameter",
                  "hasDefaultConstructor": true,
                  "isInterface": false,
                  "isInstantiable": true,
                  "isAbstract": false,
                  "isFinal": false,
                  "implementedInterfaces": [],
                  "parent": "",
                  "genericTypes": [],
                  "isMap": false
                },
                "typeAlias": {
                  "value": "LogPersistenceParameter"
                }
              },
              "fields": [
                {
                  "key": {
                    "name": "key",
                    "required": "true"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "expressionSupport": {
                      "value": "NOT_SUPPORTED"
                    }
                  }
                },
                {
                  "key": {
                    "name": "value",
                    "required": "true"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "expressionSupport": {
                      "value": "NOT_SUPPORTED"
                    }
                  }
                }
              ]
            }
          },
          "annotations": {
            "expressionSupport": {
              "value": "NOT_SUPPORTED"
            },
            "layout": {
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "tabName": "Advanced"
              }
            }
          }
        }
      ]
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "cz.integsoft.mule.ilm.api.processor.LogPostProcessorParameters",
        "classInformation": {
          "classname": "cz.integsoft.mule.ilm.api.processor.LogPostProcessorParameters",
          "hasDefaultConstructor": true,
          "isInterface": false,
          "isInstantiable": true,
          "isAbstract": false,
          "isFinal": false,
          "implementedInterfaces": [],
          "parent": "",
          "genericTypes": [],
          "isMap": false
        },
        "typeDsl": {
          "allowInlineDefinition": true,
          "allowTopLevelDefinition": false
        },
        "typeAlias": {
          "value": "log-post-processor"
        }
      },
      "fields": [
        {
          "key": {
            "name": "class",
            "required": "true"
          },
          "model": {
            "type": "String"
          },
          "annotations": {
            "expressionSupport": {
              "value": "NOT_SUPPORTED"
            },
            "layout": {
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "tabName": "Advanced"
              }
            }
          }
        },
        {
          "key": {
            "name": "log-post-processor-parameters"
          },
          "model": {
            "type": "Array",
            "annotations": {
              "classInformation": {
                "classname": "java.util.List",
                "hasDefaultConstructor": false,
                "isInterface": true,
                "isInstantiable": false,
                "isAbstract": true,
                "isFinal": false,
                "implementedInterfaces": [
                  "java.util.Collection"
                ],
                "parent": "",
                "genericTypes": [
                  "cz.integsoft.mule.ilm.api.processor.LogProcessorParameter"
                ],
                "isMap": false
              }
            },
            "item": {
              "type": "Object",
              "annotations": {
                "typeId": "cz.integsoft.mule.ilm.api.processor.LogProcessorParameter",
                "classInformation": {
                  "classname": "cz.integsoft.mule.ilm.api.processor.LogProcessorParameter",
                  "hasDefaultConstructor": true,
                  "isInterface": false,
                  "isInstantiable": true,
                  "isAbstract": false,
                  "isFinal": false,
                  "implementedInterfaces": [],
                  "parent": "",
                  "genericTypes": [],
                  "isMap": false
                },
                "typeAlias": {
                  "value": "LogProcessorParameter"
                }
              },
              "fields": [
                {
                  "key": {
                    "name": "key",
                    "required": "true"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "expressionSupport": {
                      "value": "NOT_SUPPORTED"
                    }
                  }
                },
                {
                  "key": {
                    "name": "value",
                    "required": "true"
                  },
                  "model": {
                    "type": "String"
                  },
                  "annotations": {
                    "expressionSupport": {
                      "value": "NOT_SUPPORTED"
                    }
                  }
                }
              ]
            }
          },
          "annotations": {
            "expressionSupport": {
              "value": "NOT_SUPPORTED"
            },
            "layout": {
              "layoutModel": {
                "password": false,
                "text": false,
                "query": false,
                "tabName": "Advanced"
              }
            }
          }
        }
      ]
    },
    {
      "format": "java",
      "type": "Object",
      "annotations": {
        "typeId": "cz.integsoft.mule.ilm.api.util.LoggingModuleUtils",
        "classInformation": {
          "classname": "cz.integsoft.mule.ilm.api.util.LoggingModuleUtils",
          "hasDefaultConstructor": false,
          "isInterface": false,
          "isInstantiable": false,
          "isAbstract": false,
          "isFinal": true,
          "implementedInterfaces": [],
          "parent": "",
          "genericTypes": [],
          "isMap": false
        },
        "typeAlias": {
          "value": "LoggingModuleUtils"
        }
      },
      "fields": []
    }
  ]
}
