Skip to content

Commit e497f38

Browse files
authored
fix(client-kendra): change incorrectly modeled DocumentAttributeValue to structure (#3040)
DocumentAttributeValue was incorrectly modeled as an enum instead of a structure. This update changes DocumentAttributeValue to a structure shape. It means the JavaScript object can contain more than 1 entry.
1 parent 5e260da commit e497f38

File tree

2 files changed

+38
-129
lines changed

2 files changed

+38
-129
lines changed

Diff for: clients/client-kendra/src/models/models_0.ts

+14-100
Original file line numberDiff line numberDiff line change
@@ -191,46 +191,21 @@ export namespace AdditionalResultAttribute {
191191
* <p>The value of a custom document attribute. You can only provide one
192192
* value for a custom attribute.</p>
193193
*/
194-
export type DocumentAttributeValue =
195-
| DocumentAttributeValue.DateValueMember
196-
| DocumentAttributeValue.LongValueMember
197-
| DocumentAttributeValue.StringListValueMember
198-
| DocumentAttributeValue.StringValueMember
199-
| DocumentAttributeValue.$UnknownMember;
200-
201-
export namespace DocumentAttributeValue {
194+
export interface DocumentAttributeValue {
202195
/**
203196
* <p>A string, such as "department".</p>
204197
*/
205-
export interface StringValueMember {
206-
StringValue: string;
207-
StringListValue?: never;
208-
LongValue?: never;
209-
DateValue?: never;
210-
$unknown?: never;
211-
}
198+
StringValue?: string;
212199

213200
/**
214201
* <p>A list of strings. </p>
215202
*/
216-
export interface StringListValueMember {
217-
StringValue?: never;
218-
StringListValue: string[];
219-
LongValue?: never;
220-
DateValue?: never;
221-
$unknown?: never;
222-
}
203+
StringListValue?: string[];
223204

224205
/**
225206
* <p>A long integer value.</p>
226207
*/
227-
export interface LongValueMember {
228-
StringValue?: never;
229-
StringListValue?: never;
230-
LongValue: number;
231-
DateValue?: never;
232-
$unknown?: never;
233-
}
208+
LongValue?: number;
234209

235210
/**
236211
* <p>A date expressed as an ISO 8601 string.</p>
@@ -240,48 +215,16 @@ export namespace DocumentAttributeValue {
240215
* for March 25th 2012 at 12:30PM (plus 10 seconds) in
241216
* Central European Time.</p>
242217
*/
243-
export interface DateValueMember {
244-
StringValue?: never;
245-
StringListValue?: never;
246-
LongValue?: never;
247-
DateValue: Date;
248-
$unknown?: never;
249-
}
250-
251-
export interface $UnknownMember {
252-
StringValue?: never;
253-
StringListValue?: never;
254-
LongValue?: never;
255-
DateValue?: never;
256-
$unknown: [string, any];
257-
}
258-
259-
export interface Visitor<T> {
260-
StringValue: (value: string) => T;
261-
StringListValue: (value: string[]) => T;
262-
LongValue: (value: number) => T;
263-
DateValue: (value: Date) => T;
264-
_: (name: string, value: any) => T;
265-
}
266-
267-
export const visit = <T>(value: DocumentAttributeValue, visitor: Visitor<T>): T => {
268-
if (value.StringValue !== undefined) return visitor.StringValue(value.StringValue);
269-
if (value.StringListValue !== undefined) return visitor.StringListValue(value.StringListValue);
270-
if (value.LongValue !== undefined) return visitor.LongValue(value.LongValue);
271-
if (value.DateValue !== undefined) return visitor.DateValue(value.DateValue);
272-
return visitor._(value.$unknown[0], value.$unknown[1]);
273-
};
274-
275-
/**
276-
* @internal
277-
*/
278-
export const filterSensitiveLog = (obj: DocumentAttributeValue): any => {
279-
if (obj.StringValue !== undefined) return { StringValue: obj.StringValue };
280-
if (obj.StringListValue !== undefined) return { StringListValue: obj.StringListValue };
281-
if (obj.LongValue !== undefined) return { LongValue: obj.LongValue };
282-
if (obj.DateValue !== undefined) return { DateValue: obj.DateValue };
283-
if (obj.$unknown !== undefined) return { [obj.$unknown[0]]: "UNKNOWN" };
284-
};
218+
DateValue?: Date;
219+
}
220+
221+
export namespace DocumentAttributeValue {
222+
/**
223+
* @internal
224+
*/
225+
export const filterSensitiveLog = (obj: DocumentAttributeValue): any => ({
226+
...obj,
227+
});
285228
}
286229

287230
/**
@@ -305,7 +248,6 @@ export namespace DocumentAttribute {
305248
*/
306249
export const filterSensitiveLog = (obj: DocumentAttribute): any => ({
307250
...obj,
308-
...(obj.Value && { Value: DocumentAttributeValue.filterSensitiveLog(obj.Value) }),
309251
});
310252
}
311253

@@ -631,7 +573,6 @@ export namespace DocumentInfo {
631573
*/
632574
export const filterSensitiveLog = (obj: DocumentInfo): any => ({
633575
...obj,
634-
...(obj.Attributes && { Attributes: obj.Attributes.map((item) => DocumentAttribute.filterSensitiveLog(item)) }),
635576
});
636577
}
637578

@@ -929,7 +870,6 @@ export namespace Document {
929870
*/
930871
export const filterSensitiveLog = (obj: Document): any => ({
931872
...obj,
932-
...(obj.Attributes && { Attributes: obj.Attributes.map((item) => DocumentAttribute.filterSensitiveLog(item)) }),
933873
});
934874
}
935875

@@ -6567,9 +6507,6 @@ export namespace DocumentAttributeValueCountPair {
65676507
*/
65686508
export const filterSensitiveLog = (obj: DocumentAttributeValueCountPair): any => ({
65696509
...obj,
6570-
...(obj.DocumentAttributeValue && {
6571-
DocumentAttributeValue: DocumentAttributeValue.filterSensitiveLog(obj.DocumentAttributeValue),
6572-
}),
65736510
});
65746511
}
65756512

@@ -6603,11 +6540,6 @@ export namespace FacetResult {
66036540
*/
66046541
export const filterSensitiveLog = (obj: FacetResult): any => ({
66056542
...obj,
6606-
...(obj.DocumentAttributeValueCountPairs && {
6607-
DocumentAttributeValueCountPairs: obj.DocumentAttributeValueCountPairs.map((item) =>
6608-
DocumentAttributeValueCountPair.filterSensitiveLog(item)
6609-
),
6610-
}),
66116543
});
66126544
}
66136545

@@ -6721,9 +6653,6 @@ export namespace QueryResultItem {
67216653
*/
67226654
export const filterSensitiveLog = (obj: QueryResultItem): any => ({
67236655
...obj,
6724-
...(obj.DocumentAttributes && {
6725-
DocumentAttributes: obj.DocumentAttributes.map((item) => DocumentAttribute.filterSensitiveLog(item)),
6726-
}),
67276656
});
67286657
}
67296658

@@ -7391,20 +7320,6 @@ export namespace AttributeFilter {
73917320
*/
73927321
export const filterSensitiveLog = (obj: AttributeFilter): any => ({
73937322
...obj,
7394-
...(obj.AndAllFilters && {
7395-
AndAllFilters: obj.AndAllFilters.map((item) => AttributeFilter.filterSensitiveLog(item)),
7396-
}),
7397-
...(obj.OrAllFilters && { OrAllFilters: obj.OrAllFilters.map((item) => AttributeFilter.filterSensitiveLog(item)) }),
7398-
...(obj.NotFilter && { NotFilter: AttributeFilter.filterSensitiveLog(obj.NotFilter) }),
7399-
...(obj.EqualsTo && { EqualsTo: DocumentAttribute.filterSensitiveLog(obj.EqualsTo) }),
7400-
...(obj.ContainsAll && { ContainsAll: DocumentAttribute.filterSensitiveLog(obj.ContainsAll) }),
7401-
...(obj.ContainsAny && { ContainsAny: DocumentAttribute.filterSensitiveLog(obj.ContainsAny) }),
7402-
...(obj.GreaterThan && { GreaterThan: DocumentAttribute.filterSensitiveLog(obj.GreaterThan) }),
7403-
...(obj.GreaterThanOrEquals && {
7404-
GreaterThanOrEquals: DocumentAttribute.filterSensitiveLog(obj.GreaterThanOrEquals),
7405-
}),
7406-
...(obj.LessThan && { LessThan: DocumentAttribute.filterSensitiveLog(obj.LessThan) }),
7407-
...(obj.LessThanOrEquals && { LessThanOrEquals: DocumentAttribute.filterSensitiveLog(obj.LessThanOrEquals) }),
74087323
});
74097324
}
74107325

@@ -7511,6 +7426,5 @@ export namespace QueryRequest {
75117426
*/
75127427
export const filterSensitiveLog = (obj: QueryRequest): any => ({
75137428
...obj,
7514-
...(obj.AttributeFilter && { AttributeFilter: AttributeFilter.filterSensitiveLog(obj.AttributeFilter) }),
75157429
});
75167430
}

Diff for: clients/client-kendra/src/protocols/Aws_json1_1.ts

+24-29
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ import {
66
expectNonNull as __expectNonNull,
77
expectNumber as __expectNumber,
88
expectString as __expectString,
9-
expectUnion as __expectUnion,
109
limitedParseFloat32 as __limitedParseFloat32,
1110
parseEpochTimestamp as __parseEpochTimestamp,
1211
serializeFloat as __serializeFloat,
@@ -5849,15 +5848,16 @@ const serializeAws_json1_1DocumentAttributeStringListValue = (input: string[], c
58495848
};
58505849

58515850
const serializeAws_json1_1DocumentAttributeValue = (input: DocumentAttributeValue, context: __SerdeContext): any => {
5852-
return DocumentAttributeValue.visit(input, {
5853-
DateValue: (value) => ({ DateValue: Math.round(value.getTime() / 1000) }),
5854-
LongValue: (value) => ({ LongValue: value }),
5855-
StringListValue: (value) => ({
5856-
StringListValue: serializeAws_json1_1DocumentAttributeStringListValue(value, context),
5857-
}),
5858-
StringValue: (value) => ({ StringValue: value }),
5859-
_: (name, value) => ({ name: value } as any),
5860-
});
5851+
return {
5852+
...(input.DateValue !== undefined &&
5853+
input.DateValue !== null && { DateValue: Math.round(input.DateValue.getTime() / 1000) }),
5854+
...(input.LongValue !== undefined && input.LongValue !== null && { LongValue: input.LongValue }),
5855+
...(input.StringListValue !== undefined &&
5856+
input.StringListValue !== null && {
5857+
StringListValue: serializeAws_json1_1DocumentAttributeStringListValue(input.StringListValue, context),
5858+
}),
5859+
...(input.StringValue !== undefined && input.StringValue !== null && { StringValue: input.StringValue }),
5860+
};
58615861
};
58625862

58635863
const serializeAws_json1_1DocumentIdList = (input: string[], context: __SerdeContext): any => {
@@ -8170,7 +8170,7 @@ const deserializeAws_json1_1DocumentAttribute = (output: any, context: __SerdeCo
81708170
Key: __expectString(output.Key),
81718171
Value:
81728172
output.Value !== undefined && output.Value !== null
8173-
? deserializeAws_json1_1DocumentAttributeValue(__expectUnion(output.Value), context)
8173+
? deserializeAws_json1_1DocumentAttributeValue(output.Value, context)
81748174
: undefined,
81758175
} as any;
81768176
};
@@ -8198,23 +8198,18 @@ const deserializeAws_json1_1DocumentAttributeStringListValue = (output: any, con
81988198
};
81998199

82008200
const deserializeAws_json1_1DocumentAttributeValue = (output: any, context: __SerdeContext): DocumentAttributeValue => {
8201-
if (output.DateValue !== undefined && output.DateValue !== null) {
8202-
return {
8203-
DateValue: __expectNonNull(__parseEpochTimestamp(__expectNumber(output.DateValue))),
8204-
};
8205-
}
8206-
if (__expectLong(output.LongValue) !== undefined) {
8207-
return { LongValue: __expectLong(output.LongValue) as any };
8208-
}
8209-
if (output.StringListValue !== undefined && output.StringListValue !== null) {
8210-
return {
8211-
StringListValue: deserializeAws_json1_1DocumentAttributeStringListValue(output.StringListValue, context),
8212-
};
8213-
}
8214-
if (__expectString(output.StringValue) !== undefined) {
8215-
return { StringValue: __expectString(output.StringValue) as any };
8216-
}
8217-
return { $unknown: Object.entries(output)[0] };
8201+
return {
8202+
DateValue:
8203+
output.DateValue !== undefined && output.DateValue !== null
8204+
? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.DateValue)))
8205+
: undefined,
8206+
LongValue: __expectLong(output.LongValue),
8207+
StringListValue:
8208+
output.StringListValue !== undefined && output.StringListValue !== null
8209+
? deserializeAws_json1_1DocumentAttributeStringListValue(output.StringListValue, context)
8210+
: undefined,
8211+
StringValue: __expectString(output.StringValue),
8212+
} as any;
82188213
};
82198214

82208215
const deserializeAws_json1_1DocumentAttributeValueCountPair = (
@@ -8225,7 +8220,7 @@ const deserializeAws_json1_1DocumentAttributeValueCountPair = (
82258220
Count: __expectInt32(output.Count),
82268221
DocumentAttributeValue:
82278222
output.DocumentAttributeValue !== undefined && output.DocumentAttributeValue !== null
8228-
? deserializeAws_json1_1DocumentAttributeValue(__expectUnion(output.DocumentAttributeValue), context)
8223+
? deserializeAws_json1_1DocumentAttributeValue(output.DocumentAttributeValue, context)
82298224
: undefined,
82308225
} as any;
82318226
};

0 commit comments

Comments
 (0)