Class: PrintosClient
- Inherits:
-
Object
- Object
- PrintosClient
- Defined in:
- lib/printos/printos_client.rb
Constant Summary collapse
- API_BASE =
'api/aaa/v3'- USER_PERMISSIONS =
%w(admin user hpAdmin).freeze
Class Method Summary collapse
Instance Method Summary collapse
- #admin_context ⇒ Object
- #admin_device_gbu_organizations(offset, limit, device_gbu_filter, device_type_filter) ⇒ Object
- #admin_organization(org_id) ⇒ Object
- #admin_organizations(offset, limit, name_filter, gbu_filter) ⇒ Object
- #admin_printer(resource_id) ⇒ Object
- #admin_site(org_id, resource_id) ⇒ Object
- #authorization ⇒ Object
- #create_site(payload) ⇒ Object
- #devices ⇒ Object
- #logged_in? ⇒ Boolean
- #organization ⇒ Object
- #printer(resource_id) ⇒ Object
- #site(resource_id) ⇒ Object
- #sites ⇒ Object
- #update_organization(payload) ⇒ Object
- #update_site(resource_id, payload) ⇒ Object
- #user ⇒ Object
Class Method Details
.get_instance ⇒ Object
15 16 17 |
# File 'lib/printos/printos_client.rb', line 15 def self.get_instance ::RequestStore.store[:print_os_client] ||= PrintosClient.new(@token) end |
.set_instance(token) ⇒ Object
9 10 11 12 13 |
# File 'lib/printos/printos_client.rb', line 9 def self.set_instance(token) @token = token ::RequestStore.store[:printos_token] = token get_instance end |
Instance Method Details
#admin_context ⇒ Object
68 69 70 |
# File 'lib/printos/printos_client.rb', line 68 def admin_context Printos::AaaService.admin_context end |
#admin_device_gbu_organizations(offset, limit, device_gbu_filter, device_type_filter) ⇒ Object
72 73 74 |
# File 'lib/printos/printos_client.rb', line 72 def admin_device_gbu_organizations(offset, limit, device_gbu_filter, device_type_filter) Printos::AaaService.admin_device_gbu_organizations(offset, limit, device_gbu_filter, device_type_filter) end |
#admin_organization(org_id) ⇒ Object
76 77 78 |
# File 'lib/printos/printos_client.rb', line 76 def admin_organization(org_id) Printos::AaaService.admin_organization(org_id) end |
#admin_organizations(offset, limit, name_filter, gbu_filter) ⇒ Object
80 81 82 |
# File 'lib/printos/printos_client.rb', line 80 def admin_organizations(offset, limit, name_filter, gbu_filter) Printos::AaaService.admin_organizations(offset, limit, name_filter, gbu_filter) end |
#admin_printer(resource_id) ⇒ Object
84 85 86 |
# File 'lib/printos/printos_client.rb', line 84 def admin_printer(resource_id) @printer_resource[resource_id] ||= Printos::AaaService.admin_device(resource_id) end |
#admin_site(org_id, resource_id) ⇒ Object
88 89 90 |
# File 'lib/printos/printos_client.rb', line 88 def admin_site(org_id, resource_id) @site_resource[resource_id] ||= Printos::AaaService.admin_site(org_id, resource_id) end |
#authorization ⇒ Object
53 54 55 56 57 58 59 60 61 62 63 64 65 66 |
# File 'lib/printos/printos_client.rb', line 53 def body = { requestToken: @token, permissions: USER_PERMISSIONS, checkedObjectName: 'checkSuluPermissions' } ||= Printos::AaaService.(body, true) # Cache user @user = [:user] unless [:user].nil? end |
#create_site(payload) ⇒ Object
96 97 98 |
# File 'lib/printos/printos_client.rb', line 96 def create_site(payload) Printos::AaaService.create_site(payload) end |
#devices ⇒ Object
43 44 45 46 47 48 49 50 51 |
# File 'lib/printos/printos_client.rb', line 43 def devices org = organization site_id = org[:organizationId] @devices ||= Printos::AaaService.devices device_list = @devices[:devicesWithContext].first[:devices] device_list.select { |device| device[:site] && device[:site][:organizationId] == site_id } end |
#logged_in? ⇒ Boolean
19 20 21 |
# File 'lib/printos/printos_client.rb', line 19 def logged_in? @token.present? end |
#organization ⇒ Object
27 28 29 |
# File 'lib/printos/printos_client.rb', line 27 def organization @org ||= Printos::AaaService.organization end |
#printer(resource_id) ⇒ Object
39 40 41 |
# File 'lib/printos/printos_client.rb', line 39 def printer(resource_id) @printer_resource[resource_id] ||= Printos::AaaService.device(resource_id) end |
#site(resource_id) ⇒ Object
31 32 33 |
# File 'lib/printos/printos_client.rb', line 31 def site(resource_id) @site_resource[resource_id] ||= Printos::AaaService.site(resource_id) end |
#sites ⇒ Object
35 36 37 |
# File 'lib/printos/printos_client.rb', line 35 def sites @sites ||= Printos::AaaService.sites end |
#update_organization(payload) ⇒ Object
92 93 94 |
# File 'lib/printos/printos_client.rb', line 92 def update_organization(payload) Printos::AaaService.update_organization(payload) end |
#update_site(resource_id, payload) ⇒ Object
100 101 102 |
# File 'lib/printos/printos_client.rb', line 100 def update_site(resource_id, payload) Printos::AaaService.update_site(resource_id, payload) end |
#user ⇒ Object
23 24 25 |
# File 'lib/printos/printos_client.rb', line 23 def user @user ||= Printos::AaaService.user end |