Module: ManageIQ::API::Common::RBAC::Utilities
- Included in:
- QuerySharedResource, ShareResource
- Defined in:
- lib/manageiq/api/common/rbac/utilities.rb
Instance Method Summary collapse
- #parse_ids_from_name(name) ⇒ Object
- #unique_name(resource_id, group_id) ⇒ Object
- #validate_groups ⇒ Object
Instance Method Details
#parse_ids_from_name(name) ⇒ Object
19 20 21 22 23 24 25 |
# File 'lib/manageiq/api/common/rbac/utilities.rb', line 19 def parse_ids_from_name(name) @regexp ||= Regexp.new("#{@app_name}-#{@resource_name}-(?<resource_id>.*)-group-(?<group_uuid>.*)") result = @regexp.match(name) if result [result[:resource_id], result[:group_uuid]] end end |
#unique_name(resource_id, group_id) ⇒ Object
15 16 17 |
# File 'lib/manageiq/api/common/rbac/utilities.rb', line 15 def unique_name(resource_id, group_id) "#{@app_name}-#{@resource_name}-#{resource_id}-group-#{group_id}" end |
#validate_groups ⇒ Object
6 7 8 9 10 11 12 13 |
# File 'lib/manageiq/api/common/rbac/utilities.rb', line 6 def validate_groups Service.call(RBACApiClient::GroupApi) do |api| uuids = SortedSet.new Service.paginate(api, :list_groups, {}).each { |group| uuids << group.uuid } missing = @group_uuids - uuids raise ManageIQ::API::Common::InvalidParameter, "The following group uuids are missing #{missing.to_a.join(",")}" unless missing.empty? end end |