func (o *CloudAddress) SetBSON(raw bson.Raw) error {

	if o == nil {
		return nil
	}

	s := &mongoAttributesCloudAddress{}
	if err := raw.Unmarshal(s); err != nil {
		return err
	}

	o.IPVersion = s.IPVersion
	o.Primary = s.Primary
	o.PrivateDNSName = s.PrivateDNSName
	o.PrivateIP = s.PrivateIP
	o.PrivateNetwork = s.PrivateNetwork
	o.PublicDNSName = s.PublicDNSName
	o.PublicIP = s.PublicIP
	o.PublicNetwork = s.PublicNetwork

	return nil
}
// SetBSON implements the bson marshaling interface.
// This is used to transparently convert ID to MongoDBID as ObectID.
SetBSON implements the bson marshaling interface.
This is used to transparently convert ID to MongoDBID as ObectID.
// SetBSON implements the bson marshaling interface . // This is used to transparently convert ID to MongoDBID as ObectID .
func (o *CloudAddress) SetBSON(raw bson.Raw) error {
	if o == nil {
		return nil
	}
	s := &mongoAttributesCloudAddress{}
	if err := raw.Unmarshal(s); err != nil {
		return err
	}
	o.IPVersion = s.IPVersion
	o.Primary = s.Primary
	o.PrivateDNSName = s.PrivateDNSName
	o.PrivateIP = s.PrivateIP
	o.PrivateNetwork = s.PrivateNetwork
	o.PublicDNSName = s.PublicDNSName
	o.PublicIP = s.PublicIP
	o.PublicNetwork = s.PublicNetwork
	return nil
}
func ( o * CloudAddress ) SetBSON ( raw bson . Raw ) error { if o == nil { return nil } s := & mongoAttributesCloudAddress { } if err := raw . Unmarshal ( s ) ; err != nil { return err } o . IPVersion = s . IPVersion o . Primary = s . Primary o . PrivateDNSName = s . PrivateDNSName o . PrivateIP = s . PrivateIP o . PrivateNetwork = s . PrivateNetwork o . PublicDNSName = s . PublicDNSName o . PublicIP = s . PublicIP o . PublicNetwork = s . PublicNetwork return nil }
SetBSON implements the bson marshaling interface.
SetBSON implements the bson marshaling interface .