class Xapixctl::PhoenixClient::OrganizationConnection
Attributes
org[R]
Public Class Methods
new(connection, org)
click to toggle source
# File lib/xapixctl/phoenix_client/organization_connection.rb, line 8 def initialize(connection, org) @connection = connection @client = connection.client @org = org end
Public Instance Methods
apply(resource_description, &block)
click to toggle source
# File lib/xapixctl/phoenix_client/organization_connection.rb, line 26 def apply(resource_description, &block) result_handler(block). prepare_data(->(data) { data['resource_ids'] }). run { @client[generic_resource_path].put(resource_description.to_json, content_type: :json) } end
delete(resource_type, resource_id, &block)
click to toggle source
# File lib/xapixctl/phoenix_client/organization_connection.rb, line 32 def delete(resource_type, resource_id, &block) result_handler(block). run { @client[resource_path(resource_type, resource_id)].delete } end
resource(resource_type, resource_id, format: :hash, &block)
click to toggle source
# File lib/xapixctl/phoenix_client/organization_connection.rb, line 14 def resource(resource_type, resource_id, format: :hash, &block) result_handler(block). formatter(FORMATTERS[format]). run { @client[resource_path(resource_type, resource_id)].get } end
resource_ids(resource_type, &block)
click to toggle source
# File lib/xapixctl/phoenix_client/organization_connection.rb, line 20 def resource_ids(resource_type, &block) result_handler(block). prepare_data(->(data) { data['resource_ids'] }). run { @client[resources_path(resource_type)].get } end
Private Instance Methods
generic_resource_path()
click to toggle source
# File lib/xapixctl/phoenix_client/organization_connection.rb, line 51 def generic_resource_path "orgs/#{@org}/resource" end
resource_path(type, id)
click to toggle source
# File lib/xapixctl/phoenix_client/organization_connection.rb, line 43 def resource_path(type, id) "/orgs/#{@org}/#{translate_type(type)}/#{id}" end
resources_path(type)
click to toggle source
# File lib/xapixctl/phoenix_client/organization_connection.rb, line 47 def resources_path(type) "/orgs/#{@org}/#{translate_type(type)}" end
result_handler(block)
click to toggle source
# File lib/xapixctl/phoenix_client/organization_connection.rb, line 39 def result_handler(block) @connection.result_handler(block) end
translate_type(resource_type)
click to toggle source
# File lib/xapixctl/phoenix_client/organization_connection.rb, line 55 def translate_type(resource_type) return 'ApiPublishingRole' if resource_type == 'ApiPublishing/Role' resource_type.sub(%r[/.*], '') # cut off everything after first slash end