ruby-jss 1.2.10 → 1.5.2

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of ruby-jss might be problematic. Click here for more details.

Files changed (119) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES.md +208 -1
  3. data/lib/jamf.rb +18 -16
  4. data/lib/jamf/api/base_classes/collection_resource.rb +613 -0
  5. data/lib/jamf/api/{abstract_classes → base_classes}/json_object.rb +110 -102
  6. data/lib/jamf/api/{abstract_classes → base_classes}/prestage.rb +56 -31
  7. data/lib/jamf/api/{abstract_classes → base_classes}/resource.rb +10 -6
  8. data/lib/jamf/api/{abstract_classes → base_classes}/singleton_resource.rb +4 -3
  9. data/lib/jamf/api/connection.rb +20 -12
  10. data/lib/jamf/api/connection/api_error.rb +8 -8
  11. data/lib/jamf/api/connection/token.rb +36 -15
  12. data/lib/jamf/api/json_objects/device_enrollment_device.rb +14 -7
  13. data/lib/jamf/api/json_objects/{location.rb → device_enrollment_device_sync_state.rb} +27 -41
  14. data/lib/jamf/api/json_objects/device_enrollment_sync_status.rb +1 -1
  15. data/lib/jamf/api/json_objects/{attachment.rb → locale.rb} +14 -23
  16. data/lib/jamf/api/json_objects/md_prestage_name.rb +1 -1
  17. data/lib/jamf/api/json_objects/md_prestage_names.rb +2 -2
  18. data/lib/jamf/api/json_objects/md_prestage_skip_setup_items.rb +50 -1
  19. data/lib/jamf/api/json_objects/prestage_assignment.rb +2 -2
  20. data/lib/jamf/api/json_objects/prestage_location.rb +3 -3
  21. data/lib/jamf/api/json_objects/prestage_purchasing_data.rb +7 -7
  22. data/lib/jamf/api/json_objects/prestage_scope.rb +1 -1
  23. data/lib/jamf/api/{resources/collection_resources → json_objects}/time_zone.rb +9 -23
  24. data/lib/jamf/api/mixins/{abstract.rb → base_class.rb} +34 -16
  25. data/lib/jamf/api/mixins/bulk_deletable.rb +27 -6
  26. data/lib/jamf/api/mixins/change_log.rb +201 -51
  27. data/lib/jamf/api/{resources/collection_resources/extension_attribute.rb → mixins/filterable.rb} +20 -14
  28. data/lib/jamf/api/mixins/pageable.rb +208 -0
  29. data/lib/jamf/api/{json_objects/installed_application.rb → mixins/sortable.rb} +33 -33
  30. data/lib/jamf/api/resources/collection_resources/building.rb +16 -9
  31. data/lib/jamf/api/resources/collection_resources/category.rb +5 -4
  32. data/lib/jamf/api/resources/collection_resources/computer_prestage.rb +12 -5
  33. data/lib/jamf/api/resources/collection_resources/department.rb +1 -3
  34. data/lib/jamf/api/resources/collection_resources/device_enrollment.rb +13 -13
  35. data/lib/jamf/api/resources/collection_resources/inventory_preload_record.rb +11 -3
  36. data/lib/jamf/api/resources/collection_resources/mobile_device_prestage.rb +25 -23
  37. data/lib/jamf/api/resources/collection_resources/script.rb +61 -25
  38. data/lib/jamf/api/resources/singleton_resources/app_store_country_codes.rb +15 -5
  39. data/lib/jamf/api/resources/singleton_resources/locales.rb +155 -0
  40. data/lib/jamf/api/resources/singleton_resources/time_zones.rb +213 -0
  41. data/lib/jamf/configuration.rb +7 -9
  42. data/lib/jamf/ruby_extensions.rb +1 -0
  43. data/lib/jamf/ruby_extensions/array.rb +1 -1
  44. data/lib/jamf/ruby_extensions/array/utils.rb +3 -3
  45. data/lib/jamf/{api/resources/collection_resources/computer.rb → ruby_extensions/dig.rb} +22 -19
  46. data/lib/jamf/validate.rb +63 -24
  47. data/lib/jamf/version.rb +1 -1
  48. data/lib/jss.rb +4 -1
  49. data/lib/jss/api_connection.rb +111 -433
  50. data/lib/jss/api_object.rb +16 -13
  51. data/lib/jss/api_object/advanced_search.rb +27 -26
  52. data/lib/jss/api_object/app_store_country_codes.rb +298 -0
  53. data/lib/jss/api_object/categorizable.rb +1 -1
  54. data/lib/jss/api_object/computer.rb +13 -0
  55. data/lib/jss/api_object/configuration_profile.rb +60 -4
  56. data/lib/jss/api_object/directory_binding.rb +273 -0
  57. data/lib/jss/api_object/directory_binding_type.rb +96 -0
  58. data/lib/jss/api_object/directory_binding_type/active_directory.rb +539 -0
  59. data/lib/jss/api_object/directory_binding_type/admitmac.rb +594 -0
  60. data/lib/jss/api_object/directory_binding_type/centrify.rb +226 -0
  61. data/lib/jss/api_object/directory_binding_type/open_directory.rb +178 -0
  62. data/lib/jss/api_object/directory_binding_type/powerbroker_identity_services.rb +73 -0
  63. data/lib/jss/api_object/disk_encryption_configurations.rb +114 -0
  64. data/lib/jss/api_object/distribution_point.rb +97 -37
  65. data/lib/jss/api_object/dock_item.rb +143 -0
  66. data/lib/jss/api_object/ebook.rb +1 -2
  67. data/lib/jss/api_object/extendable.rb +1 -1
  68. data/lib/jss/api_object/extension_attribute.rb +4 -3
  69. data/lib/jss/api_object/group.rb +33 -2
  70. data/lib/jss/api_object/mac_application.rb +107 -8
  71. data/lib/jss/api_object/mobile_device_application.rb +12 -0
  72. data/lib/jss/api_object/network_segment.rb +195 -70
  73. data/lib/jss/api_object/package.rb +105 -40
  74. data/lib/jss/api_object/patch_source.rb +10 -9
  75. data/lib/jss/api_object/policy.rb +596 -32
  76. data/lib/jss/api_object/printer.rb +446 -0
  77. data/lib/jss/api_object/scopable.rb +10 -15
  78. data/lib/jss/api_object/scopable/scope.rb +371 -55
  79. data/lib/jss/api_object/self_servable.rb +17 -9
  80. data/lib/jss/api_object/uploadable.rb +1 -1
  81. data/lib/jss/api_object/user.rb +42 -1
  82. data/lib/jss/api_object/vpp_account.rb +209 -0
  83. data/lib/jss/api_object/vppable.rb +169 -13
  84. data/lib/jss/composer.rb +1 -1
  85. data/lib/jss/exceptions.rb +3 -0
  86. data/lib/jss/server.rb +15 -0
  87. data/lib/jss/utility.rb +143 -52
  88. data/lib/jss/validate.rb +53 -10
  89. data/lib/jss/version.rb +1 -1
  90. metadata +56 -61
  91. data/lib/jamf/api/abstract_classes/advanced_search.rb +0 -86
  92. data/lib/jamf/api/abstract_classes/collection_resource.rb +0 -433
  93. data/lib/jamf/api/abstract_classes/generic_reference.rb +0 -145
  94. data/lib/jamf/api/abstract_classes/prestage_skip_setup_items.rb +0 -126
  95. data/lib/jamf/api/json_objects/account_prefs.rb +0 -79
  96. data/lib/jamf/api/json_objects/android_details.rb +0 -139
  97. data/lib/jamf/api/json_objects/appletv_details.rb +0 -110
  98. data/lib/jamf/api/json_objects/cellular_network.rb +0 -151
  99. data/lib/jamf/api/json_objects/computer_prestage_skip_setup_items.rb +0 -67
  100. data/lib/jamf/api/json_objects/criterion.rb +0 -152
  101. data/lib/jamf/api/json_objects/extension_attribute_value.rb +0 -128
  102. data/lib/jamf/api/json_objects/installed_certificate.rb +0 -53
  103. data/lib/jamf/api/json_objects/installed_configuration_profile.rb +0 -67
  104. data/lib/jamf/api/json_objects/installed_ebook.rb +0 -58
  105. data/lib/jamf/api/json_objects/installed_provisioning_profile.rb +0 -59
  106. data/lib/jamf/api/json_objects/ios_details.rb +0 -244
  107. data/lib/jamf/api/json_objects/mobile_device_details.rb +0 -219
  108. data/lib/jamf/api/json_objects/mobile_device_security.rb +0 -101
  109. data/lib/jamf/api/json_objects/purchasing_data.rb +0 -125
  110. data/lib/jamf/api/mixins/locatable.rb +0 -124
  111. data/lib/jamf/api/mixins/referable.rb +0 -92
  112. data/lib/jamf/api/resources/collection_resources/account.rb +0 -163
  113. data/lib/jamf/api/resources/collection_resources/advanced_mobile_device_search.rb +0 -52
  114. data/lib/jamf/api/resources/collection_resources/advanced_user_search.rb +0 -52
  115. data/lib/jamf/api/resources/collection_resources/mobile_device.rb +0 -315
  116. data/lib/jamf/api/resources/collection_resources/site.rb +0 -77
  117. data/lib/jamf/api/resources/singleton_resources/authorization.rb +0 -88
  118. data/lib/jamf/api/resources/singleton_resources/client_checkin_settings.rb +0 -139
  119. data/lib/jamf/api/resources/singleton_resources/reenrollment_settings.rb +0 -95
@@ -0,0 +1,226 @@
1
+ ### Copyright 2019 Rixar
2
+
3
+ ###
4
+ ### Licensed under the Apache License, Version 2.0 (the "Apache License")
5
+ ### with the following modification; you may not use this file except in
6
+ ### compliance with the Apache License and the following modification to it:
7
+ ### Section 6. Trademarks. is deleted and replaced with:
8
+ ###
9
+ ### 6. Trademarks. This License does not grant permission to use the trade
10
+ ### names, trademarks, service marks, or product names of the Licensor
11
+ ### and its affiliates, except as required to comply with Section 4(c) of
12
+ ### the License and to reproduce the content of the NOTICE file.
13
+ ###
14
+ ### You may obtain a copy of the Apache License at
15
+ ###
16
+ ### http://www.apache.org/licenses/LICENSE-2.0
17
+ ###
18
+ ### Unless required by applicable law or agreed to in writing, software
19
+ ### distributed under the Apache License with the above modification is
20
+ ### distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21
+ ### KIND, either express or implied. See the Apache License for the specific
22
+ ### language governing permissions and limitations under the Apache License.
23
+ ###
24
+ ###
25
+
26
+ module JSS
27
+
28
+ # Module for containing the different types of DirectoryBindings stored within the JSS
29
+
30
+ module DirectoryBindingType
31
+
32
+ # Module Variables
33
+ #####################################
34
+
35
+ # Module Methods
36
+ #####################################
37
+
38
+ # Classes
39
+ #####################################
40
+
41
+ # Class for the specific ADmitMac DirectoryBinding type stored within the JSS
42
+ #
43
+ # @author Tyler Morgan
44
+ #
45
+ # Attributes
46
+ # @!attribute [rw] workstation_mode
47
+ # @!attribute [rw] overwrite_existing
48
+ # @!attribute [rw] update_PAM
49
+ # @!attribute [rw] zone
50
+ # @!attribute [rw] preferred_domain_server
51
+ class Centrify < DirectoryBindingType
52
+ # Mix-Ins
53
+ #####################################
54
+
55
+ # Class Methods
56
+ #####################################
57
+
58
+ # Class Constants
59
+ #####################################
60
+
61
+ # Attributes
62
+ #####################################
63
+ attr_reader :workstation_mode
64
+ attr_reader :overwrite_existing
65
+ attr_reader :update_PAM
66
+ attr_reader :zone
67
+ attr_reader :preferred_domain_server
68
+
69
+ # Constructor
70
+ #####################################
71
+
72
+ # An initializer for the Centrify object.
73
+ #
74
+ # @author Tyler Morgan
75
+ # @see JSS::DirectoryBinding
76
+ # @see JSS::DirectoryBindingType
77
+ #
78
+ # @param [Hash] initialize data
79
+ def initialize(init_data)
80
+
81
+ # Return without processing anything since there is
82
+ # nothing to process.
83
+ return if init_data.nil?
84
+
85
+ # Process the provided information
86
+ @workstation_mode = init_data[:workstation_mode]
87
+ @overwrite_existing = init_data[:overwrite_existing]
88
+ @update_PAM = init_data[:update_PAM]
89
+ @zone = init_data[:zone]
90
+ @preferred_domain_server = init_data[:preferred_domain_server]
91
+ end
92
+
93
+
94
+ # Public Instance Methods
95
+ #####################################
96
+
97
+
98
+ # Sets the Centrify Mode to Workstation mode
99
+ #
100
+ # @author Tyler Morgan
101
+ #
102
+ # @param newvalue [Bool]
103
+ #
104
+ # @raise [JSS::InvalidDataError] If the new value doesn't match a Bool value
105
+ #
106
+ # @return [void]
107
+ def workstation_mode=(newvalue)
108
+
109
+ raise JSS::InvalidDataError, "workstation_mode must be true or false." unless newvalue.is_a?(TrueClass) || newvalue.is_a(FalseClass)
110
+
111
+ @workstation_mode = newvalue
112
+
113
+ self.container&.should_update
114
+ end
115
+
116
+
117
+ # Want to overwrite existing joined computer in the directory
118
+ #
119
+ # @author Tyler Morgan
120
+ #
121
+ # @param newvalue [Bool]
122
+ #
123
+ # @raise [JSS::InvalidDataError] If the new value doesn't match a Bool value
124
+ #
125
+ # @return [void]
126
+ def overwrite_existing=(newvalue)
127
+
128
+ raise JSS::InvalidDataError, "overwrite_existing must be true or false." unless newvalue.is_a?(TrueClass) || newvalue.is_a(FalseClass)
129
+
130
+ @overwrite_existing = newvalue
131
+
132
+ self.container&.should_update
133
+ end
134
+
135
+
136
+ # Update the PAM module and overwrite DirectoryService configuration
137
+ #
138
+ # @author Tyler Morgan
139
+ #
140
+ # @param newvalue [Bool]
141
+ #
142
+ # @raise [JSS::InvalidDataError] If the new value doesn't match a Bool value
143
+ #
144
+ # @return [void]
145
+ def update_PAM=(newvalue)
146
+
147
+ raise JSS::InvalidDataError, "update_PAM must be true or false." unless newvalue.is_a?(TrueClass) || newvalue.is_a(FalseClass)
148
+
149
+ @update_PAM = newvalue
150
+
151
+ self.container&.should_update
152
+ end
153
+
154
+
155
+ # The zone the computer is to be joined to
156
+ #
157
+ # @author Tyler Morgan
158
+ #
159
+ # @param newvalue [String] the new zone the computer is to be joined to
160
+ #
161
+ # @raise [JSS::InvalidDataError] If the new value is not a string.
162
+ #
163
+ # @return [void]
164
+ def zone=(newvalue)
165
+
166
+ new =
167
+ if newvalue.to_s.empty?
168
+ JSS::BLANK
169
+ else
170
+ # Data Check
171
+ raise JSS::InvalidDataError, "zone must be a string." unless newvalue.is_a? String
172
+ newvalue
173
+ end
174
+
175
+ @zone = new
176
+
177
+ self.container&.should_update
178
+ end
179
+
180
+
181
+ # The specific domain server that should be prioritized
182
+ #
183
+ # @author Tyler Morgan
184
+ #
185
+ # @param newvalue [String] The domain server that would be prioritized.
186
+ #
187
+ # @raise [JSS::InvalidDataError] If the new value is not a string.
188
+ #
189
+ # @return [void]
190
+ def preferred_domain_server=(newvalue)
191
+
192
+ new =
193
+ if newvalue.to_s.empty?
194
+ JSS::BLANK
195
+ else
196
+ # Data Check
197
+ raise JSS::InvalidDataError, "preferred_domain_server must be a string." unless newvalue.is_a? String
198
+ newvalue
199
+ end
200
+
201
+ @preferred_domain_server = new
202
+
203
+ self.container&.should_update
204
+ end
205
+
206
+
207
+ # Return a REXML Element containing the current state of the DirectoryBindingType
208
+ # object for adding into the XML of the container.
209
+ #
210
+ # @author Tyler Morgan
211
+ #
212
+ # @return [REXML::Element]
213
+ def type_setting_xml
214
+ type_setting = REXML::Element.new "centrify"
215
+ type_setting.add_element("workstation_mode").text = @workstation_mode
216
+ type_setting.add_element("overwrite_existing").text = @overwrite_existing
217
+ type_setting.add_element("update_PAM").text = @update_PAM
218
+ type_setting.add_element("zone").text = @zone
219
+ type_setting.add_element("preferred_domain_server").text = @preferred_domain_server
220
+
221
+ return type_setting
222
+ end
223
+
224
+ end
225
+ end
226
+ end
@@ -0,0 +1,178 @@
1
+ ### Copyright 2019 Rixar
2
+
3
+ ###
4
+ ### Licensed under the Apache License, Version 2.0 (the "Apache License")
5
+ ### with the following modification; you may not use this file except in
6
+ ### compliance with the Apache License and the following modification to it:
7
+ ### Section 6. Trademarks. is deleted and replaced with:
8
+ ###
9
+ ### 6. Trademarks. This License does not grant permission to use the trade
10
+ ### names, trademarks, service marks, or product names of the Licensor
11
+ ### and its affiliates, except as required to comply with Section 4(c) of
12
+ ### the License and to reproduce the content of the NOTICE file.
13
+ ###
14
+ ### You may obtain a copy of the Apache License at
15
+ ###
16
+ ### http://www.apache.org/licenses/LICENSE-2.0
17
+ ###
18
+ ### Unless required by applicable law or agreed to in writing, software
19
+ ### distributed under the Apache License with the above modification is
20
+ ### distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21
+ ### KIND, either express or implied. See the Apache License for the specific
22
+ ### language governing permissions and limitations under the Apache License.
23
+ ###
24
+ ###
25
+
26
+ module JSS
27
+
28
+ # Module for containing the different types of DirectoryBindings stored within the JSS
29
+
30
+ module DirectoryBindingType
31
+
32
+ # Module Variables
33
+ #####################################
34
+
35
+ # Module Methods
36
+ #####################################
37
+
38
+ # Classes
39
+ #####################################
40
+
41
+ # Class for the specific OpenDirectory DirectoryBinding type stored within the JSS
42
+ #
43
+ # @author Tyler Morgan
44
+ #
45
+ # Attributes
46
+ # @!attribute [rw] require_confirmation
47
+
48
+ class OpenDirectory < DirectoryBindingType
49
+ # Mix-Ins
50
+ #####################################
51
+
52
+ # Class Methods
53
+ #####################################
54
+
55
+ # Class Constants
56
+ #####################################
57
+
58
+ # Attributes
59
+ #####################################
60
+ attr_reader :encrypt_using_ssl
61
+ attr_reader :perform_secure_bind
62
+ attr_reader :use_for_authentication
63
+ attr_reader :use_for_contacts
64
+
65
+ # Constructor
66
+ #####################################
67
+ def initialize(init_data)
68
+
69
+ # Return without processing anything since there is
70
+ # nothing to process.
71
+ return if init_data.nil?
72
+
73
+ # Process the provided information
74
+ @encrypt_using_ssl = init_data[:encrypt_using_ssl]
75
+ @perform_secure_bind = init_data[:perform_secure_bind]
76
+ @use_for_authentication = init_data[:use_for_authentication]
77
+ @use_for_contacts = init_data[:use_for_contacts]
78
+ end
79
+
80
+
81
+
82
+ # Public Instance Methods
83
+ #####################################
84
+
85
+ # Encrypt the connection using SSL
86
+ #
87
+ # @author Tyler Morgan
88
+ #
89
+ # @param newvalue [Bool]
90
+ #
91
+ # @raise [JSS::InvalidDataError] If the new value doesn't match a Bool value
92
+ #
93
+ # @return [void]
94
+ def encrypt_using_ssl=(newvalue)
95
+
96
+ raise JSS::InvalidDataError, "encrypt_using_ssl must be true or false." unless newvalue.is_a?(TrueClass) || newvalue.is_a(FalseClass)
97
+
98
+ @encrypt_using_ssl = newvalue
99
+
100
+ self.container&.should_update
101
+ end
102
+
103
+
104
+ # Attempt to perform a secure bind to the domain server
105
+ #
106
+ # @author Tyler Morgan
107
+ #
108
+ # @param newvalue [Bool]
109
+ #
110
+ # @raise [JSS::InvalidDataError] If the new value doesn't match a Bool value
111
+ #
112
+ # @return [void]
113
+ def perform_secure_bind=(newvalue)
114
+
115
+ raise JSS::InvalidDataError, "perform_secure_bind must be true or false." unless newvalue.is_a?(TrueClass) || newvalue.is_a(FalseClass)
116
+
117
+ @perform_secure_bind = newvalue
118
+
119
+ self.container&.should_update
120
+ end
121
+
122
+
123
+ # Use this binding for authentication
124
+ #
125
+ # @author Tyler Morgan
126
+ #
127
+ # @param newvalue [Bool]
128
+ #
129
+ # @raise [JSS::InvalidDataError] If the new value doesn't match a Bool value
130
+ #
131
+ # @return [void]
132
+ def use_for_authentication=(newvalue)
133
+
134
+ raise JSS::InvalidDataError, "use_for_authentication must be true or false." unless newvalue.is_a?(TrueClass) || newvalue.is_a(FalseClass)
135
+
136
+ @use_for_authentication = newvalue
137
+
138
+ self.container&.should_update
139
+ end
140
+
141
+
142
+ # Use this binding for contact population
143
+ #
144
+ # @author Tyler Morgan
145
+ #
146
+ # @param newvalue [Bool]
147
+ #
148
+ # @raise [JSS::InvalidDataError] If the new value doesn't match a Bool value
149
+ #
150
+ # @return [void]
151
+ def use_for_contacts=(newvalue)
152
+
153
+ raise JSS::InvalidDataError, "use_for_contacts must be true or false." unless newvalue.is_a?(TrueClass) || newvalue.is_a(FalseClass)
154
+
155
+ @use_for_contacts = newvalue
156
+
157
+ self.container&.should_update
158
+ end
159
+
160
+
161
+ # Return a REXML Element containing the current state of the DirectoryBindingType
162
+ # object for adding into the XML of the container.
163
+ #
164
+ # @author Tyler Morgan
165
+ #
166
+ # @return [REXML::Element]
167
+ def type_setting_xml
168
+ type_setting = REXML::Element.new "admitmac"
169
+ type_setting.add_element("encrypt_using_ssl").text = @encrypt_using_ssl
170
+ type_setting.add_element("perform_secure_bind").text = @perform_secure_bind
171
+ type_setting.add_element("use_for_authentication").text = @use_for_authentication
172
+ type_setting.add_element("use_for_contacts").text = @use_for_contacts
173
+
174
+ return type_setting
175
+ end
176
+ end
177
+ end
178
+ end
@@ -0,0 +1,73 @@
1
+ ### Copyright 2019 Rixar
2
+
3
+ ###
4
+ ### Licensed under the Apache License, Version 2.0 (the "Apache License")
5
+ ### with the following modification; you may not use this file except in
6
+ ### compliance with the Apache License and the following modification to it:
7
+ ### Section 6. Trademarks. is deleted and replaced with:
8
+ ###
9
+ ### 6. Trademarks. This License does not grant permission to use the trade
10
+ ### names, trademarks, service marks, or product names of the Licensor
11
+ ### and its affiliates, except as required to comply with Section 4(c) of
12
+ ### the License and to reproduce the content of the NOTICE file.
13
+ ###
14
+ ### You may obtain a copy of the Apache License at
15
+ ###
16
+ ### http://www.apache.org/licenses/LICENSE-2.0
17
+ ###
18
+ ### Unless required by applicable law or agreed to in writing, software
19
+ ### distributed under the Apache License with the above modification is
20
+ ### distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21
+ ### KIND, either express or implied. See the Apache License for the specific
22
+ ### language governing permissions and limitations under the Apache License.
23
+ ###
24
+ ###
25
+
26
+ module JSS
27
+
28
+ # Module for containing the different types of DirectoryBindings stored within the JSS
29
+
30
+ module DirectoryBindingType
31
+
32
+ # Module Variables
33
+ #####################################
34
+
35
+ # Module Methods
36
+ #####################################
37
+
38
+ # Classes
39
+ #####################################
40
+
41
+ # Class for the specific PowerBroker DirectoryBinding type stored within the JSS
42
+ #
43
+ # @author Tyler Morgan
44
+ #
45
+ # Attributes
46
+ class PowerBroker < DirectoryBindingType
47
+ # Mix-Ins
48
+ #####################################
49
+
50
+
51
+ # Class Methods
52
+ #####################################
53
+
54
+
55
+ # Class Constants
56
+ #####################################
57
+
58
+
59
+ # Attributes
60
+ #####################################
61
+
62
+
63
+ # Constructor
64
+ #####################################
65
+ def initialize(init_data)
66
+ end
67
+
68
+
69
+ # Public Instance Methods
70
+ #####################################
71
+ end
72
+ end
73
+ end