Exemplo n.º 1
0
 def __init__(self, db_info):
     super(CapabilityOverride, self).__init__(db_info)
     # This *may* be better solved with a join in the SQLAlchemy model but
     # I was unable to get our query object to work properly for this.
     parent_capability = Capability.load(db_info.capability_id)
     if parent_capability:
         self.parent_name = parent_capability.name
         self.parent_description = parent_capability.description
     else:
         raise exception.CapabilityNotFound(
             _("Somehow we got a datastore version capability without a "
               "parent, that shouldn't happen. %s") % db_info.capability_id)
Exemplo n.º 2
0
    def load(cls, capability_id):
        """
        Generates a CapabilityOverride object from the capability_override id.

        :returns CapabilityOverride:
        """
        try:
            return cls(
                DBCapabilityOverrides.find_by(capability_id=capability_id))
        except exception.ModelNotFoundError:
            raise exception.CapabilityNotFound(
                _("Capability Override not found for "
                  "capability %s") % capability_id)
Exemplo n.º 3
0
    def load(cls, capability_id_or_name):
        """
        Generates a Capability object by looking up the capability first by
        ID then by name.

        :returns Capability:
        """
        try:
            return cls(DBCapabilities.find_by(id=capability_id_or_name))
        except exception.ModelNotFoundError:
            try:
                return cls(DBCapabilities.find_by(name=capability_id_or_name))
            except exception.ModelNotFoundError:
                raise exception.CapabilityNotFound(
                    capability=capability_id_or_name)