Skip to content

Commit 92e94ac

Browse files
committed
feat: kcl-message-driven-channel-adapter xsd schema
1 parent 94c9e84 commit 92e94ac

File tree

1 file changed

+174
-4
lines changed

1 file changed

+174
-4
lines changed

int-aws/src/main/resources/org/springframework/schema/integration/aws/spring-integration-aws.xsd

Lines changed: 174 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,166 @@
1919
]]></xsd:documentation>
2020
</xsd:annotation>
2121

22+
<xsd:element name="kcl-message-driven-channel-adapter">
23+
<xsd:annotation>
24+
<xsd:documentation><![CDATA[
25+
Configures an 'KclMessageDrivenChannelAdapter' endpoint
26+
receiving data from Amazon Kinesis streams using AWS KCL.
27+
]]></xsd:documentation>
28+
</xsd:annotation>
29+
<xsd:complexType>
30+
<xsd:attributeGroup ref="inboundChannelAdapterAttributes"/>
31+
<xsd:attribute name="streams" type="xsd:string" use="required">
32+
<xsd:annotation>
33+
<xsd:documentation><![CDATA[
34+
Comma-separated list of streams.
35+
]]></xsd:documentation>
36+
</xsd:annotation>
37+
</xsd:attribute>
38+
<xsd:attribute name="kinesis-client" type="xsd:string">
39+
<xsd:annotation>
40+
<xsd:documentation><![CDATA[
41+
The 'software.amazon.awssdk.services.kinesis.KinesisAsyncClient' bean reference.
42+
]]></xsd:documentation>
43+
<xsd:appinfo>
44+
<tool:annotation kind="ref">
45+
<tool:expected-type type="software.amazon.awssdk.services.kinesis.KinesisAsyncClient"/>
46+
</tool:annotation>
47+
</xsd:appinfo>
48+
</xsd:annotation>
49+
</xsd:attribute>
50+
<xsd:attribute name="cloud-watch-client" type="xsd:string">
51+
<xsd:annotation>
52+
<xsd:documentation><![CDATA[
53+
The 'org.springframework.integration.aws.inbound.kinesis.CloudWatchAsyncClient' bean reference.
54+
]]></xsd:documentation>
55+
<xsd:appinfo>
56+
<tool:annotation kind="ref">
57+
<tool:expected-type type="org.springframework.integration.aws.inbound.kinesis.CloudWatchAsyncClient"/>
58+
</tool:annotation>
59+
</xsd:appinfo>
60+
</xsd:annotation>
61+
</xsd:attribute>
62+
<xsd:attribute name="dynamo-db-client" type="xsd:string">
63+
<xsd:annotation>
64+
<xsd:documentation><![CDATA[
65+
The 'org.springframework.integration.aws.inbound.kinesis.DynamoDbAsyncClient' bean reference.
66+
]]></xsd:documentation>
67+
<xsd:appinfo>
68+
<tool:annotation kind="ref">
69+
<tool:expected-type type="org.springframework.integration.aws.inbound.kinesis.DynamoDbAsyncClient"/>
70+
</tool:annotation>
71+
</xsd:appinfo>
72+
</xsd:annotation>
73+
</xsd:attribute>
74+
<xsd:attribute name="worker-id" type="xsd:string">
75+
<xsd:annotation>
76+
<xsd:documentation><![CDATA[
77+
Sets the worker identifier used to distinguish
78+
different workers/processes of a Kinesis application.
79+
]]></xsd:documentation>
80+
</xsd:annotation>
81+
</xsd:attribute>
82+
<xsd:attribute name="consumer-group" type="xsd:string">
83+
<xsd:annotation>
84+
<xsd:documentation><![CDATA[
85+
Name of the group this consumer belongs to.
86+
]]></xsd:documentation>
87+
</xsd:annotation>
88+
</xsd:attribute>
89+
<xsd:attribute name="consumer-backoff" type="xsd:int">
90+
<xsd:annotation>
91+
<xsd:documentation><![CDATA[
92+
Sleep timeout in milliseconds if consumer is throttled.
93+
]]></xsd:documentation>
94+
</xsd:annotation>
95+
</xsd:attribute>
96+
<xsd:attribute name="empty-record-list" type="xsd:boolean">
97+
<xsd:annotation>
98+
<xsd:documentation><![CDATA[
99+
Whether to return an empty record list from consumer to the processor.
100+
Works only in 'ListenerMode.batch' mode.
101+
The message will be sent into the output channel with
102+
an empty List as a payload.
103+
]]></xsd:documentation>
104+
</xsd:annotation>
105+
</xsd:attribute>
106+
<xsd:attribute name="fan-out" type="xsd:boolean">
107+
<xsd:annotation>
108+
<xsd:documentation><![CDATA[
109+
Specify a retrieval strategy: fan-out (true; default) or polling (false).
110+
]]></xsd:documentation>
111+
</xsd:annotation>
112+
</xsd:attribute>
113+
<xsd:attribute name="bind-source-record" type="xsd:boolean">
114+
<xsd:annotation>
115+
<xsd:documentation><![CDATA[
116+
Bind the source consumer record in the header named
117+
'IntegrationMessageHeaderAccessor.SOURCE_DATA'.
118+
Does not apply to batch listeners.
119+
]]></xsd:documentation>
120+
</xsd:annotation>
121+
</xsd:attribute>
122+
<xsd:attribute name="checkpoint-mode">
123+
<xsd:annotation>
124+
<xsd:documentation><![CDATA[
125+
Default is 'batch'.
126+
]]></xsd:documentation>
127+
</xsd:annotation>
128+
<xsd:simpleType>
129+
<xsd:union memberTypes="kinesisCheckpointMode xsd:string"/>
130+
</xsd:simpleType>
131+
</xsd:attribute>
132+
<xsd:attribute name="checkpoints-interval" type="xsd:long">
133+
<xsd:annotation>
134+
<xsd:documentation><![CDATA[
135+
Sets the interval between 2 checkpoints in milliseconds.
136+
Only used when 'checkpoint-mode' is 'periodic'.
137+
Default is 5s.
138+
]]></xsd:documentation>
139+
</xsd:annotation>
140+
</xsd:attribute>
141+
<xsd:attribute name="listener-mode">
142+
<xsd:annotation>
143+
<xsd:documentation><![CDATA[
144+
Default is 'record'.
145+
]]></xsd:documentation>
146+
</xsd:annotation>
147+
<xsd:simpleType>
148+
<xsd:union memberTypes="kinesisListenerMode xsd:string"/>
149+
</xsd:simpleType>
150+
</xsd:attribute>
151+
<xsd:attribute name="metrics-level">
152+
<xsd:annotation>
153+
<xsd:documentation><![CDATA[
154+
Specify a metrics level to emit.
155+
Defaults to 'MetricsLevel.DETAILED'.
156+
]]></xsd:documentation>
157+
</xsd:annotation>
158+
<xsd:simpleType>
159+
<xsd:union memberTypes="kinesisMetricsLevel xsd:string"/>
160+
</xsd:simpleType>
161+
</xsd:attribute>
162+
<xsd:attribute name="polling-idle-time" type="xsd:long">
163+
<xsd:annotation>
164+
<xsd:documentation><![CDATA[
165+
The idle timeout in milliseconds between
166+
polls when using 'PollingConfig'.
167+
Defaults to 1500ms.
168+
]]></xsd:documentation>
169+
</xsd:annotation>
170+
</xsd:attribute>
171+
<xsd:attribute name="polling-max-records" type="xsd:int">
172+
<xsd:annotation>
173+
<xsd:documentation><![CDATA[
174+
The number of records to poll from Kinesis when using 'PollingConfig'.
175+
Defaults to 10000.
176+
]]></xsd:documentation>
177+
</xsd:annotation>
178+
</xsd:attribute>
179+
</xsd:complexType>
180+
</xsd:element>
181+
22182
<xsd:element name="kinesis-message-driven-channel-adapter">
23183
<xsd:annotation>
24184
<xsd:documentation><![CDATA[
@@ -76,8 +236,9 @@
76236
<xsd:attribute name="checkpoints-interval" type="xsd:long">
77237
<xsd:annotation>
78238
<xsd:documentation><![CDATA[
79-
Sets the interval between 2 checkpoints.
80-
Only used when checkpointMode is periodic.
239+
Sets the interval between 2 checkpoints in milliseconds.
240+
Only used when 'checkpoint-mode' is 'periodic'.
241+
Default is 5s.
81242
]]></xsd:documentation>
82243
</xsd:annotation>
83244
</xsd:attribute>
@@ -86,6 +247,7 @@
86247
<xsd:documentation><![CDATA[
87248
Configure a timeout in milliseconds
88249
to wait for lock on shard renewal.
250+
Default is 10s.
89251
]]></xsd:documentation>
90252
</xsd:annotation>
91253
</xsd:attribute>
@@ -1161,14 +1323,22 @@
11611323
<xsd:enumeration value="periodic"/>
11621324
</xsd:restriction>
11631325
</xsd:simpleType>
1164-
1326+
11651327
<xsd:simpleType name="kinesisListenerMode">
11661328
<xsd:restriction base="xsd:token">
11671329
<xsd:enumeration value="record"/>
11681330
<xsd:enumeration value="batch"/>
11691331
</xsd:restriction>
11701332
</xsd:simpleType>
1171-
1333+
1334+
<xsd:simpleType name="kinesisMetricsLevel">
1335+
<xsd:restriction base="xsd:token">
1336+
<xsd:enumeration value="NONE"/>
1337+
<xsd:enumeration value="SUMMARY"/>
1338+
<xsd:enumeration value="DETAILED"/>
1339+
</xsd:restriction>
1340+
</xsd:simpleType>
1341+
11721342
<xsd:simpleType name="s3CommandType">
11731343
<xsd:restriction base="xsd:token">
11741344
<xsd:enumeration value="UPLOAD"/>

0 commit comments

Comments
 (0)