@@ -147,20 +147,30 @@ protected function populateResult(Response $response): void
147
147
$ data = new \SimpleXMLElement ($ response ->getContent ());
148
148
$ data = $ data ->AssumeRoleWithWebIdentityResult ;
149
149
150
- $ this ->credentials = !$ data ->Credentials ? null : new Credentials ([
151
- 'AccessKeyId ' => (string ) $ data ->Credentials ->AccessKeyId ,
152
- 'SecretAccessKey ' => (string ) $ data ->Credentials ->SecretAccessKey ,
153
- 'SessionToken ' => (string ) $ data ->Credentials ->SessionToken ,
154
- 'Expiration ' => new \DateTimeImmutable ((string ) $ data ->Credentials ->Expiration ),
150
+ $ this ->credentials = 0 === $ data ->Credentials ->count () ? null : $ this ->populateResultCredentials ($ data ->Credentials );
151
+ $ this ->subjectFromWebIdentityToken = (null !== $ v = $ data ->SubjectFromWebIdentityToken [0 ]) ? (string ) $ v : null ;
152
+ $ this ->assumedRoleUser = 0 === $ data ->AssumedRoleUser ->count () ? null : $ this ->populateResultAssumedRoleUser ($ data ->AssumedRoleUser );
153
+ $ this ->packedPolicySize = (null !== $ v = $ data ->PackedPolicySize [0 ]) ? (int ) (string ) $ v : null ;
154
+ $ this ->provider = (null !== $ v = $ data ->Provider [0 ]) ? (string ) $ v : null ;
155
+ $ this ->audience = (null !== $ v = $ data ->Audience [0 ]) ? (string ) $ v : null ;
156
+ $ this ->sourceIdentity = (null !== $ v = $ data ->SourceIdentity [0 ]) ? (string ) $ v : null ;
157
+ }
158
+
159
+ private function populateResultAssumedRoleUser (\SimpleXMLElement $ xml ): AssumedRoleUser
160
+ {
161
+ return new AssumedRoleUser ([
162
+ 'AssumedRoleId ' => (string ) $ xml ->AssumedRoleId ,
163
+ 'Arn ' => (string ) $ xml ->Arn ,
155
164
]);
156
- $ this ->subjectFromWebIdentityToken = ($ v = $ data ->SubjectFromWebIdentityToken ) ? (string ) $ v : null ;
157
- $ this ->assumedRoleUser = !$ data ->AssumedRoleUser ? null : new AssumedRoleUser ([
158
- 'AssumedRoleId ' => (string ) $ data ->AssumedRoleUser ->AssumedRoleId ,
159
- 'Arn ' => (string ) $ data ->AssumedRoleUser ->Arn ,
165
+ }
166
+
167
+ private function populateResultCredentials (\SimpleXMLElement $ xml ): Credentials
168
+ {
169
+ return new Credentials ([
170
+ 'AccessKeyId ' => (string ) $ xml ->AccessKeyId ,
171
+ 'SecretAccessKey ' => (string ) $ xml ->SecretAccessKey ,
172
+ 'SessionToken ' => (string ) $ xml ->SessionToken ,
173
+ 'Expiration ' => new \DateTimeImmutable ((string ) $ xml ->Expiration ),
160
174
]);
161
- $ this ->packedPolicySize = ($ v = $ data ->PackedPolicySize ) ? (int ) (string ) $ v : null ;
162
- $ this ->provider = ($ v = $ data ->Provider ) ? (string ) $ v : null ;
163
- $ this ->audience = ($ v = $ data ->Audience ) ? (string ) $ v : null ;
164
- $ this ->sourceIdentity = ($ v = $ data ->SourceIdentity ) ? (string ) $ v : null ;
165
175
}
166
176
}
0 commit comments