neutron_fwaas.objects.firewall_v2 module

class neutron_fwaas.objects.firewall_v2.DefaultFirewallGroup(*args, **kwargs)

Bases: NeutronDbObject

VERSION: str = '1.0'

Object version field

Each service has its set of objects, each with a version attached. When a client attempts to call an object method, the server checks to see if the version of that object matches (in a compatible way) its object implementation. If so, cool, and if not, fail.

This version is allowed to have three parts, X.Y.Z, where the .Z element is reserved for stable branch backports. The .Z is ignored for the purposes of triggering a backport, which means anything changed under a .Z must be additive and non-destructive such that a node that knows about X.Y can consider X.Y.Z equivalent.

create()
db_model

alias of DefaultFirewallGroup

extra_filter_names = {'not-tags', 'not-tags-any', 'tags', 'tags-any', 'tenant_id'}
fields: MutableMapping[str, Field[Any]] = {'firewall_group_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'project_id': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False)}

The fields present in this object as key:field pairs.

For example:

fields = {
    'foo': obj_fields.IntegerField(),
    'bar': obj_fields.StringField(),
}
fields_no_update: list[str] = ['tenant_id', 'firewall_group_id', 'project_id']
property firewall_group_id: Any
obj_extra_fields: Sequence[str] = ['tenant_id']

List of additional object attributes to expose alongside fields.

Names listed here are typically implemented as Python properties and are included in obj_fields and exposed through iteration, but they are not versioned and not serialized during RPC:

class MyObject(VersionedObject):
    fields = {'foo': obj_fields.IntegerField()}
    obj_extra_fields = ['bar']

    @property
    def bar(self):
        return self.foo * 2
primary_keys = ['project_id']
property project_id: Any
property tenant_id
unique_keys = [['project_id']]
update()
class neutron_fwaas.objects.firewall_v2.FirewallGroup(*args, **kwargs)

Bases: NeutronDbObject

VERSION: str = '1.0'

Object version field

Each service has its set of objects, each with a version attached. When a client attempts to call an object method, the server checks to see if the version of that object matches (in a compatible way) its object implementation. If so, cool, and if not, fail.

This version is allowed to have three parts, X.Y.Z, where the .Z element is reserved for stable branch backports. The .Z is ignored for the purposes of triggering a backport, which means anything changed under a .Z must be additive and non-destructive such that a node that knows about X.Y can consider X.Y.Z equivalent.

property admin_state_up: Any
create()
property created_at: Any
db_model

alias of FirewallGroup

property description: Any
property egress_firewall_policy: Any
property egress_firewall_policy_id: Any
extra_filter_names = {'not-tags', 'not-tags-any', 'tags', 'tags-any', 'tenant_id'}
fields: MutableMapping[str, Field[Any]] = {'admin_state_up': Boolean(default=True,nullable=False), 'created_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'description': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'egress_firewall_policy': Object(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'egress_firewall_policy_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'ingress_firewall_policy': Object(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'ingress_firewall_policy_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'name': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'port_associations': List(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'project_id': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'revision_number': Integer(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'shared': Boolean(default=False,nullable=False), 'status': Enum(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'updated_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True)}

The fields present in this object as key:field pairs.

For example:

fields = {
    'foo': obj_fields.IntegerField(),
    'bar': obj_fields.StringField(),
}
fields_no_update: list[str] = ['ports', 'id', 'tenant_id', 'project_id', 'created_at', 'updated_at', 'revision_number']
property id: Any
property ingress_firewall_policy: Any
property ingress_firewall_policy_id: Any
load_synthetic_db_fields(db_obj=None)

Override to handle multiple FK references to FirewallPolicy.

The base implementation raises NeutronSyntheticFieldMultipleForeignKeys when a child class declares more than one foreign key for the same parent. FirewallGroup references FirewallPolicy twice (ingress and egress), so we load those fields from the side-loaded relationship data in db_obj and delegate the remaining synthetic fields to the base class.

property name: Any
obj_extra_fields: Sequence[str] = ['ports', 'tenant_id']

List of additional object attributes to expose alongside fields.

Names listed here are typically implemented as Python properties and are included in obj_fields and exposed through iteration, but they are not versioned and not serialized during RPC:

class MyObject(VersionedObject):
    fields = {'foo': obj_fields.IntegerField()}
    obj_extra_fields = ['bar']

    @property
    def bar(self):
        return self.foo * 2
property port_associations: Any
property ports
property project_id: Any
property revision_number: Any
property shared: Any
property standard_attr_id
property status: Any
synthetic_fields = ['port_associations', 'ingress_firewall_policy', 'egress_firewall_policy']
property tenant_id
to_dict()
unique_keys = [['id']]
update()
classmethod update_status(context, id, status, not_in=None)
property updated_at: Any
class neutron_fwaas.objects.firewall_v2.FirewallGroupPortAssociation(*args, **kwargs)

Bases: NeutronDbObject

VERSION: str = '1.0'

Object version field

Each service has its set of objects, each with a version attached. When a client attempts to call an object method, the server checks to see if the version of that object matches (in a compatible way) its object implementation. If so, cool, and if not, fail.

This version is allowed to have three parts, X.Y.Z, where the .Z element is reserved for stable branch backports. The .Z is ignored for the purposes of triggering a backport, which means anything changed under a .Z must be additive and non-destructive such that a node that knows about X.Y can consider X.Y.Z equivalent.

create()
db_model

alias of FirewallGroupPortAssociation

classmethod delete_group_port_associations(context, firewall_group_id)
extra_filter_names = {'not-tags', 'not-tags-any', 'tags', 'tags-any'}
fields: MutableMapping[str, Field[Any]] = {'firewall_group_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'port_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False)}

The fields present in this object as key:field pairs.

For example:

fields = {
    'foo': obj_fields.IntegerField(),
    'bar': obj_fields.StringField(),
}
fields_no_update: list[str] = ['port_id', 'firewall_group_id']
property firewall_group_id: Any
foreign_keys = {'FirewallGroup': {'firewall_group_id': 'id'}}
property port_id: Any
primary_keys = ['firewall_group_id', 'port_id']
unique_keys = [['port_id', 'firewall_group_id'], ['port_id']]
update()
class neutron_fwaas.objects.firewall_v2.FirewallGroupStatusEnumField(nullable: bool = False, default: T | type[UnspecifiedDefault] = <class 'oslo_versionedobjects.fields.UnspecifiedDefault'>, read_only: bool = False)

Bases: AutoTypedField

AUTO_TYPE: FieldType[T] = <oslo_versionedobjects.fields.Enum object>
class neutron_fwaas.objects.firewall_v2.FirewallPolicy(*args, **kwargs)

Bases: NeutronDbObject

VERSION: str = '1.0'

Object version field

Each service has its set of objects, each with a version attached. When a client attempts to call an object method, the server checks to see if the version of that object matches (in a compatible way) its object implementation. If so, cool, and if not, fail.

This version is allowed to have three parts, X.Y.Z, where the .Z element is reserved for stable branch backports. The .Z is ignored for the purposes of triggering a backport, which means anything changed under a .Z must be additive and non-destructive such that a node that knows about X.Y can consider X.Y.Z equivalent.

property audited: Any
create()
property created_at: Any
db_model

alias of FirewallPolicy

property description: Any
extra_filter_names = {'not-tags', 'not-tags-any', 'tags', 'tags-any', 'tenant_id'}
fields: MutableMapping[str, Field[Any]] = {'audited': Boolean(default=False,nullable=False), 'created_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'description': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'name': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'project_id': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'revision_number': Integer(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'rule_associations': List(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'rule_count': Integer(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'shared': Boolean(default=False,nullable=False), 'updated_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True)}

The fields present in this object as key:field pairs.

For example:

fields = {
    'foo': obj_fields.IntegerField(),
    'bar': obj_fields.StringField(),
}
fields_no_update: list[str] = ['id', 'tenant_id', 'project_id', 'created_at', 'updated_at', 'revision_number']
property id: Any
property name: Any
obj_extra_fields: Sequence[str] = ['tenant_id']

List of additional object attributes to expose alongside fields.

Names listed here are typically implemented as Python properties and are included in obj_fields and exposed through iteration, but they are not versioned and not serialized during RPC:

class MyObject(VersionedObject):
    fields = {'foo': obj_fields.IntegerField()}
    obj_extra_fields = ['bar']

    @property
    def bar(self):
        return self.foo * 2
property project_id: Any
property revision_number: Any
property rule_associations: Any
property rule_count: Any
property shared: Any
property standard_attr_id
synthetic_fields = ['rule_associations']
property tenant_id
to_dict()
unique_keys = [['id']]
update()
property updated_at: Any
class neutron_fwaas.objects.firewall_v2.FirewallPolicyRuleAssociation(*args, **kwargs)

Bases: NeutronDbObject

VERSION: str = '1.0'

Object version field

Each service has its set of objects, each with a version attached. When a client attempts to call an object method, the server checks to see if the version of that object matches (in a compatible way) its object implementation. If so, cool, and if not, fail.

This version is allowed to have three parts, X.Y.Z, where the .Z element is reserved for stable branch backports. The .Z is ignored for the purposes of triggering a backport, which means anything changed under a .Z must be additive and non-destructive such that a node that knows about X.Y can consider X.Y.Z equivalent.

create()
db_model

alias of FirewallPolicyRuleAssociation

classmethod delete_policy_associations(context, firewall_policy_id)
extra_filter_names = {'not-tags', 'not-tags-any', 'tags', 'tags-any'}
fields: MutableMapping[str, Field[Any]] = {'firewall_policy_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'firewall_rule_id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'position': Integer(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True)}

The fields present in this object as key:field pairs.

For example:

fields = {
    'foo': obj_fields.IntegerField(),
    'bar': obj_fields.StringField(),
}
fields_no_update: list[str] = ['firewall_rule_id', 'firewall_policy_id']
property firewall_policy_id: Any
property firewall_rule_id: Any
foreign_keys = {'FirewallPolicy': {'firewall_policy_id': 'id'}, 'FirewallRuleV2': {'firewall_rule_id': 'id'}}
property position: Any
primary_keys = ['firewall_policy_id', 'firewall_rule_id']
unique_keys = [['firewall_rule_id', 'firewall_policy_id']]
update()
class neutron_fwaas.objects.firewall_v2.FirewallRuleActionEnumField(nullable: bool = False, default: T | type[UnspecifiedDefault] = <class 'oslo_versionedobjects.fields.UnspecifiedDefault'>, read_only: bool = False)

Bases: AutoTypedField

AUTO_TYPE: FieldType[T] = <oslo_versionedobjects.fields.Enum object>
class neutron_fwaas.objects.firewall_v2.FirewallRuleV2(*args, **kwargs)

Bases: NeutronDbObject

VERSION: str = '1.0'

Object version field

Each service has its set of objects, each with a version attached. When a client attempts to call an object method, the server checks to see if the version of that object matches (in a compatible way) its object implementation. If so, cool, and if not, fail.

This version is allowed to have three parts, X.Y.Z, where the .Z element is reserved for stable branch backports. The .Z is ignored for the purposes of triggering a backport, which means anything changed under a .Z must be additive and non-destructive such that a node that knows about X.Y can consider X.Y.Z equivalent.

property action: Any
create()
property created_at: Any
db_model

alias of FirewallRuleV2

property description: Any
property destination_ip_address: Any
property destination_port_range_max: Any
property destination_port_range_min: Any
property enabled: Any
extra_filter_names = {'not-tags', 'not-tags-any', 'tags', 'tags-any', 'tenant_id'}
fields: MutableMapping[str, Field[Any]] = {'action': Enum(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'created_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'description': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'destination_ip_address': IPNetwork(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'destination_port_range_max': PortRange(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'destination_port_range_min': PortRange(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'enabled': Boolean(default=True,nullable=False), 'id': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'ip_version': IPVersionEnum(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'name': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'project_id': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'protocol': IpProtocolEnum(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'revision_number': Integer(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'shared': Boolean(default=False,nullable=False), 'source_ip_address': IPNetwork(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'source_port_range_max': PortRange(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'source_port_range_min': PortRange(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'updated_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True)}

The fields present in this object as key:field pairs.

For example:

fields = {
    'foo': obj_fields.IntegerField(),
    'bar': obj_fields.StringField(),
}
fields_no_update: list[str] = ['id', 'tenant_id', 'project_id', 'created_at', 'updated_at', 'revision_number']
property id: Any
property ip_version: Any
classmethod modify_fields_from_db(db_obj)

Convert IP address strings from DB to AuthenticIPNetwork.

classmethod modify_fields_to_db(fields)

Convert IP address fields to strings before storing in DB.

property name: Any
obj_extra_fields: Sequence[str] = ['tenant_id']

List of additional object attributes to expose alongside fields.

Names listed here are typically implemented as Python properties and are included in obj_fields and exposed through iteration, but they are not versioned and not serialized during RPC:

class MyObject(VersionedObject):
    fields = {'foo': obj_fields.IntegerField()}
    obj_extra_fields = ['bar']

    @property
    def bar(self):
        return self.foo * 2
property project_id: Any
property protocol: Any
property revision_number: Any
property shared: Any
property source_ip_address: Any
property source_port_range_max: Any
property source_port_range_min: Any
property standard_attr_id
property tenant_id
to_dict()
unique_keys = [['id']]
update()
property updated_at: Any