jss-api 0.6.1 → 0.6.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (71) hide show
  1. data/lib/jss-api.rb +1 -191
  2. metadata +16 -146
  3. data/.yardopts +0 -7
  4. data/CHANGES.md +0 -88
  5. data/LICENSE.txt +0 -174
  6. data/README.md +0 -396
  7. data/THANKS.md +0 -6
  8. data/bin/cgrouper +0 -485
  9. data/bin/subnet-update +0 -400
  10. data/lib/jss-api/api_connection.rb +0 -400
  11. data/lib/jss-api/api_object.rb +0 -616
  12. data/lib/jss-api/api_object/advanced_search.rb +0 -389
  13. data/lib/jss-api/api_object/advanced_search/advanced_computer_search.rb +0 -95
  14. data/lib/jss-api/api_object/advanced_search/advanced_mobile_device_search.rb +0 -96
  15. data/lib/jss-api/api_object/advanced_search/advanced_user_search.rb +0 -95
  16. data/lib/jss-api/api_object/building.rb +0 -92
  17. data/lib/jss-api/api_object/category.rb +0 -147
  18. data/lib/jss-api/api_object/computer.rb +0 -852
  19. data/lib/jss-api/api_object/creatable.rb +0 -98
  20. data/lib/jss-api/api_object/criteriable.rb +0 -189
  21. data/lib/jss-api/api_object/criteriable/criteria.rb +0 -231
  22. data/lib/jss-api/api_object/criteriable/criterion.rb +0 -228
  23. data/lib/jss-api/api_object/department.rb +0 -93
  24. data/lib/jss-api/api_object/distribution_point.rb +0 -560
  25. data/lib/jss-api/api_object/extendable.rb +0 -221
  26. data/lib/jss-api/api_object/extension_attribute.rb +0 -457
  27. data/lib/jss-api/api_object/extension_attribute/computer_extension_attribute.rb +0 -362
  28. data/lib/jss-api/api_object/extension_attribute/mobile_device_extension_attribute.rb +0 -189
  29. data/lib/jss-api/api_object/extension_attribute/user_extension_attribute.rb +0 -117
  30. data/lib/jss-api/api_object/group.rb +0 -380
  31. data/lib/jss-api/api_object/group/computer_group.rb +0 -124
  32. data/lib/jss-api/api_object/group/mobile_device_group.rb +0 -139
  33. data/lib/jss-api/api_object/group/user_group.rb +0 -139
  34. data/lib/jss-api/api_object/ldap_server.rb +0 -535
  35. data/lib/jss-api/api_object/locatable.rb +0 -286
  36. data/lib/jss-api/api_object/matchable.rb +0 -97
  37. data/lib/jss-api/api_object/mobile_device.rb +0 -556
  38. data/lib/jss-api/api_object/netboot_server.rb +0 -148
  39. data/lib/jss-api/api_object/network_segment.rb +0 -414
  40. data/lib/jss-api/api_object/osx_configuration_profile.rb +0 -261
  41. data/lib/jss-api/api_object/package.rb +0 -812
  42. data/lib/jss-api/api_object/peripheral.rb +0 -335
  43. data/lib/jss-api/api_object/peripheral_type.rb +0 -295
  44. data/lib/jss-api/api_object/policy.rb +0 -898
  45. data/lib/jss-api/api_object/purchasable.rb +0 -316
  46. data/lib/jss-api/api_object/removable_macaddr.rb +0 -98
  47. data/lib/jss-api/api_object/scopable.rb +0 -136
  48. data/lib/jss-api/api_object/scopable/scope.rb +0 -621
  49. data/lib/jss-api/api_object/script.rb +0 -631
  50. data/lib/jss-api/api_object/self_servable.rb +0 -355
  51. data/lib/jss-api/api_object/site.rb +0 -93
  52. data/lib/jss-api/api_object/software_update_server.rb +0 -109
  53. data/lib/jss-api/api_object/updatable.rb +0 -117
  54. data/lib/jss-api/api_object/uploadable.rb +0 -138
  55. data/lib/jss-api/api_object/user.rb +0 -272
  56. data/lib/jss-api/client.rb +0 -504
  57. data/lib/jss-api/compatibility.rb +0 -66
  58. data/lib/jss-api/composer.rb +0 -171
  59. data/lib/jss-api/configuration.rb +0 -306
  60. data/lib/jss-api/db_connection.rb +0 -298
  61. data/lib/jss-api/exceptions.rb +0 -95
  62. data/lib/jss-api/ruby_extensions.rb +0 -35
  63. data/lib/jss-api/ruby_extensions/filetest.rb +0 -43
  64. data/lib/jss-api/ruby_extensions/hash.rb +0 -79
  65. data/lib/jss-api/ruby_extensions/ipaddr.rb +0 -91
  66. data/lib/jss-api/ruby_extensions/pathname.rb +0 -77
  67. data/lib/jss-api/ruby_extensions/string.rb +0 -59
  68. data/lib/jss-api/ruby_extensions/time.rb +0 -63
  69. data/lib/jss-api/server.rb +0 -108
  70. data/lib/jss-api/utility.rb +0 -416
  71. data/lib/jss-api/version.rb +0 -31
@@ -1,355 +0,0 @@
1
- ### Copyright 2016 Pixar
2
- ###
3
- ### Licensed under the Apache License, Version 2.0 (the "Apache License")
4
- ### with the following modification; you may not use this file except in
5
- ### compliance with the Apache License and the following modification to it:
6
- ### Section 6. Trademarks. is deleted and replaced with:
7
- ###
8
- ### 6. Trademarks. This License does not grant permission to use the trade
9
- ### names, trademarks, service marks, or product names of the Licensor
10
- ### and its affiliates, except as required to comply with Section 4(c) of
11
- ### the License and to reproduce the content of the NOTICE file.
12
- ###
13
- ### You may obtain a copy of the Apache License at
14
- ###
15
- ### http://www.apache.org/licenses/LICENSE-2.0
16
- ###
17
- ### Unless required by applicable law or agreed to in writing, software
18
- ### distributed under the Apache License with the above modification is
19
- ### distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
20
- ### KIND, either express or implied. See the Apache License for the specific
21
- ### language governing permissions and limitations under the Apache License.
22
- ###
23
- ###
24
-
25
- ###
26
- module JSS
27
-
28
- #####################################
29
- ### Module Variables
30
- #####################################
31
-
32
- #####################################
33
- ### Module Methods
34
- #####################################
35
-
36
- #####################################
37
- ### Sub-Modules
38
- #####################################
39
-
40
- ### A mix-in module for handling Self Service data for objects in the JSS.
41
- ###
42
- ### The JSS objects that have Self Service data return it in a :self_service subset,
43
- ### which all have similar data, a hash with at least these keys:
44
- ### - :self_service_description
45
- ### - :self_service_icon
46
- ###
47
- ### Most also have:
48
- ### - :feature_on_main_page
49
- ### - :self_service_categories
50
- ###
51
- ### iOS Profiles in self service have this key:
52
- ### - :security
53
- ###
54
- ### Additionally, items that apper in OS X SlfSvc have these keys:
55
- ### - :install_button_text
56
- ### - :force_users_to_view_description
57
- ###
58
- ### See the attribute definitions for details of these values and structures.
59
- ###
60
- ### Including this module in an {APIObject} subclass and calling {#parse_self_service} in the
61
- ### subclass's constructor will give it matching attributes with 'self_service_'
62
- ### appended if needed, e.g. {#self_service_feature_on_main_page}
63
- ###
64
- ### If the subclass is creatable or updatable, calling {#self_service_xml} returns
65
- ### a REXML element representing the Self Service subset, to be included with the
66
- ### #rest_xml output of the subclass.
67
- ###
68
- ### Classes including this module *must*:
69
- ###
70
- ### - Define the constant SELF_SERVICE_TARGET which contains either :osx or :ios
71
- ### - Define the constant SELF_SERVICE_PAYLOAD which contains one of :policy, :profile, or :app
72
- ### - Call {#parse_self_service} in the subclass's constructor after calling super
73
- ### - Include the result of {#self_service_xml} in their #rest_xml output
74
- ### - Define the method #in_self_service? which returns a Boolean indicating that the item is
75
- ### available in self service. Different API objects indicate this in different ways.
76
- ### - Define the method #user_removable? which returns Boolean indicating that the item (a profile)
77
- ### can be removed by the user in SSvc. OS X profiles store this in the :user_removable key of the
78
- ### :general subset as a boolean, whereas iOS profiles stor it in :security as one of 3 strings
79
- ###
80
- ###
81
- ### Notes:
82
- ### - Self service icons cannot be modified via this code. Use the Web UI.
83
- ### - There an API bug in handling categories, and all but the last one are ommitted. Until this is fixed, categories
84
- ### cannot be saved via this code since that would cause data-loss when more than one category is applied.
85
- ###
86
- module SelfServable
87
-
88
- #####################################
89
- ### Constants
90
- #####################################
91
-
92
- SELF_SERVABLE = true
93
-
94
- IOS_PROFILE_REMOVAL_OPTIONS = ["Always", "With Authorization", "Never"]
95
-
96
- #####################################
97
- ### Variables
98
- #####################################
99
-
100
-
101
- #####################################
102
- ### Attribtues
103
- #####################################
104
-
105
-
106
- ### @return [String] The verbage that appears in SelfSvc for this item
107
- attr_reader :self_service_description
108
-
109
- ### @return [Hash] The icon that appears in SelfSvc for this item
110
- ###
111
- ### The Hash contains these keys with info about the icon:
112
- ### - :filename => [String] The name of the image file uploaded to the JSS
113
- ### - :uri => [String] the URI for retriving the icon
114
- ### - :id => [Integer] the JSS id number for the icon (not all SSvc items have this)
115
- ### - :data => [String] the icon image encoded as Base64 (not all SSvc items have this)
116
- ###
117
- attr_reader :self_service_icon
118
-
119
- ### @return [Boolean] Should this item feature on the main page of SSvc?
120
- attr_reader :self_service_feature_on_main_page
121
-
122
- ### @return [Array<Hash>] The categories in which this item should appear in SSvc
123
- ###
124
- ### Each Hash has these keys about the category
125
- ### - :id => [Integer] the JSS id of the category
126
- ### - :name => [String] the name of the category
127
- ### - :display_in => [Boolean] should the item be displayed in this category in SSvc? (OSX SSvc only)
128
- ### - :feature_in => [Boolean] should the item be featured in this category in SSVC? (OSX SSvc only)
129
- ###
130
- ### NOTE: as of Casper 9.61 there's a bug in the JSON output from the API, and only the last
131
- ### category is returned, if more than one are set.
132
- ###
133
- attr_reader :self_service_categories
134
-
135
- ### @return [Hash] The security settings for iOS profiles in SSvc
136
- ###
137
- ### The keys are
138
- ### - :removal_disallowed => [String] one of the items in IOS_PROFILE_REMOVAL_OPTIONS
139
- ### - :password => [String] if :removal_disallowed is "With Authorization", this contains the passwd (in plaintext)
140
- ### needed to remove the profile.
141
- ###
142
- ### NOTE that the key should be called :removal_allowed, since 'Never' means it can't be removed.
143
- ###
144
- attr_reader :self_service_security
145
-
146
- ### @return [String] The text label on the install button in SSvc (OSX SSvc only)
147
- attr_reader :self_service_install_button_text
148
-
149
- ### @return [Boolean] Should an extra window appear before the user can install the item? (OSX SSvc only)
150
- attr_reader :self_service_force_users_to_view_description
151
-
152
-
153
- #####################################
154
- ### Mixed-in Instance Methods
155
- #####################################
156
-
157
- ###
158
- ### Call this during initialization of
159
- ### objects that have a self_service subset
160
- ### and the self_service attributes will be populated
161
- ### (as primary attributes) from @init_data
162
- ###
163
- ### @return [void]
164
- ###
165
- def parse_self_service
166
- @init_data[:self_service] ||= {}
167
- ss_data = @init_data[:self_service]
168
-
169
- @self_service_description = ss_data[:self_service_description]
170
- @self_service_icon = ss_data[:self_service_icon]
171
-
172
- @self_service_feature_on_main_page = ss_data[:feature_on_main_page]
173
-
174
- # TEMPORARY - until JAMF fixes the category data in JSON
175
- @self_service_categories = [
176
- ss_data[:self_service_categories][:category]
177
- ]
178
-
179
- # make this an empty hash if needed
180
- @self_service_security = ss_data[:security] || {}
181
-
182
- # if this is an osx profile, set @self_service_security[:removal_disallowed] to "Always" or "Never"
183
- # to indicate the boolean :user_removable
184
- if @init_data[:general].keys.include? :user_removable
185
- @self_service_security[:removal_disallowed] = @init_data[:general][:user_removable] ? "Always" : "Never"
186
- end
187
-
188
- @self_service_install_button_text = ss_data[:install_button_text]
189
- @self_service_force_users_to_view_description = ss_data[:force_users_to_view_description]
190
-
191
- end
192
-
193
-
194
- ###
195
- ###
196
- ### Setters
197
- ###
198
-
199
- ###
200
- ### @param new_val[String] the new discription
201
- ###
202
- ### @return [void]
203
- ###
204
- def self_service_description= (new_val)
205
- return nil if @self_service_description == new_val
206
- @self_service_description = new_val.strip!
207
- @need_to_update = true
208
- end
209
-
210
- ###
211
- ### @param new_val[String] the new install button text
212
- ###
213
- ### @return [void]
214
- ###
215
- def self_service_install_button_text= (new_val)
216
- return nil if @self_service_install_button_text == new_val
217
- raise JSS::InvalidDataError, "Only OS X Self Service Items can have custom button text" unless self.class::SELF_SERVICE_TARGET == :osx
218
- @self_service_install_button_text = new_val.strip
219
- @need_to_update = true
220
- end
221
-
222
- ###
223
- ### @param new_val[Boolean] should this appear on the main SelfSvc page?
224
- ###
225
- ### @return [void]
226
- ###
227
- def self_service_feature_on_main_page= (new_val)
228
- return nil if @self_service_feature_on_main_page == new_val
229
- raise JSS::InvalidDataError, "New value must be true or false" unless JSS::TRUE_FALSE.include? new_val
230
- @self_service_feature_on_main_page = new_val
231
- @need_to_update = true
232
- end
233
-
234
- ###
235
- ### @param new_val[Boolean] should this appear on the main SelfSvc page?
236
- ###
237
- ### @return [void]
238
- ###
239
- def self_service_force_users_to_view_description= (new_val)
240
- return nil if @self_service_force_users_to_view_description == new_val
241
- raise JSS::InvalidDataError, "Only OS X Self Service Items can force users to view description" unless self.class::SELF_SERVICE_TARGET == :osx
242
- raise JSS::InvalidDataError, "New value must be true or false" unless JSS::TRUE_FALSE.include? new_val
243
- @self_service_force_users_to_view_description = new_val
244
- @need_to_update = true
245
- end
246
-
247
- ###
248
- ### Add or change one of the categories for this item in SSvc.
249
- ###
250
- ### @param new_cat[String] the name of a category for this item in SelfSvc
251
- ###
252
- ### @param display_in[Boolean] should this item appear in the SelfSvc page for the new category?
253
- ###
254
- ### @param feature_in[Boolean] should this item be featured in the SelfSvc page for the new category?
255
- ###
256
- ### @return [void]
257
- ###
258
- def add_self_service_category (new_cat, display_in = true, feature_in = false)
259
- new_cat.strip!
260
- raise JSS::NoSuchItemError, "No category '#{new_cat}' in the JSS" unless JSS::Category.all_names(:refresh).include? new_cat
261
- raise JSS::InvalidDataError, "display_in must be true or false" unless JSS::TRUE_FALSE.include? display_in
262
- raise JSS::InvalidDataError, "feature_in must be true or false" unless JSS::TRUE_FALSE.include? feature_in
263
-
264
- new_data = {:name => new_cat, :display_in => display_in, :feature_in => feature_in }
265
-
266
- # see if this category is already among our categories.
267
- idx = @self_service_categories.index{|c| c[new_cat]}
268
-
269
- if idx
270
- @self_service_categories[idx] = new_data
271
- else
272
- @self_service_categories << new_data
273
- end
274
-
275
- @need_to_update = true
276
- end
277
-
278
- ###
279
- ### Remove a category from those for this item in SSvc
280
- ###
281
- ### @param cat[String] the name of the category to remove
282
- ###
283
- ### @return [void]
284
- ###
285
- def remove_self_service_category= (cat)
286
- return nil unless @self_service_categories.map{|c| c[:name]}.include? cat
287
- @self_service_categories.reject!{|c| c[:name]}
288
- @need_to_update = true
289
- end
290
-
291
- ###
292
- ### Set whether or when the user can remove a profile installed with SSvc
293
- ###
294
- ### @param new_val[String] one of the values in PROFILE_REMOVAL_OPTIONS, or true or false
295
- ###
296
- ### @return [void]
297
- ###
298
- def profile_can_be_removed (new_val)
299
-
300
- new_val = "Always" if new_val === true
301
- new_val = "Never" if new_val === false
302
-
303
- return nil if new_val == @self_service_security[:removal_disallowed]
304
- raise JSS::InvalidDataError, "" unless IOS_PROFILE_REMOVAL_OPTIONS.include? new_val
305
-
306
- @self_service_security[:removal_disallowed] = new_val
307
- end
308
-
309
-
310
- ###
311
- ### @api private
312
- ###
313
- ### Return a REXML <location> element to be
314
- ### included in the rest_xml of
315
- ### objects that have a Location subset
316
- ###
317
- ### @return [REXML::Element]
318
- ###
319
- def self_service_xml
320
-
321
- ssvc = REXML::Element.new('self_service')
322
-
323
- return ssvc unless self.in_self_service?
324
-
325
- ssvc.add_element('self_service_description').text = @self_service_description
326
- ssvc.add_element('feature_on_main_page').text = @self_service_feature_on_main_page
327
-
328
- ### TEMPORARY - re-enable this when the category bug is fixed.
329
-
330
- # cats = ssvc.add_element('self_service_categories')
331
- # @self_service_categories.each do |cat|
332
- # catelem = cats.add_element('category')
333
- # catelem.add_element('name').text = cat[:name]
334
- # catelem.add_element('display_in').text = cat[:display_in] if cat.keys.include? :display_in
335
- # catelem.add_element('feature_in').text = cat[:feature_in] if cat.keys.include? :feature_in
336
- # end
337
-
338
- unless @self_service_security.empty?
339
- sec = ssvc.add_element('security')
340
- sec.add_element('removal_disallowed').text = @self_service_security[:removal_disallowed] if @self_service_security[:removal_disallowed]
341
- sec.add_element('password').text = @self_service_security[:password] if @self_service_security[:password]
342
- end
343
-
344
- ssvc.add_element('install_button_text').text = @self_service_install_button_text if @self_service_install_button_text
345
- ssvc.add_element('force_users_to_view_description').text = @self_service_force_users_to_view_description unless @self_service_force_users_to_view_description.nil?
346
-
347
- return ssvc
348
- end
349
-
350
- ### aliases
351
- alias change_self_service_category add_self_service_category
352
-
353
- end # module SelfServable
354
-
355
- end # module JSS
@@ -1,93 +0,0 @@
1
- ### Copyright 2016 Pixar
2
- ###
3
- ### Licensed under the Apache License, Version 2.0 (the "Apache License")
4
- ### with the following modification; you may not use this file except in
5
- ### compliance with the Apache License and the following modification to it:
6
- ### Section 6. Trademarks. is deleted and replaced with:
7
- ###
8
- ### 6. Trademarks. This License does not grant permission to use the trade
9
- ### names, trademarks, service marks, or product names of the Licensor
10
- ### and its affiliates, except as required to comply with Section 4(c) of
11
- ### the License and to reproduce the content of the NOTICE file.
12
- ###
13
- ### You may obtain a copy of the Apache License at
14
- ###
15
- ### http://www.apache.org/licenses/LICENSE-2.0
16
- ###
17
- ### Unless required by applicable law or agreed to in writing, software
18
- ### distributed under the Apache License with the above modification is
19
- ### distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
20
- ### KIND, either express or implied. See the Apache License for the specific
21
- ### language governing permissions and limitations under the Apache License.
22
- ###
23
- ###
24
-
25
- ###
26
- module JSS
27
-
28
- #####################################
29
- ### Module Variables
30
- #####################################
31
-
32
- #####################################
33
- ### Module Methods
34
- #####################################
35
-
36
-
37
- #####################################
38
- ### Classes
39
- #####################################
40
-
41
- ###
42
- ### A Site in the JSS.
43
- ###
44
- ### These are simple, in that they only have an ID and a name.
45
- ###
46
- ### @see JSS::APIObject
47
- ###
48
- class Site < JSS::APIObject
49
-
50
- #####################################
51
- ### Mix-Ins
52
- #####################################
53
- include JSS::Creatable
54
- include JSS::Updatable
55
-
56
- #####################################
57
- ### Class Methods
58
- #####################################
59
-
60
- #####################################
61
- ### Class Constants
62
- #####################################
63
-
64
- ### The base for REST resources of this class
65
- RSRC_BASE = "sites"
66
-
67
- ### the hash key used for the JSON list output of all objects in the JSS
68
- RSRC_LIST_KEY = :sites
69
-
70
- ### The hash key used for the JSON object output.
71
- ### It's also used in various error messages
72
- RSRC_OBJECT_KEY = :site
73
-
74
- ### these keys, as well as :id and :name, are present in valid API JSON data for this class
75
- VALID_DATA_KEYS = []
76
-
77
- #####################################
78
- ### Attributes
79
- #####################################
80
-
81
- #####################################
82
- ### Constructor
83
- #####################################
84
-
85
-
86
- #####################################
87
- ### Public Instance Methods
88
- #####################################
89
-
90
-
91
- end # class site
92
-
93
- end # module
@@ -1,109 +0,0 @@
1
- ### Copyright 2016 Pixar
2
- ###
3
- ### Licensed under the Apache License, Version 2.0 (the "Apache License")
4
- ### with the following modification; you may not use this file except in
5
- ### compliance with the Apache License and the following modification to it:
6
- ### Section 6. Trademarks. is deleted and replaced with:
7
- ###
8
- ### 6. Trademarks. This License does not grant permission to use the trade
9
- ### names, trademarks, service marks, or product names of the Licensor
10
- ### and its affiliates, except as required to comply with Section 4(c) of
11
- ### the License and to reproduce the content of the NOTICE file.
12
- ###
13
- ### You may obtain a copy of the Apache License at
14
- ###
15
- ### http://www.apache.org/licenses/LICENSE-2.0
16
- ###
17
- ### Unless required by applicable law or agreed to in writing, software
18
- ### distributed under the Apache License with the above modification is
19
- ### distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
20
- ### KIND, either express or implied. See the Apache License for the specific
21
- ### language governing permissions and limitations under the Apache License.
22
- ###
23
- ###
24
-
25
- ###
26
- module JSS
27
-
28
- #####################################
29
- ### Module Variables
30
- #####################################
31
-
32
- #####################################
33
- ### Module Methods
34
- #####################################
35
-
36
- #####################################
37
- ### Classes
38
- #####################################
39
-
40
- ###
41
- ### A Software Update Server in the JSS
42
- ###
43
- ### Only minimally implemented, for access to the APIObject list methods
44
- ###
45
- ### @see JSS::APIObject
46
- ###
47
- class SoftwareUpdateServer < JSS::APIObject
48
-
49
- #####################################
50
- ### Mix-Ins
51
- #####################################
52
-
53
- #####################################
54
- ### Class Methods
55
- #####################################
56
-
57
- #####################################
58
- ### Class Constants
59
- #####################################
60
-
61
- ### The base for REST resources of this class
62
- RSRC_BASE = "softwareupdateservers"
63
-
64
- ### the hash key used for the JSON list output of all objects in the JSS
65
- RSRC_LIST_KEY = :software_update_servers
66
-
67
- ### The hash key used for the JSON object output.
68
- ### It's also used in various error messages
69
- RSRC_OBJECT_KEY = :software_update_server
70
-
71
- ### these keys, as well as :id and :name, are present in valid API JSON data for this class
72
- VALID_DATA_KEYS = [:set_system_wide, :port]
73
-
74
- #####################################
75
- ### Attributes
76
- #####################################
77
-
78
- ### @return [String]
79
- attr_reader :ip_address
80
-
81
- ### @return [Integer]
82
- attr_reader :port
83
-
84
- ### @return [Boolean]
85
- attr_reader :set_system_wide
86
-
87
-
88
- #####################################
89
- ### Constructor
90
- #####################################
91
-
92
- ###
93
- ### @see SS::APIObject#initialize
94
- ###
95
- def initialize (args = {})
96
- super
97
- @ip_address = @init_data[:ip_address]
98
- @port = @init_data[:port]
99
- @set_system_wide = @init_data[:set_system_wide]
100
- end
101
-
102
- #####################################
103
- ### Public Instance Methods
104
- #####################################
105
-
106
-
107
- end # class NetbootServer
108
-
109
- end # module