def allocate_address(domain = 'standard')
unless describe_addresses.body['addressesSet'].size < self.data[:limits][:addresses]
raise Fog::Compute::AWS::Error, "AddressLimitExceeded => Too many addresses allocated"
end
response = Excon::Response.new
response.status = 200
domain = domain == 'vpc' ? 'vpc' : 'standard'
public_ip = Fog::AWS::Mock.ip_address
data = {
'instanceId' => nil,
'publicIp' => public_ip,
'domain' => domain,
:origin => domain
}
if domain == 'vpc'
data['allocationId'] = "eipalloc-#{Fog::Mock.random_hex(8)}"
end
self.data[:addresses][public_ip] = data
response.body = data.reject {|k, v| k == 'instanceId' }.merge('requestId' => Fog::AWS::Mock.request_id)
response
end