88use AsyncAws \DynamoDb \ValueObject \AttributeDefinition ;
99use AsyncAws \DynamoDb \ValueObject \BillingModeSummary ;
1010use AsyncAws \DynamoDb \ValueObject \GlobalSecondaryIndexDescription ;
11+ use AsyncAws \DynamoDb \ValueObject \GlobalSecondaryIndexWarmThroughputDescription ;
1112use AsyncAws \DynamoDb \ValueObject \KeySchemaElement ;
1213use AsyncAws \DynamoDb \ValueObject \LocalSecondaryIndexDescription ;
1314use AsyncAws \DynamoDb \ValueObject \OnDemandThroughput ;
2223use AsyncAws \DynamoDb \ValueObject \StreamSpecification ;
2324use AsyncAws \DynamoDb \ValueObject \TableClassSummary ;
2425use AsyncAws \DynamoDb \ValueObject \TableDescription ;
26+ use AsyncAws \DynamoDb \ValueObject \TableWarmThroughputDescription ;
2527
2628/**
2729 * Represents the output of a `CreateTable` operation.
@@ -100,6 +102,7 @@ private function populateResultGlobalSecondaryIndexDescription(array $json): Glo
100102 'ItemCount ' => isset ($ json ['ItemCount ' ]) ? (int ) $ json ['ItemCount ' ] : null ,
101103 'IndexArn ' => isset ($ json ['IndexArn ' ]) ? (string ) $ json ['IndexArn ' ] : null ,
102104 'OnDemandThroughput ' => empty ($ json ['OnDemandThroughput ' ]) ? null : $ this ->populateResultOnDemandThroughput ($ json ['OnDemandThroughput ' ]),
105+ 'WarmThroughput ' => empty ($ json ['WarmThroughput ' ]) ? null : $ this ->populateResultGlobalSecondaryIndexWarmThroughputDescription ($ json ['WarmThroughput ' ]),
103106 ]);
104107 }
105108
@@ -116,6 +119,15 @@ private function populateResultGlobalSecondaryIndexDescriptionList(array $json):
116119 return $ items ;
117120 }
118121
122+ private function populateResultGlobalSecondaryIndexWarmThroughputDescription (array $ json ): GlobalSecondaryIndexWarmThroughputDescription
123+ {
124+ return new GlobalSecondaryIndexWarmThroughputDescription ([
125+ 'ReadUnitsPerSecond ' => isset ($ json ['ReadUnitsPerSecond ' ]) ? (int ) $ json ['ReadUnitsPerSecond ' ] : null ,
126+ 'WriteUnitsPerSecond ' => isset ($ json ['WriteUnitsPerSecond ' ]) ? (int ) $ json ['WriteUnitsPerSecond ' ] : null ,
127+ 'Status ' => isset ($ json ['Status ' ]) ? (string ) $ json ['Status ' ] : null ,
128+ ]);
129+ }
130+
119131 /**
120132 * @return KeySchemaElement[]
121133 */
@@ -229,6 +241,7 @@ private function populateResultReplicaDescription(array $json): ReplicaDescripti
229241 'KMSMasterKeyId ' => isset ($ json ['KMSMasterKeyId ' ]) ? (string ) $ json ['KMSMasterKeyId ' ] : null ,
230242 'ProvisionedThroughputOverride ' => empty ($ json ['ProvisionedThroughputOverride ' ]) ? null : $ this ->populateResultProvisionedThroughputOverride ($ json ['ProvisionedThroughputOverride ' ]),
231243 'OnDemandThroughputOverride ' => empty ($ json ['OnDemandThroughputOverride ' ]) ? null : $ this ->populateResultOnDemandThroughputOverride ($ json ['OnDemandThroughputOverride ' ]),
244+ 'WarmThroughput ' => empty ($ json ['WarmThroughput ' ]) ? null : $ this ->populateResultTableWarmThroughputDescription ($ json ['WarmThroughput ' ]),
232245 'GlobalSecondaryIndexes ' => !isset ($ json ['GlobalSecondaryIndexes ' ]) ? null : $ this ->populateResultReplicaGlobalSecondaryIndexDescriptionList ($ json ['GlobalSecondaryIndexes ' ]),
233246 'ReplicaInaccessibleDateTime ' => (isset ($ json ['ReplicaInaccessibleDateTime ' ]) && ($ d = \DateTimeImmutable::createFromFormat ('U.u ' , \sprintf ('%.6F ' , $ json ['ReplicaInaccessibleDateTime ' ])))) ? $ d : null ,
234247 'ReplicaTableClassSummary ' => empty ($ json ['ReplicaTableClassSummary ' ]) ? null : $ this ->populateResultTableClassSummary ($ json ['ReplicaTableClassSummary ' ]),
@@ -254,6 +267,7 @@ private function populateResultReplicaGlobalSecondaryIndexDescription(array $jso
254267 'IndexName ' => isset ($ json ['IndexName ' ]) ? (string ) $ json ['IndexName ' ] : null ,
255268 'ProvisionedThroughputOverride ' => empty ($ json ['ProvisionedThroughputOverride ' ]) ? null : $ this ->populateResultProvisionedThroughputOverride ($ json ['ProvisionedThroughputOverride ' ]),
256269 'OnDemandThroughputOverride ' => empty ($ json ['OnDemandThroughputOverride ' ]) ? null : $ this ->populateResultOnDemandThroughputOverride ($ json ['OnDemandThroughputOverride ' ]),
270+ 'WarmThroughput ' => empty ($ json ['WarmThroughput ' ]) ? null : $ this ->populateResultGlobalSecondaryIndexWarmThroughputDescription ($ json ['WarmThroughput ' ]),
257271 ]);
258272 }
259273
@@ -333,6 +347,16 @@ private function populateResultTableDescription(array $json): TableDescription
333347 'TableClassSummary ' => empty ($ json ['TableClassSummary ' ]) ? null : $ this ->populateResultTableClassSummary ($ json ['TableClassSummary ' ]),
334348 'DeletionProtectionEnabled ' => isset ($ json ['DeletionProtectionEnabled ' ]) ? filter_var ($ json ['DeletionProtectionEnabled ' ], \FILTER_VALIDATE_BOOLEAN ) : null ,
335349 'OnDemandThroughput ' => empty ($ json ['OnDemandThroughput ' ]) ? null : $ this ->populateResultOnDemandThroughput ($ json ['OnDemandThroughput ' ]),
350+ 'WarmThroughput ' => empty ($ json ['WarmThroughput ' ]) ? null : $ this ->populateResultTableWarmThroughputDescription ($ json ['WarmThroughput ' ]),
351+ ]);
352+ }
353+
354+ private function populateResultTableWarmThroughputDescription (array $ json ): TableWarmThroughputDescription
355+ {
356+ return new TableWarmThroughputDescription ([
357+ 'ReadUnitsPerSecond ' => isset ($ json ['ReadUnitsPerSecond ' ]) ? (int ) $ json ['ReadUnitsPerSecond ' ] : null ,
358+ 'WriteUnitsPerSecond ' => isset ($ json ['WriteUnitsPerSecond ' ]) ? (int ) $ json ['WriteUnitsPerSecond ' ] : null ,
359+ 'Status ' => isset ($ json ['Status ' ]) ? (string ) $ json ['Status ' ] : null ,
336360 ]);
337361 }
338362}
0 commit comments