'Creates a VPN Gateway.
:param vpc: VPC to create the Gateway for (required).
:type  vpc: :class: `CloudStackVPC`
:param for_display: Display the VPC to the end user or not.
:type  for_display: ``bool``
:rtype: :class: `CloudStackVpnGateway`'

def ex_create_vpn_gateway(self, vpc, for_display=None):

    args = {'vpcid': vpc.id}
    if (for_display is not None):
        args['fordisplay'] = for_display
    res = self._async_request(command='createVpnGateway', params=args, method='GET')
    item = res['vpngateway']
    extra_map = RESOURCE_EXTRA_ATTRIBUTES_MAP['vpngateway']
    return CloudStackVpnGateway(id=item['id'], account=item['account'], domain=item['domain'], domain_id=item['domainid'], public_ip=item['publicip'], vpc_id=vpc.id, driver=self, extra=self._get_extra_dict(item, extra_map))
