/** * DeleteInternetGateway action * * Deletes an Internet gateway from your AWS account. * The gateway must not be attached to a VPC * * @param string $internetGatewayId The ID of the Internet Gateway * @return bool Returns TRUE on success * @throws ClientException * @throws Ec2Exception */ public function deleteInternetGateway($internetGatewayId) { $result = false; $options = array('InternetGatewayId' => (string) $internetGatewayId); $action = ucfirst(__FUNCTION__); $response = $this->client->call($action, $options); if ($response->getError() === false) { $sxml = simplexml_load_string($response->getRawContent()); if ((string) $sxml->return != 'true') { throw new Ec2Exception(sprintf('Amazon Ec2 could not %s InternetGatewayId:"%s". It returned "%s"', $action, $options['InternetGatewayId'], $sxml->return)); } $result = true; $entity = $this->ec2->getEntityManagerEnabled() ? $this->ec2->internetGateway->get($options['InternetGatewayId']) : null; if ($entity !== null) { $this->ec2->getEntityManager()->detach($entity); } } return $result; }
/** * Gets an entity manager * * @return EntityManager */ public function getEntityManager() { return $this->ec2->getEntityManager(); }