Class: Legion::Data::Model::RbacRoleAssignment
- Inherits:
-
Sequel::Model
- Object
- Sequel::Model
- Legion::Data::Model::RbacRoleAssignment
- Defined in:
- lib/legion/data/models/rbac_role_assignment.rb
Constant Summary collapse
- VALID_PRINCIPAL_TYPES =
%w[worker human].freeze
Instance Method Summary collapse
Instance Method Details
#active? ⇒ Boolean
23 24 25 |
# File 'lib/legion/data/models/rbac_role_assignment.rb', line 23 def active? !expired? end |
#expired? ⇒ Boolean
17 18 19 20 21 |
# File 'lib/legion/data/models/rbac_role_assignment.rb', line 17 def expired? return false if expires_at.nil? expires_at < Time.now end |
#validate ⇒ Object
9 10 11 12 13 14 15 |
# File 'lib/legion/data/models/rbac_role_assignment.rb', line 9 def validate super errors.add(:principal_type, 'must be worker or human') unless VALID_PRINCIPAL_TYPES.include?(principal_type) errors.add(:principal_id, 'cannot be empty') if principal_id.nil? || principal_id.empty? errors.add(:role, 'cannot be empty') if role.nil? || role.empty? errors.add(:granted_by, 'cannot be empty') if granted_by.nil? || granted_by.empty? end |