/**
  * Detach Vpn Gateway 
  * Detaches a VPN gateway from a VPC. You do this if you're planning to
  * turn off the VPC and not use it anymore. You can confirm a VPN gateway
  * has been completely detached from a VPC by describing the VPN gateway
  * (any attachments to the VPN gateway are also described).
  * You must wait for the attachment's state to switch to detached before you can
  * delete the VPC or attach a different VPC to the VPN gateway.
  * @see http://docs.amazonwebservices.com/AWSEC2/2009-11-30/DeveloperGuide/ApiReference-Query-DetachVpnGateway.html
  * @param mixed $request array of parameters for Amazon_EC2_Model_DetachVpnGatewayRequest request
  * or Amazon_EC2_Model_DetachVpnGatewayRequest object itself
  * @see Amazon_EC2_Model_DetachVpnGateway
  * @return Amazon_EC2_Model_DetachVpnGatewayResponse Amazon_EC2_Model_DetachVpnGatewayResponse
  *
  * @throws Amazon_EC2_Exception
  */
 public function detachVpnGateway($request)
 {
     if (!$request instanceof Amazon_EC2_Model_DetachVpnGatewayRequest) {
         require_once 'Amazon/EC2/Model/DetachVpnGatewayRequest.php';
         $request = new Amazon_EC2_Model_DetachVpnGatewayRequest($request);
     }
     require_once 'Amazon/EC2/Model/DetachVpnGatewayResponse.php';
     return Amazon_EC2_Model_DetachVpnGatewayResponse::fromXML($this->_invoke($this->_convertDetachVpnGateway($request)));
 }
 /**
  * Detach Vpn Gateway 
  * Detaches a VPN gateway from a VPC. You do this if you're planning to
  * turn off the VPC and not use it anymore. You can confirm a VPN gateway
  * has been completely detached from a VPC by describing the VPN gateway
  * (any attachments to the VPN gateway are also described).
  * You must wait for the attachment's state to switch to detached before you can
  * delete the VPC or attach a different VPC to the VPN gateway.  
  * @see http://docs.amazonwebservices.com/AWSEC2/2009-11-30/DeveloperGuide/ApiReference-Query-DetachVpnGateway.html      
  * @param mixed $request array of parameters for Amazon_EC2_Model_DetachVpnGateway request or Amazon_EC2_Model_DetachVpnGateway object itself
  * @see Amazon_EC2_Model_DetachVpnGateway
  * @return Amazon_EC2_Model_DetachVpnGatewayResponse Amazon_EC2_Model_DetachVpnGatewayResponse
  *
  * @throws Amazon_EC2_Exception
  */
 public function detachVpnGateway($request)
 {
     require_once 'Amazon/EC2/Model/DetachVpnGatewayResponse.php';
     return Amazon_EC2_Model_DetachVpnGatewayResponse::fromXML($this->_invoke('DetachVpnGateway'));
 }