ruby-jss 1.2.3 → 1.2.4a1

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 (103) hide show
  1. checksums.yaml +4 -4
  2. data/lib/jamf.rb +169 -0
  3. data/lib/jamf/api/abstract_classes/collection_resource.rb +422 -0
  4. data/lib/jamf/api/abstract_classes/generic_reference.rb +145 -0
  5. data/lib/jamf/api/abstract_classes/json_object.rb +1074 -0
  6. data/lib/jamf/api/abstract_classes/prestage.rb +219 -0
  7. data/lib/jamf/api/abstract_classes/prestage_skip_setup_items.rb +126 -0
  8. data/lib/jamf/api/abstract_classes/resource.rb +250 -0
  9. data/lib/jamf/api/abstract_classes/singleton_resource.rb +87 -0
  10. data/lib/jamf/api/attribute_classes/ip_address.rb +66 -0
  11. data/lib/jamf/api/attribute_classes/timestamp.rb +144 -0
  12. data/lib/jamf/api/connection.rb +734 -0
  13. data/lib/jamf/api/connection/api_error.rb +111 -0
  14. data/lib/jamf/api/connection/api_error_styleguide.rb +96 -0
  15. data/lib/jamf/api/connection/token.rb +220 -0
  16. data/lib/jamf/api/json_objects/account_prefs.rb +79 -0
  17. data/lib/jamf/api/json_objects/android_details.rb +139 -0
  18. data/lib/jamf/api/json_objects/appletv_details.rb +110 -0
  19. data/lib/jamf/api/json_objects/attachment.rb +68 -0
  20. data/lib/jamf/api/json_objects/cellular_network.rb +151 -0
  21. data/lib/jamf/api/json_objects/change_log_entry.rb +77 -0
  22. data/lib/jamf/api/json_objects/computer_prestage_skip_setup_items.rb +67 -0
  23. data/lib/jamf/api/json_objects/country.rb +51 -0
  24. data/lib/jamf/api/json_objects/extension_attribute_value.rb +128 -0
  25. data/lib/jamf/api/json_objects/installed_application.rb +59 -0
  26. data/lib/jamf/api/json_objects/installed_certificate.rb +53 -0
  27. data/lib/jamf/api/json_objects/installed_configuration_profile.rb +67 -0
  28. data/lib/jamf/api/json_objects/installed_ebook.rb +58 -0
  29. data/lib/jamf/api/json_objects/installed_provisioning_profile.rb +59 -0
  30. data/lib/jamf/api/json_objects/inventory_preload_extension_attribute.rb +52 -0
  31. data/lib/jamf/api/json_objects/ios_details.rb +244 -0
  32. data/lib/jamf/api/json_objects/location.rb +95 -0
  33. data/lib/jamf/api/json_objects/md_prestage_name.rb +57 -0
  34. data/lib/jamf/api/json_objects/md_prestage_names.rb +82 -0
  35. data/lib/jamf/api/json_objects/md_prestage_skip_setup_items.rb +165 -0
  36. data/lib/jamf/api/json_objects/mobile_device_details.rb +219 -0
  37. data/lib/jamf/api/json_objects/mobile_device_security.rb +101 -0
  38. data/lib/jamf/api/json_objects/prestage_assignment.rb +61 -0
  39. data/lib/jamf/api/json_objects/prestage_location.rb +104 -0
  40. data/lib/jamf/api/json_objects/prestage_purchasing_data.rb +132 -0
  41. data/lib/jamf/api/json_objects/prestage_scope.rb +54 -0
  42. data/lib/jamf/api/json_objects/prestage_sync_status.rb +63 -0
  43. data/lib/jamf/api/json_objects/purchasing_data.rb +125 -0
  44. data/lib/jamf/api/mixins/abstract.rb +58 -0
  45. data/lib/jamf/api/mixins/bulk_deletable.rb +39 -0
  46. data/lib/jamf/api/mixins/change_log.rb +136 -0
  47. data/lib/jamf/api/mixins/extendable.rb +75 -0
  48. data/lib/jamf/api/mixins/immutable.rb +39 -0
  49. data/lib/jamf/api/mixins/locatable.rb +124 -0
  50. data/lib/jamf/api/mixins/lockable.rb +48 -0
  51. data/lib/jamf/api/mixins/referable.rb +92 -0
  52. data/lib/jamf/api/mixins/searchable.rb +202 -0
  53. data/lib/jamf/api/mixins/uncreatable.rb +40 -0
  54. data/lib/jamf/api/mixins/undeletable.rb +40 -0
  55. data/lib/jamf/api/resources/collection_resources/account.rb +163 -0
  56. data/lib/jamf/api/resources/collection_resources/building.rb +114 -0
  57. data/lib/jamf/api/resources/collection_resources/category.rb +82 -0
  58. data/lib/jamf/api/resources/collection_resources/computer.rb +49 -0
  59. data/lib/jamf/api/resources/collection_resources/computer_prestage.rb +80 -0
  60. data/lib/jamf/api/resources/collection_resources/department.rb +79 -0
  61. data/lib/jamf/api/resources/collection_resources/extension_attribute.rb +45 -0
  62. data/lib/jamf/api/resources/collection_resources/inventory_preload_record.rb +274 -0
  63. data/lib/jamf/api/resources/collection_resources/md_prestage.rb +139 -0
  64. data/lib/jamf/api/resources/collection_resources/mobile_device.rb +315 -0
  65. data/lib/jamf/api/resources/collection_resources/script.rb +190 -0
  66. data/lib/jamf/api/resources/collection_resources/site.rb +77 -0
  67. data/lib/jamf/api/resources/singleton_resources/app_store_country_codes.rb +131 -0
  68. data/lib/jamf/api/resources/singleton_resources/authorization.rb +88 -0
  69. data/lib/jamf/api/resources/singleton_resources/client_checkin_settings.rb +139 -0
  70. data/lib/jamf/api/resources/singleton_resources/reenrollment_settings.rb +95 -0
  71. data/lib/jamf/client.rb +301 -0
  72. data/lib/jamf/client/jamf_binary.rb +132 -0
  73. data/lib/jamf/client/jamf_helper.rb +298 -0
  74. data/lib/jamf/client/management_action.rb +114 -0
  75. data/lib/jamf/compatibility.rb +88 -0
  76. data/lib/jamf/composer.rb +190 -0
  77. data/lib/jamf/configuration.rb +281 -0
  78. data/lib/jamf/exceptions.rb +107 -0
  79. data/lib/jamf/ruby_extensions.rb +36 -0
  80. data/lib/jamf/ruby_extensions/array.rb +35 -0
  81. data/lib/jamf/ruby_extensions/array/predicates.rb +46 -0
  82. data/lib/jamf/ruby_extensions/array/utils.rb +47 -0
  83. data/lib/jamf/ruby_extensions/filetest.rb +32 -0
  84. data/lib/jamf/ruby_extensions/filetest/predicates.rb +46 -0
  85. data/lib/jamf/ruby_extensions/hash.rb +33 -0
  86. data/lib/jamf/ruby_extensions/hash/backports.rb +92 -0
  87. data/lib/jamf/ruby_extensions/ipaddr.rb +37 -0
  88. data/lib/jamf/ruby_extensions/ipaddr/utils.rb +95 -0
  89. data/lib/jamf/ruby_extensions/object.rb +30 -0
  90. data/lib/jamf/ruby_extensions/object/predicates.rb +51 -0
  91. data/lib/jamf/ruby_extensions/pathname.rb +39 -0
  92. data/lib/jamf/ruby_extensions/pathname/predicates.rb +50 -0
  93. data/lib/jamf/ruby_extensions/pathname/utils.rb +75 -0
  94. data/lib/jamf/ruby_extensions/string.rb +35 -0
  95. data/lib/jamf/ruby_extensions/string/backports.rb +66 -0
  96. data/lib/jamf/ruby_extensions/string/conversions.rb +65 -0
  97. data/lib/jamf/ruby_extensions/string/predicates.rb +47 -0
  98. data/lib/jamf/utility.rb +423 -0
  99. data/lib/jamf/validate.rb +224 -0
  100. data/lib/jamf/version.rb +32 -0
  101. data/lib/jpapi.rb +26 -0
  102. data/lib/jss/version.rb +1 -1
  103. metadata +104 -4
@@ -0,0 +1,224 @@
1
+ # Copyright 2019 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
+ # The Module
26
+ module Jamf
27
+
28
+ # A collection of methods for validating values. Mostly for
29
+ # ensuring the validity of data being set as attributes of APIObject
30
+ # subclass instances.
31
+ #
32
+ # Some of these methods can take multiple input types, such as a String
33
+ # or an Array. All of them will either raise an exception
34
+ # if the value isn't valid, or will return a standardized form of the input
35
+ # (e.g. an Array, even if given a String)
36
+ #
37
+ module Validate
38
+
39
+ # The regular expression that matches a valid MAC address.
40
+ MAC_ADDR_RE = /^[a-f0-9]{2}(:[a-f0-9]{2}){5}$/i
41
+
42
+ # Validate the format and content of a MAC address
43
+ #
44
+ # @param val[String] The value to validate
45
+ #
46
+ # @param msg[String] A custom error message when the value is invalid
47
+ #
48
+ # @return [String] The valid value
49
+ #
50
+ def self.mac_address(val, msg = nil)
51
+ msg ||= "Not a valid MAC address: '#{val}'"
52
+ raise Jamf::InvalidDataError, msg unless val =~ MAC_ADDR_RE
53
+ val
54
+ end
55
+
56
+ # Validate the format and content of an IPv4 address
57
+ #
58
+ # @param val[String] The value to validate
59
+ #
60
+ # @param msg[String] A custom error message when the value is invalid
61
+ #
62
+ # @return [String] The valid value
63
+ #
64
+ def self.ip_address(val, msg = nil)
65
+ msg ||= "Not a valid IPv4 address: '#{val}'"
66
+ ok = true
67
+ parts = val.strip.split '.'
68
+ ok = false unless parts.size == 4
69
+ parts.each { |p| ok = false unless p.j_integer? && p.to_i < 256 && p.to_i >= 0 }
70
+ raise Jamf::InvalidDataError, msg unless ok
71
+ val
72
+ end
73
+
74
+ # Does a give JSONObject class have a given JSON attribute?
75
+ #
76
+ # @param klass [<JSONObject] A class descended from JSONObject
77
+ #
78
+ # @param attr_name [Symbol] The attribute to validate
79
+ #
80
+ # @return [Symbol] The valid attribute
81
+ #
82
+ def self.json_attribute_name(klass, attr_name)
83
+ raise "#{klass} is not a descendent of JSONObject" unless klass < Jamf::JSONObject
84
+
85
+ raise Jamf::NoSuchItemError, "No attribute #{attr_name} for class #{klass}" unless klass::OBJECT_MODEL.key? attrib
86
+ attr_name
87
+ end
88
+
89
+ # Validate that a value doesn't already exist for a given identifier of
90
+ # a given CollectionResource class
91
+ #
92
+ # e.g. when klass = Jamf::Computer, identifier = :name, and val = 'foo'
93
+ # will raise an error when a computer named 'foo' already exists
94
+ #
95
+ # Otherwise returns val.
96
+ #
97
+ # @param val[Object] The value to check for uniqueness
98
+ #
99
+ # @param klass[Jamf::CollectionResource] A descendent of Jamf::CollectionResource, e.g. Jamf::Computer
100
+ #
101
+ # @param identifier[Symbol] One of the values of klass.identifiers
102
+ #
103
+ # @param msg[String] A custom error message when the value is invalid
104
+ #
105
+ # @param cnx[Jamf::Connection] The api connection to use for validation
106
+ #
107
+ # @return [Object] the validated unique value
108
+ #
109
+ def self.unique_identifier(val, klass, identifier, msg = nil, cnx: Jamf.cnx)
110
+ msg ||= "A #{klass} already exists with #{identifier} '#{val}'"
111
+
112
+ raise Jamf::InvalidDataError, "No identifier '#{identfier}' for #{klass}" unless klass.identifiers.include? identifier
113
+
114
+ return val unless klass.send("all_#{identfier}s", refresh: true, cnx: cnx).include? val
115
+
116
+ raise Jamf::AlreadyExistsError, msg
117
+ end
118
+
119
+ # Confirm that the given value is a boolean value, accepting
120
+ # Strings and Symbols, returning real booleans as needed
121
+ #
122
+ # Accepted True values: true, 'true', :true, 'yes', :yes
123
+ #
124
+ # Accepted False values: false, 'false', :false, 'no', :no
125
+ #
126
+ # all Strings and Symbols are case insensitive
127
+ #
128
+ # @param val [Boolean,String,Symbol] The value to validate
129
+ #
130
+ # @param msg[String] A custom error message when the value is invalid
131
+ #
132
+ # @return [Boolean] the valid boolean
133
+ #
134
+ def self.boolean(val, msg = nil)
135
+ msg ||= 'Value must be boolean true or false'
136
+ return true if val.to_s =~ /^(true|yes)$/i
137
+ return false if val.to_s =~ /^(false|no)$/i
138
+
139
+ raise Jamf::InvalidDataError, msg
140
+ end
141
+
142
+ # Confirm that a value is an Integer or a String representation of an
143
+ # Integer. Return the integer, or raise an error
144
+ #
145
+ # @param val[Object] the value to validate
146
+ #
147
+ # @param msg[String] A custom error message when the value is invalid
148
+ #
149
+ # @return [Integer] the valid integer
150
+ #
151
+ def self.integer(val, msg = nil)
152
+ msg ||= 'Value must be an Integer'
153
+ val = val.to_i if val.is_a?(String) && val.j_integer?
154
+ raise Jamf::InvalidDataError, msg unless val.is_a? Integer
155
+ val
156
+ end
157
+
158
+ # Confirm that a value is a Float or a String representation of a Float.
159
+ # Return the Float, or raise an error
160
+ #
161
+ # @param val[Object] the value to validate
162
+ #
163
+ # @param msg[String] A custom error message when the value is invalid
164
+ #
165
+ # @return [Float] the valid float
166
+ #
167
+ def self.float(val, msg = nil)
168
+ msg ||= 'Value must be a Floating Point number'
169
+ val = val.to_f if val.is_a?(String) && val.j_float?
170
+ raise Jamf::InvalidDataError, msg unless val.is_a? Flot
171
+ val
172
+ end
173
+
174
+ # Confirm that a value is a string, symbol, or nil,
175
+ # all of which will be returned as a string
176
+ #
177
+ # @param val[Object] the value to validate
178
+ #
179
+ # @param msg[String] A custom error message when the value is invalid
180
+ #
181
+ # @return [String] the valid String
182
+ #
183
+ def self.string(val, msg = nil)
184
+ msg ||= 'Value must be a String'
185
+ return Jamf::BLANK if val.nil?
186
+ val = val.to_s if val.is_a? Symbol
187
+ raise Jamf::InvalidDataError, msg unless val.is_a? String
188
+ val
189
+ end
190
+
191
+ # validate that the given value is a non-empty string
192
+ # Symbols are accepted and returned as strings
193
+ #
194
+ # @param val [Object] the thing to validate
195
+ #
196
+ # @param msg[String] A custom error message when the value is invalid
197
+ #
198
+ # @return [String] the valid non-empty string
199
+ #
200
+ def self.non_empty_string(val, msg = nil)
201
+ msg ||= 'value must be a non-empty String'
202
+ val = val.to_s if val.is_a? Symbol
203
+ raise Jamf::InvalidDataError, msg unless val.is_a?(String) && !val.empty?
204
+ val
205
+ end
206
+
207
+ SCRIPT_SHEBANG = '#!'.freeze
208
+
209
+ # validate that the given value is a string that starts with #!
210
+ #
211
+ # @param val [Object] the thing to validate
212
+ #
213
+ # @param msg[String] A custom error message when the value is invalid
214
+ #
215
+ # @return [String] the validated string
216
+ #
217
+ def self.script_contents(val, msg = nil)
218
+ msg ||= "value must be a String starting with '#!'"
219
+ raise Jamf::InvalidDataError, msg unless val.is_a?(String) && val.start_with?(SCRIPT_SHEBANG)
220
+ val
221
+ end
222
+ end # module validate
223
+
224
+ end # module JSS
@@ -0,0 +1,32 @@
1
+ ### Copyright 2019 Pixar
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
+ ###
27
+ module Jamf
28
+
29
+ ### The version of the Jamf module
30
+ VERSION = '0.0.0a1'.freeze
31
+
32
+ end # module
@@ -0,0 +1,26 @@
1
+ # Copyright 2019 Pixar
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
+ require 'jamf'
@@ -27,6 +27,6 @@
27
27
  module JSS
28
28
 
29
29
  ### The version of ruby-jss
30
- VERSION = '1.2.3'.freeze
30
+ VERSION = '1.2.4a1'.freeze
31
31
 
32
32
  end # module
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby-jss
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.3
4
+ version: 1.2.4a1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Lasell
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2019-10-31 00:00:00.000000000 Z
12
+ date: 2019-11-19 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: plist
@@ -146,6 +146,106 @@ files:
146
146
  - bin/jamfHelperBackgrounder
147
147
  - bin/netseg-update
148
148
  - data/ruby-jss.conf.example
149
+ - lib/jamf.rb
150
+ - lib/jamf/api/abstract_classes/collection_resource.rb
151
+ - lib/jamf/api/abstract_classes/generic_reference.rb
152
+ - lib/jamf/api/abstract_classes/json_object.rb
153
+ - lib/jamf/api/abstract_classes/prestage.rb
154
+ - lib/jamf/api/abstract_classes/prestage_skip_setup_items.rb
155
+ - lib/jamf/api/abstract_classes/resource.rb
156
+ - lib/jamf/api/abstract_classes/singleton_resource.rb
157
+ - lib/jamf/api/attribute_classes/ip_address.rb
158
+ - lib/jamf/api/attribute_classes/timestamp.rb
159
+ - lib/jamf/api/connection.rb
160
+ - lib/jamf/api/connection/api_error.rb
161
+ - lib/jamf/api/connection/api_error_styleguide.rb
162
+ - lib/jamf/api/connection/token.rb
163
+ - lib/jamf/api/json_objects/account_prefs.rb
164
+ - lib/jamf/api/json_objects/android_details.rb
165
+ - lib/jamf/api/json_objects/appletv_details.rb
166
+ - lib/jamf/api/json_objects/attachment.rb
167
+ - lib/jamf/api/json_objects/cellular_network.rb
168
+ - lib/jamf/api/json_objects/change_log_entry.rb
169
+ - lib/jamf/api/json_objects/computer_prestage_skip_setup_items.rb
170
+ - lib/jamf/api/json_objects/country.rb
171
+ - lib/jamf/api/json_objects/extension_attribute_value.rb
172
+ - lib/jamf/api/json_objects/installed_application.rb
173
+ - lib/jamf/api/json_objects/installed_certificate.rb
174
+ - lib/jamf/api/json_objects/installed_configuration_profile.rb
175
+ - lib/jamf/api/json_objects/installed_ebook.rb
176
+ - lib/jamf/api/json_objects/installed_provisioning_profile.rb
177
+ - lib/jamf/api/json_objects/inventory_preload_extension_attribute.rb
178
+ - lib/jamf/api/json_objects/ios_details.rb
179
+ - lib/jamf/api/json_objects/location.rb
180
+ - lib/jamf/api/json_objects/md_prestage_name.rb
181
+ - lib/jamf/api/json_objects/md_prestage_names.rb
182
+ - lib/jamf/api/json_objects/md_prestage_skip_setup_items.rb
183
+ - lib/jamf/api/json_objects/mobile_device_details.rb
184
+ - lib/jamf/api/json_objects/mobile_device_security.rb
185
+ - lib/jamf/api/json_objects/prestage_assignment.rb
186
+ - lib/jamf/api/json_objects/prestage_location.rb
187
+ - lib/jamf/api/json_objects/prestage_purchasing_data.rb
188
+ - lib/jamf/api/json_objects/prestage_scope.rb
189
+ - lib/jamf/api/json_objects/prestage_sync_status.rb
190
+ - lib/jamf/api/json_objects/purchasing_data.rb
191
+ - lib/jamf/api/mixins/abstract.rb
192
+ - lib/jamf/api/mixins/bulk_deletable.rb
193
+ - lib/jamf/api/mixins/change_log.rb
194
+ - lib/jamf/api/mixins/extendable.rb
195
+ - lib/jamf/api/mixins/immutable.rb
196
+ - lib/jamf/api/mixins/locatable.rb
197
+ - lib/jamf/api/mixins/lockable.rb
198
+ - lib/jamf/api/mixins/referable.rb
199
+ - lib/jamf/api/mixins/searchable.rb
200
+ - lib/jamf/api/mixins/uncreatable.rb
201
+ - lib/jamf/api/mixins/undeletable.rb
202
+ - lib/jamf/api/resources/collection_resources/account.rb
203
+ - lib/jamf/api/resources/collection_resources/building.rb
204
+ - lib/jamf/api/resources/collection_resources/category.rb
205
+ - lib/jamf/api/resources/collection_resources/computer.rb
206
+ - lib/jamf/api/resources/collection_resources/computer_prestage.rb
207
+ - lib/jamf/api/resources/collection_resources/department.rb
208
+ - lib/jamf/api/resources/collection_resources/extension_attribute.rb
209
+ - lib/jamf/api/resources/collection_resources/inventory_preload_record.rb
210
+ - lib/jamf/api/resources/collection_resources/md_prestage.rb
211
+ - lib/jamf/api/resources/collection_resources/mobile_device.rb
212
+ - lib/jamf/api/resources/collection_resources/script.rb
213
+ - lib/jamf/api/resources/collection_resources/site.rb
214
+ - lib/jamf/api/resources/singleton_resources/app_store_country_codes.rb
215
+ - lib/jamf/api/resources/singleton_resources/authorization.rb
216
+ - lib/jamf/api/resources/singleton_resources/client_checkin_settings.rb
217
+ - lib/jamf/api/resources/singleton_resources/reenrollment_settings.rb
218
+ - lib/jamf/client.rb
219
+ - lib/jamf/client/jamf_binary.rb
220
+ - lib/jamf/client/jamf_helper.rb
221
+ - lib/jamf/client/management_action.rb
222
+ - lib/jamf/compatibility.rb
223
+ - lib/jamf/composer.rb
224
+ - lib/jamf/configuration.rb
225
+ - lib/jamf/exceptions.rb
226
+ - lib/jamf/ruby_extensions.rb
227
+ - lib/jamf/ruby_extensions/array.rb
228
+ - lib/jamf/ruby_extensions/array/predicates.rb
229
+ - lib/jamf/ruby_extensions/array/utils.rb
230
+ - lib/jamf/ruby_extensions/filetest.rb
231
+ - lib/jamf/ruby_extensions/filetest/predicates.rb
232
+ - lib/jamf/ruby_extensions/hash.rb
233
+ - lib/jamf/ruby_extensions/hash/backports.rb
234
+ - lib/jamf/ruby_extensions/ipaddr.rb
235
+ - lib/jamf/ruby_extensions/ipaddr/utils.rb
236
+ - lib/jamf/ruby_extensions/object.rb
237
+ - lib/jamf/ruby_extensions/object/predicates.rb
238
+ - lib/jamf/ruby_extensions/pathname.rb
239
+ - lib/jamf/ruby_extensions/pathname/predicates.rb
240
+ - lib/jamf/ruby_extensions/pathname/utils.rb
241
+ - lib/jamf/ruby_extensions/string.rb
242
+ - lib/jamf/ruby_extensions/string/backports.rb
243
+ - lib/jamf/ruby_extensions/string/conversions.rb
244
+ - lib/jamf/ruby_extensions/string/predicates.rb
245
+ - lib/jamf/utility.rb
246
+ - lib/jamf/validate.rb
247
+ - lib/jamf/version.rb
248
+ - lib/jpapi.rb
149
249
  - lib/jss-api.rb
150
250
  - lib/jss.rb
151
251
  - lib/jss/api_connection.rb
@@ -289,9 +389,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
289
389
  version: 2.0.0
290
390
  required_rubygems_version: !ruby/object:Gem::Requirement
291
391
  requirements:
292
- - - ">="
392
+ - - ">"
293
393
  - !ruby/object:Gem::Version
294
- version: '0'
394
+ version: 1.3.1
295
395
  requirements: []
296
396
  rubygems_version: 3.0.3
297
397
  signing_key: