Annotation Interface Metadata
Meta data for EIPs, components, data formats and other Camel concepts
For example to associate labels to Camel components
-
Optional Element Summary
Optional ElementsModifier and TypeOptional ElementDescriptionString[]Alternative names or common aliases for this entity.String[]Annotations data for Camel concepts such as components, EIP, etc.String[]Indicates the list of schemes for which this metadata is applicable.booleanWhether to parameter can be configured as autowired This is used for automatic autowiring the option via its Java type, by looking up in the registry to find if there is a single instance of matching type, which then gets configured.To define a default value.Additional description that can explain the user about the deprecation and give reference to what to use instead.Returns a description of this entity.A human display name of the parameter.Allows to define enums this options accepts.String[]Usage examples for documentation and AI tooling.To exclude one or more properties.The first version this functionality was added to Apache Camel.booleanWhether this option is importantTo include one or more properties.If the option is some specific language such as SQL, XSLT, XML, JavaScript or something else.The value that makes this option insecure.To re-associate the preferred Java type of this parameter.To define one or more labels.booleanWhether the option can be large input such as a SQL query, XSLT template, or scripting code.booleanTo define that this entity is required.booleanDeprecated.Security category for this option.booleanWhether to skip this optionbooleanWhether the option can refer to a file by using file: or classpath: as prefix and specify the location of the file.An optional human readable title of this entity, to be used instead of a computed title.
-
Element Details
-
displayName
String displayNameA human display name of the parameter. This is used for documentation and tooling only.- Default:
""
-
label
String labelTo define one or more labels. Multiple labels can be defined as a comma separated value.- Default:
""
-
defaultValue
-
required
boolean requiredTo define that this entity is required.- Default:
false
-
title
String titleAn optional human readable title of this entity, to be used instead of a computed title.- Default:
""
-
description
String descriptionReturns a description of this entity. This is used for documentation and tooling only.- Default:
""
-
enums
String enumsAllows to define enums this options accepts. If the type is already an enum, then this option should not be used; instead you can use this option when the type is a String that only accept certain values. Multiple values is separated by comma.- Default:
""
-
secret
Deprecated.usesecurity = "secret"instead.Whether the option is secret/sensitive information such as a password.- Default:
false
-
security
String securitySecurity category for this option.Supported categories:
secret— the value is sensitive (password, token, etc.) and should not be stored in plain textinsecure:ssl— disables SSL/TLS certificate validation or hostname verificationinsecure:serialization— enables dangerous deserialization of untrusted datainsecure:dev— development-only feature not safe for production use
When set, the Camel security policy (
camel.security.*) can warn or prevent startup depending on the configured policy for that category.- Default:
""
-
insecureValue
String insecureValueThe value that makes this option insecure. Only used whensecurity()is set to aninsecure:*category.For boolean options, this defaults to
"true"(i.e., enabling the option is insecure). Set to"false"for options where disabling the feature is insecure (e.g.,validateCertificates=false).- Default:
""
-
autowired
boolean autowiredWhether to parameter can be configured as autowired This is used for automatic autowiring the option via its Java type, by looking up in the registry to find if there is a single instance of matching type, which then gets configured. This can be used for automatic configuring JDBC data sources, JMS connection factories, AWS Clients, etc. This is only supported on components, data formats, languages, etc; not on endpoints.- Default:
false
-
javaType
String javaTypeTo re-associate the preferred Java type of this parameter. This is used for parameters which are of a specialized type but can be configured by another Java type, such as from a String.- Default:
""
-
firstVersion
-
deprecationNote
String deprecationNoteAdditional description that can explain the user about the deprecation and give reference to what to use instead.- Default:
""
-
skip
boolean skipWhether to skip this option- Default:
false
-
excludeProperties
String excludePropertiesTo exclude one or more properties. This is for example used when a Camel component extend another component, and then may need to not use some of the properties from the parent component. Multiple properties can be separated by comma.- Default:
""
-
includeProperties
String includePropertiesTo include one or more properties. Some dataformats share same base but individually they have some specific options, then this can be used to specify which options each implementation only supports.- Default:
""
-
applicableFor
String[] applicableForIndicates the list of schemes for which this metadata is applicable. This is used to filter out message headers that are shared with several endpoints but only applicable for some of them. In the next example, the headerSOME_HEADERis only applicable for endpoints whose scheme is "foo" or "bar".@Metadata(description = "some description", javaType = "String", applicableFor = {"foo", "bar"}) public static final String SOME_HEADER = "someHeaderName";- Default:
{}
-
supportFileReference
boolean supportFileReferenceWhether the option can refer to a file by using file: or classpath: as prefix and specify the location of the file.- Default:
false
-
largeInput
boolean largeInputWhether the option can be large input such as a SQL query, XSLT template, or scripting code. This can be used to help tooling to provide an input form instead of a single input field to give better user experience.- Default:
false
-
inputLanguage
String inputLanguageIf the option is some specific language such as SQL, XSLT, XML, JavaScript or something else. This can be used to help tooling to provide a better user experience.- Default:
""
-
annotations
-
important
boolean importantWhether this option is important- Default:
false
-
examples
String[] examplesUsage examples for documentation and AI tooling. Each entry is a compact expression and result pair such as "${abs(-5)} -> 5".- Default:
{}
-
aliases
String[] aliasesAlternative names or common aliases for this entity. Used for AI and search tooling to discover EIPs by common terminology (e.g., "fan-out" for Multicast, "retry" for Error Handler). Aliases are descriptive names only — they cannot be used in the DSL.- Default:
{}
-
security = "secret"instead.