'allow_post': False, 'allow_put': True, 'is_visible': True, 'enforce_policy': True, 'required_by_policy': True } } def make_dict(self, router): """ Convert a router model object to a dictionary. """ return {'tenant_id': router['tenant_id'], 'status': router['status']} _authzbase.register_quota('routerstatus', 'quota_routerstatus') class Routerstatus(object): """ """ def get_name(self): return "routerstatus" def get_alias(self): return "dhrouterstatus" def get_description(self): return "A router-status extension" def get_namespace(self):
return True qry = context.session.query(models_v2.AddressGroup) qry = qry.filter_by(tenant_id=tenant_id, id=addressgroup_id) try: qry.one() except exc.NoResultFound: msg = ("Tenant %(tenant_id)s does not have an address " "group with id %(group_id)s" % {'tenant_id': tenant_id, 'group_id': addressgroup_id}) raise q_exc.BadRequest(resource='filterrule', msg=msg) return True _authzbase.register_quota('filterrule', 'quota_filterrule') class Filterrule(object): """ """ def get_name(self): return "filterrule" def get_alias(self): return "dhfilterrule" def get_description(self): return "A filter rule extension" def get_namespace(self):
"allow_post": False, "allow_put": True, "is_visible": True, "enforce_policy": True, "required_by_policy": True, }, } def make_dict(self, router): """ Convert a router model object to a dictionary. """ return {"tenant_id": router["tenant_id"], "status": router["status"]} _authzbase.register_quota("routerstatus", "quota_routerstatus") class Routerstatus(object): """ """ def get_name(self): return "routerstatus" def get_alias(self): return "dhrouterstatus" def get_description(self): return "A router-status extension"
) def create(self, context, tenant_id, body): if body.get('port') == 0: # FIXME(dhellmann): This will apply if the user creates # any of their own aliases with a zero port. raise exceptions.PolicyNotAuthorized( action='creation of wildcard port aliases' ) return super(PortaliasResource, self).create(context, tenant_id, body ) _authzbase.register_quota('portalias', 'quota_portalias') class Portalias(object): """ """ def get_name(self): return "portalias" def get_alias(self): return "dhportalias" def get_description(self): return "A portalias extension" def get_namespace(self):
item['private_port'] = item['public_port'] context.session.add(item) return self.make_dict(item) def update(self, context, resource, resource_dict): with context.session.begin(subtransactions=True): resource.update(resource_dict) # FIXME(dhellmann): This variable is undefined # but I don't know what it should have been. if not resource['private_port']: resource['private_port'] = resource['public_port'] context.session.add(resource) return self.make_dict(resource) _authzbase.register_quota('portforward', 'quota_portforward') class Portforward(object): """ """ def get_name(self): return "portforward" def get_alias(self): return "dhportforward" def get_description(self): return "A port forwarding extension" def get_namespace(self):
) return super(AddressEntryResource, self).update( context, resource, resource_dict, ) def before_delete(self, resource): if resource.group.name == 'Any': raise q_exc.PolicyNotAuthorized( action='modification of system address groups' ) return super(AddressEntryResource, self).before_delete(resource) _authzbase.register_quota('addressentry', 'quota_addressentry') class Addressentry(object): """ """ def get_name(self): return "addressentry" def get_alias(self): return "dhaddressentry" def get_description(self): return "An addressentry extension" def get_namespace(self):
raise exceptions.PolicyNotAuthorized( action='modification of system address groups') return super(AddressGroupResource, self).update( context, resource, resource_dict, ) def before_delete(self, resource): if resource.name == 'Any': raise exceptions.PolicyNotAuthorized( action='modification of system address groups') return super(AddressGroupResource, self).before_delete(resource) _authzbase.register_quota('addressgroup', 'quota_addressgroup') class Addressgroup(object): """ """ def get_name(self): return "addressgroup" def get_alias(self): return "dhaddressgroup" def get_description(self): return "An addressgroup extension" def get_namespace(self):
action='modification of system address groups' ) return super(AddressGroupResource, self).update( context, resource, resource_dict, ) def before_delete(self, resource): if resource.name == 'Any': raise exceptions.PolicyNotAuthorized( action='modification of system address groups' ) return super(AddressGroupResource, self).before_delete(resource) _authzbase.register_quota('addressgroup', 'quota_addressgroup') class Addressgroup(object): """ """ def get_name(self): return "addressgroup" def get_alias(self): return "dhaddressgroup" def get_description(self): return "An addressgroup extension" def get_namespace(self):
qry = qry.filter_by(tenant_id=tenant_id, id=addressgroup_id) try: qry.one() except exc.NoResultFound: msg = ("Tenant %(tenant_id)s does not have an address " "group with id %(group_id)s" % { 'tenant_id': tenant_id, 'group_id': addressgroup_id }) raise q_exc.BadRequest(resource='filterrule', msg=msg) return True _authzbase.register_quota('filterrule', 'quota_filterrule') class Filterrule(object): """ """ def get_name(self): return "filterrule" def get_alias(self): return "dhfilterrule" def get_description(self): return "A filter rule extension" def get_namespace(self):