Annotation Interface ConnectorAttribute
@Retention(CLASS)
@Target(TYPE)
@Repeatable(ConnectorAttributes.class)
public @interface ConnectorAttribute
Connector implementor can use this annotation to document attributes supported by their connector.
This allows tools (IDE, annotation processors...) to extract that data to provide code completion or documentation
generation.
Each attribute is represented by an instance of
ConnectorAttribute
.
For example:
{@code @ConnectorAttribute(name = "bootstrap.servers", alias = "kafka.bootstrap.servers", type = "string", defaultValue = "localhost:9092", direction = Direction.INCOMING_AND_OUTGOING, description = "...") @ConnectorAttribute(name = "topic", type = "string", direction = Direction.INCOMING_AND_OUTGOING, description = "...") @ConnectorAttribute(name = "value-deserialization-failure-handler", type = "string", direction = Direction.INCOMING, description = "...") @ConnectorAttribute(name = "merge", direction = OUTGOING, type = "boolean", defaultValue = "false", description = "...") @Connector("my-connector") public class MyConnector implements IncomingConnectorFactory, OutgoingConnectorFactory { ... } </pre>
-
Nested Class Summary
-
Required Element Summary
Modifier and TypeRequired ElementDescription -
Optional Element Summary
Modifier and TypeOptional ElementDescriptionboolean
boolean
boolean
-
Field Summary
-
Field Details
-
NO_VALUE
The constant used to indicate that the attribute has no default value or no alias.- See Also:
-
-
Element Details
-
name
String name- Returns:
- the attribute name, must not be
null
, must not beblank
, must be unique for a specific connector
-
description
String description- Returns:
- the description of the attribute.
-
direction
ConnectorAttribute.Direction direction- Returns:
- on which direction the attribute is used.
-
type
String type- Returns:
- the java type of the property.
-
-
-
mandatory
boolean mandatory- Returns:
- whether the attribute is mandatory.
- Default:
- false
-
defaultValue
String defaultValue- Returns:
- the default value if any.
- Default:
- "<no-value>"
-
deprecated
boolean deprecated- Returns:
- whether the attribute is deprecated.
- Default:
- false
-
alias
String alias- Returns:
- the optional MicroProfile Config property used to configure the attribute.
- Default:
- "<no-value>"