in src/Ga/V20191120/GaApiResolver.php [892:943]
public function withEndpointGroupConfigurations(array $endpointGroupConfigurations)
{
$this->data['EndpointGroupConfigurations'] = $endpointGroupConfigurations;
foreach ($endpointGroupConfigurations as $depth1 => $depth1Value) {
if(isset($depth1Value['EndpointGroupRegion'])){
$this->options['query']['EndpointGroupConfigurations.' . ($depth1 + 1) . '.EndpointGroupRegion'] = $depth1Value['EndpointGroupRegion'];
}
if(isset($depth1Value['Name'])){
$this->options['query']['EndpointGroupConfigurations.' . ($depth1 + 1) . '.Name'] = $depth1Value['Name'];
}
if(isset($depth1Value['Description'])){
$this->options['query']['EndpointGroupConfigurations.' . ($depth1 + 1) . '.Description'] = $depth1Value['Description'];
}
foreach ($depth1Value['DestinationConfigurations'] as $depth2 => $depth2Value) {
foreach ($depth2Value['Protocols'] as $i => $iValue) {
$this->options['query']['EndpointGroupConfigurations.' . ($depth1 + 1) . '.DestinationConfigurations.' . ($depth2 + 1) . '.Protocols.' . ($i + 1)] = $iValue;
}
if(isset($depth2Value['FromPort'])){
$this->options['query']['EndpointGroupConfigurations.' . ($depth1 + 1) . '.DestinationConfigurations.' . ($depth2 + 1) . '.FromPort'] = $depth2Value['FromPort'];
}
if(isset($depth2Value['ToPort'])){
$this->options['query']['EndpointGroupConfigurations.' . ($depth1 + 1) . '.DestinationConfigurations.' . ($depth2 + 1) . '.ToPort'] = $depth2Value['ToPort'];
}
}
foreach ($depth1Value['EndpointConfigurations'] as $depth2 => $depth2Value) {
if(isset($depth2Value['Type'])){
$this->options['query']['EndpointGroupConfigurations.' . ($depth1 + 1) . '.EndpointConfigurations.' . ($depth2 + 1) . '.Type'] = $depth2Value['Type'];
}
if(isset($depth2Value['Endpoint'])){
$this->options['query']['EndpointGroupConfigurations.' . ($depth1 + 1) . '.EndpointConfigurations.' . ($depth2 + 1) . '.Endpoint'] = $depth2Value['Endpoint'];
}
if(isset($depth2Value['TrafficToEndpointPolicy'])){
$this->options['query']['EndpointGroupConfigurations.' . ($depth1 + 1) . '.EndpointConfigurations.' . ($depth2 + 1) . '.TrafficToEndpointPolicy'] = $depth2Value['TrafficToEndpointPolicy'];
}
foreach ($depth2Value['PolicyConfigurations'] as $depth3 => $depth3Value) {
if(isset($depth3Value['Address'])){
$this->options['query']['EndpointGroupConfigurations.' . ($depth1 + 1) . '.EndpointConfigurations.' . ($depth2 + 1) . '.PolicyConfigurations.' . ($depth3 + 1) . '.Address'] = $depth3Value['Address'];
}
foreach ($depth3Value['PortRanges'] as $depth4 => $depth4Value) {
if(isset($depth4Value['FromPort'])){
$this->options['query']['EndpointGroupConfigurations.' . ($depth1 + 1) . '.EndpointConfigurations.' . ($depth2 + 1) . '.PolicyConfigurations.' . ($depth3 + 1) . '.PortRanges.' . ($depth4 + 1) . '.FromPort'] = $depth4Value['FromPort'];
}
if(isset($depth4Value['ToPort'])){
$this->options['query']['EndpointGroupConfigurations.' . ($depth1 + 1) . '.EndpointConfigurations.' . ($depth2 + 1) . '.PolicyConfigurations.' . ($depth3 + 1) . '.PortRanges.' . ($depth4 + 1) . '.ToPort'] = $depth4Value['ToPort'];
}
}
}
}
}
return $this;
}