Class: Inforouter::Folder
Overview
A Folder
defines an infoRouter folder.
Instance Attribute Summary collapse
-
#access_list ⇒ Object
Folder access list.
-
#creation_date ⇒ Object
Folder creation date.
-
#description ⇒ Object
Folder description.
-
#documents ⇒ Object
Folder documents.
-
#domain_id ⇒ Object
Folder domain ID.
-
#folders ⇒ Object
Folder folders.
-
#id ⇒ Object
Folder ID.
-
#name ⇒ Object
Folder name.
-
#owner_name ⇒ Object
Folder owner name.
-
#parent_id ⇒ Object
Folder parent ID.
-
#path ⇒ Object
Folder path.
-
#property_sets ⇒ Object
Folder property sets.
-
#rules ⇒ Object
Folder rules.
Class Method Summary collapse
-
.find(options = {}) ⇒ Object
Find by path.
Instance Method Summary collapse
- #add_property_sets ⇒ Boolean
- #create ⇒ Boolean
- #delete_property_set!(name) ⇒ Boolean
- #exists? ⇒ Boolean
- #update_access_list(options = {}) ⇒ Boolean
- #update_properties ⇒ Boolean
- #update_property_sets ⇒ Boolean
- #update_rules(options = {}) ⇒ Boolean
Methods inherited from Record
Constructor Details
This class inherits a constructor from Inforouter::Record
Instance Attribute Details
#access_list ⇒ Object
Folder access list.
21 22 23 |
# File 'lib/inforouter/folder.rb', line 21 def access_list @access_list end |
#creation_date ⇒ Object
Folder creation date.
15 16 17 |
# File 'lib/inforouter/folder.rb', line 15 def creation_date @creation_date end |
#description ⇒ Object
Folder description.
13 14 15 |
# File 'lib/inforouter/folder.rb', line 13 def description @description end |
#documents ⇒ Object
Folder documents. Array of Inforouter::Document
s.
29 30 31 |
# File 'lib/inforouter/folder.rb', line 29 def documents @documents end |
#domain_id ⇒ Object
Folder domain ID.
19 20 21 |
# File 'lib/inforouter/folder.rb', line 19 def domain_id @domain_id end |
#folders ⇒ Object
Folder folders. Array of Inforouter::Folder
s.
27 28 29 |
# File 'lib/inforouter/folder.rb', line 27 def folders @folders end |
#id ⇒ Object
Folder ID.
5 6 7 |
# File 'lib/inforouter/folder.rb', line 5 def id @id end |
#name ⇒ Object
Folder name.
9 10 11 |
# File 'lib/inforouter/folder.rb', line 9 def name @name end |
#owner_name ⇒ Object
Folder owner name.
17 18 19 |
# File 'lib/inforouter/folder.rb', line 17 def owner_name @owner_name end |
#parent_id ⇒ Object
Folder parent ID.
7 8 9 |
# File 'lib/inforouter/folder.rb', line 7 def parent_id @parent_id end |
#path ⇒ Object
Folder path.
11 12 13 |
# File 'lib/inforouter/folder.rb', line 11 def path @path end |
#property_sets ⇒ Object
Folder property sets. Array of Inforouter::PropertySet
s.
23 24 25 |
# File 'lib/inforouter/folder.rb', line 23 def property_sets @property_sets end |
#rules ⇒ Object
Folder rules.
25 26 27 |
# File 'lib/inforouter/folder.rb', line 25 def rules @rules end |
Class Method Details
.find(options = {}) ⇒ Object
Find by path.
32 33 34 35 36 |
# File 'lib/inforouter/folder.rb', line 32 def self.find( = {}) folder = Folder.new() response = Inforouter.client.request :get_folder, folder.send(:folder_params) Inforouter::Responses::Folder.parse response end |
Instance Method Details
#add_property_sets ⇒ Boolean
116 117 118 119 120 121 122 123 124 |
# File 'lib/inforouter/folder.rb', line 116 def add_property_sets request_params = { :path => path, 'xmlpset' => PropertySet.to_xml(property_sets) } response = Inforouter.client.request :add_property_set_row, request_params result = Inforouter::Responses::AddPropertySetRow.parse response result[:@success] == 'true' end |
#create ⇒ Boolean
75 76 77 78 79 |
# File 'lib/inforouter/folder.rb', line 75 def create response = Inforouter.client.request :create_folder, path_params result = Inforouter::Responses::CreateFolder.parse response result[:@success] == 'true' end |
#delete_property_set!(name) ⇒ Boolean
127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 |
# File 'lib/inforouter/folder.rb', line 127 def delete_property_set!(name) # Select property set by name. property_set = @property_sets.select { |p| p.name == name }.first return false unless property_set request_params = { :path => path, 'xmlpset' => property_set.delete_xml } response = Inforouter.client.request :delete_property_set_row, request_params result = Inforouter::Responses::DeletePropertySetRow.parse response if result[:@success] == 'true' @property_sets.reject! { |p| p.name == name } end result[:@success] == 'true' end |
#exists? ⇒ Boolean
82 83 84 85 86 |
# File 'lib/inforouter/folder.rb', line 82 def exists? response = Inforouter.client.request :folder_exists, path_params result = Inforouter::Responses::FolderExists.parse response result[:@success] == 'true' end |
#update_access_list(options = {}) ⇒ Boolean
89 90 91 92 93 94 95 96 97 98 99 |
# File 'lib/inforouter/folder.rb', line 89 def update_access_list( = {}) = { apply_to_tree: false }.merge() request_params = { :path => path, 'AccessListXML' => access_list.to_xml, :apply_to_tree => [:apply_to_tree] ? 1 : 0 } response = Inforouter.client.request :set_access_list, request_params result = Inforouter::Responses::SetAccessList.parse response result[:@success] == 'true' end |
#update_properties ⇒ Boolean
102 103 104 105 106 107 108 109 110 111 |
# File 'lib/inforouter/folder.rb', line 102 def update_properties request_params = { path: path, new_folder_name: name, new_description: description } response = Inforouter.client.request :update_folder_properties, request_params result = Inforouter::Responses::UpdateFolderProperties.parse response result[:@success] == 'true' end |
#update_property_sets ⇒ Boolean
144 145 146 147 148 149 150 151 152 |
# File 'lib/inforouter/folder.rb', line 144 def update_property_sets request_params = { :path => path, 'xmlpset' => PropertySet.to_xml(property_sets) } response = Inforouter.client.request :update_property_set_row, request_params result = Inforouter::Responses::UpdatePropertySetRow.parse response result[:@success] == 'true' end |
#update_rules(options = {}) ⇒ Boolean
157 158 159 160 161 162 163 164 165 166 167 |
# File 'lib/inforouter/folder.rb', line 157 def update_rules( = {}) = { apply_to_tree: false }.merge() request_params = { :path => path, 'xmlRules' => rules.to_hash, :apply_to_tree => [:apply_to_tree] ? 1 : 0 } response = Inforouter.client.request :set_folder_rules, request_params result = Inforouter::Responses::SetFolderRules.parse response result[:@success] == 'true' end |