@Override
    public DetachVpnGatewayResult detachVpnGateway(DetachVpnGatewayRequest request) {
        request = beforeClientExecution(request);
        return executeDetachVpnGateway(request);
    }
<p>
Detaches a virtual private 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 virtual private gateway has been completely detached from a VPC by describing the
virtual private gateway (any attachments to the virtual private gateway are also described).
</p>
<p>
You must wait for the attachment's state to switch to <code>detached</code> before you can delete the VPC or
attach a different VPC to the virtual private gateway.
</p>

@param detachVpnGatewayRequest
       Contains the parameters for DetachVpnGateway.
@return Result of the DetachVpnGateway operation returned by the service.
@sample AmazonEC2.DetachVpnGateway
@see <a href="http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DetachVpnGateway" target="_top">AWS API
     Documentation</a>
aws-java-sdk-ec2/src/main/java/com/amazonaws/services/ec2/AmazonEC2Client.java