ruby-jss 0.7.0 → 0.8.1
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.
- checksums.yaml +4 -4
- data/CHANGES.md +29 -22
- data/README.md +66 -86
- data/bin/jamfHelperBackgrounder +148 -0
- data/bin/netseg-update +0 -1
- data/lib/jss.rb +20 -9
- data/lib/jss/api_connection.rb +369 -295
- data/lib/jss/api_object.rb +651 -418
- data/lib/jss/api_object/account.rb +69 -77
- data/lib/jss/api_object/advanced_search.rb +201 -236
- data/lib/jss/api_object/advanced_search/advanced_computer_search.rb +42 -42
- data/lib/jss/api_object/advanced_search/advanced_mobile_device_search.rb +33 -43
- data/lib/jss/api_object/advanced_search/advanced_user_search.rb +33 -43
- data/lib/jss/api_object/building.rb +39 -52
- data/lib/jss/api_object/categorizable.rb +221 -0
- data/lib/jss/api_object/category.rb +81 -89
- data/lib/jss/api_object/computer.rb +486 -525
- data/lib/jss/api_object/computer_invitation.rb +73 -86
- data/lib/jss/api_object/criteriable.rb +6 -7
- data/lib/jss/api_object/ebook.rb +21 -0
- data/lib/jss/api_object/extendable.rb +6 -8
- data/lib/jss/api_object/group.rb +0 -3
- data/lib/jss/api_object/locatable.rb +19 -20
- data/lib/jss/api_object/mac_application.rb +21 -0
- data/lib/jss/api_object/mobile_device.rb +30 -21
- data/lib/jss/api_object/mobile_device_application.rb +447 -0
- data/lib/jss/api_object/mobile_device_configuration_profile.rb +21 -0
- data/lib/jss/api_object/osx_configuration_profile.rb +0 -3
- data/lib/jss/api_object/package.rb +21 -34
- data/lib/jss/api_object/peripheral.rb +16 -18
- data/lib/jss/api_object/policy.rb +5 -83
- data/lib/jss/api_object/purchasable.rb +11 -13
- data/lib/jss/api_object/scopable.rb +11 -12
- data/lib/jss/api_object/script.rb +3 -17
- data/lib/jss/api_object/self_servable.rb +419 -205
- data/lib/jss/api_object/self_servable/icon.rb +179 -0
- data/lib/jss/api_object/updatable.rb +35 -34
- data/lib/jss/api_object/uploadable.rb +72 -70
- data/lib/jss/api_object/user.rb +6 -7
- data/lib/jss/api_object/vppable.rb +117 -0
- data/lib/jss/client.rb +264 -225
- data/lib/jss/db_connection.rb +7 -5
- data/lib/jss/exceptions.rb +50 -42
- data/lib/jss/ruby_extensions.rb +8 -7
- data/lib/jss/ruby_extensions/object.rb +19 -0
- data/lib/jss/utility.rb +82 -40
- data/lib/jss/version.rb +1 -1
- metadata +37 -68
- data/bin/jss-webhook-server +0 -3
- data/lib/jss/webhooks.rb +0 -53
- data/lib/jss/webhooks/README.md +0 -269
- data/lib/jss/webhooks/configuration.rb +0 -213
- data/lib/jss/webhooks/data/sample_handlers/RestAPIOperation-executable +0 -91
- data/lib/jss/webhooks/data/sample_handlers/RestAPIOperation.rb +0 -45
- data/lib/jss/webhooks/data/sample_jsons/ComputerAdded.json +0 -27
- data/lib/jss/webhooks/data/sample_jsons/ComputerCheckIn.json +0 -27
- data/lib/jss/webhooks/data/sample_jsons/ComputerInventoryCompleted.json +0 -27
- data/lib/jss/webhooks/data/sample_jsons/ComputerPolicyFinished.json +0 -27
- data/lib/jss/webhooks/data/sample_jsons/ComputerPushCapabilityChanged.json +0 -27
- data/lib/jss/webhooks/data/sample_jsons/JSSShutdown.json +0 -14
- data/lib/jss/webhooks/data/sample_jsons/JSSStartup.json +0 -14
- data/lib/jss/webhooks/data/sample_jsons/MobileDeviceCheckIn.json +0 -26
- data/lib/jss/webhooks/data/sample_jsons/MobileDeviceCommandCompleted.json +0 -26
- data/lib/jss/webhooks/data/sample_jsons/MobileDeviceEnrolled.json +0 -26
- data/lib/jss/webhooks/data/sample_jsons/MobileDevicePushSent.json +0 -26
- data/lib/jss/webhooks/data/sample_jsons/MobileDeviceUnEnrolled.json +0 -26
- data/lib/jss/webhooks/data/sample_jsons/PatchSoftwareTitleUpdated.json +0 -14
- data/lib/jss/webhooks/data/sample_jsons/PushSent.json +0 -11
- data/lib/jss/webhooks/data/sample_jsons/RestAPIOperation.json +0 -15
- data/lib/jss/webhooks/data/sample_jsons/SCEPChallenge.json +0 -10
- data/lib/jss/webhooks/data/sample_jsons/SmartGroupComputerMembershipChange.json +0 -13
- data/lib/jss/webhooks/data/sample_jsons/SmartGroupMobileDeviceMembershipChange.json +0 -13
- data/lib/jss/webhooks/event.rb +0 -139
- data/lib/jss/webhooks/event/computer_added.rb +0 -38
- data/lib/jss/webhooks/event/computer_check_in.rb +0 -38
- data/lib/jss/webhooks/event/computer_inventory_completed.rb +0 -38
- data/lib/jss/webhooks/event/computer_policy_finished.rb +0 -38
- data/lib/jss/webhooks/event/computer_push_capability_changed.rb +0 -38
- data/lib/jss/webhooks/event/handlers.rb +0 -192
- data/lib/jss/webhooks/event/jss_shutdown.rb +0 -38
- data/lib/jss/webhooks/event/jss_startup.rb +0 -38
- data/lib/jss/webhooks/event/mobile_device_check_in.rb +0 -38
- data/lib/jss/webhooks/event/mobile_device_command_completed.rb +0 -38
- data/lib/jss/webhooks/event/mobile_device_enrolled.rb +0 -38
- data/lib/jss/webhooks/event/mobile_device_push_sent.rb +0 -38
- data/lib/jss/webhooks/event/mobile_device_unenrolled.rb +0 -38
- data/lib/jss/webhooks/event/patch_software_title_updated.rb +0 -38
- data/lib/jss/webhooks/event/push_sent.rb +0 -38
- data/lib/jss/webhooks/event/rest_api_operation.rb +0 -38
- data/lib/jss/webhooks/event/scep_challenge.rb +0 -38
- data/lib/jss/webhooks/event/smart_group_computer_membership_change.rb +0 -38
- data/lib/jss/webhooks/event/smart_group_mobile_device_membership_change.rb +0 -38
- data/lib/jss/webhooks/event/webhook.rb +0 -40
- data/lib/jss/webhooks/event_objects.rb +0 -112
- data/lib/jss/webhooks/event_objects/computer.rb +0 -49
- data/lib/jss/webhooks/event_objects/jss.rb +0 -36
- data/lib/jss/webhooks/event_objects/mobile_device.rb +0 -48
- data/lib/jss/webhooks/event_objects/patch_software_title_update.rb +0 -38
- data/lib/jss/webhooks/event_objects/push.rb +0 -33
- data/lib/jss/webhooks/event_objects/rest_api_operation.rb +0 -37
- data/lib/jss/webhooks/event_objects/scep_challenge.rb +0 -32
- data/lib/jss/webhooks/event_objects/smart_group.rb +0 -35
- data/lib/jss/webhooks/server_app.rb +0 -37
- data/lib/jss/webhooks/server_app/routes.rb +0 -27
- data/lib/jss/webhooks/server_app/routes/handle_webhook_event.rb +0 -39
- data/lib/jss/webhooks/server_app/routes/home.rb +0 -37
- data/lib/jss/webhooks/server_app/self_signed_cert.rb +0 -65
- data/lib/jss/webhooks/server_app/server.rb +0 -60
- data/lib/jss/webhooks/version.rb +0 -32
@@ -26,127 +26,116 @@
|
|
26
26
|
###
|
27
27
|
module JSS
|
28
28
|
|
29
|
-
|
30
|
-
### Module Constants
|
29
|
+
# Module Constants
|
31
30
|
#####################################
|
32
31
|
|
33
|
-
|
34
|
-
### Module Variables
|
32
|
+
# Module Variables
|
35
33
|
#####################################
|
36
34
|
|
35
|
+
# Module Methods
|
37
36
|
#####################################
|
38
|
-
### Module Methods
|
39
|
-
#####################################
|
40
|
-
|
41
|
-
###
|
42
|
-
### This class represents a Computer Invitation in the JSS.
|
43
|
-
###
|
44
|
-
### ===Adding Computer Invitations to the JSS
|
45
|
-
###
|
46
|
-
### This class is meant only to generate and hold the response of creating
|
47
|
-
### an invitation.
|
48
|
-
###
|
49
|
-
### @see APIObject
|
50
|
-
### @see Creatable
|
51
|
-
###
|
52
37
|
|
38
|
+
# This class represents a Computer Invitation in the JSS.
|
39
|
+
#
|
40
|
+
# ===Adding Computer Invitations to the JSS
|
41
|
+
#
|
42
|
+
# This class is meant only to generate and hold the response of creating
|
43
|
+
# an invitation.
|
44
|
+
#
|
45
|
+
# @see APIObject
|
46
|
+
# @see Creatable
|
47
|
+
#
|
53
48
|
class ComputerInvitation < JSS::APIObject
|
54
49
|
|
55
|
-
|
56
|
-
### MixIns
|
50
|
+
# MixIns
|
57
51
|
#####################################
|
58
52
|
|
59
53
|
include JSS::Creatable
|
60
54
|
|
61
|
-
|
62
|
-
### Class Variables
|
55
|
+
# Class Variables
|
63
56
|
#####################################
|
64
57
|
|
65
|
-
|
66
|
-
### Class Methods
|
58
|
+
# Class Methods
|
67
59
|
#####################################
|
68
60
|
|
69
|
-
|
70
|
-
### Class Constants
|
61
|
+
# Class Constants
|
71
62
|
#####################################
|
72
63
|
|
73
|
-
|
74
|
-
RSRC_BASE =
|
64
|
+
# The base for REST resources of this class
|
65
|
+
RSRC_BASE = 'computerinvitations'.freeze
|
75
66
|
|
76
|
-
|
67
|
+
# the hash key used for the JSON list output of all objects in the JSS
|
77
68
|
RSRC_LIST_KEY = :computer_invitations
|
78
69
|
|
79
|
-
|
80
|
-
|
70
|
+
# The hash key used for the JSON object output.
|
71
|
+
# It's also used in various error messages
|
81
72
|
RSRC_OBJECT_KEY = :computer_invitation
|
82
73
|
|
83
|
-
|
84
|
-
VALID_DATA_KEYS = [:invitation]
|
74
|
+
# these keys, as well as :id and :name, are present in valid API JSON data for this class
|
75
|
+
VALID_DATA_KEYS = [:invitation].freeze
|
85
76
|
|
86
|
-
|
87
|
-
### Attributes
|
77
|
+
# Attributes
|
88
78
|
#####################################
|
89
79
|
|
90
|
-
|
91
|
-
|
92
|
-
|
80
|
+
# The values returned in the General, Location, and Purchasing subsets are stored as direct attributes
|
81
|
+
# Location and Purchasing are defined in the Locatable and Purchasable mixin modules.
|
82
|
+
# Here's General, in alphabetical order
|
93
83
|
|
94
|
-
|
84
|
+
# @return [String] the invitation name
|
95
85
|
attr_reader :name
|
96
86
|
|
97
|
-
|
98
|
-
|
99
|
-
|
87
|
+
# @return [String] the invitation type
|
88
|
+
#
|
89
|
+
# Valid values are: URL and EMAIL. Will default to DEFAULT.
|
100
90
|
attr_accessor :invitation_type
|
101
91
|
|
102
|
-
|
103
|
-
|
104
|
-
|
92
|
+
# @return [String] whether or not to create the account if required
|
93
|
+
#
|
94
|
+
# "true" or "false" are valid values.
|
105
95
|
attr_accessor :create_account_if_does_not_exist
|
106
96
|
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
97
|
+
# @return [String]
|
98
|
+
#
|
99
|
+
# Time since epoch that the invitation will expire at.
|
100
|
+
#
|
101
|
+
# Note: defaults to "Unlimited", so only set if it should expire.
|
112
102
|
attr_accessor :expiration_date_epoch
|
113
103
|
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
104
|
+
# @return [String]
|
105
|
+
#
|
106
|
+
# The username of the ssh user to be created.
|
107
|
+
#
|
108
|
+
# REQUIRED for valid setup.
|
119
109
|
attr_accessor :ssh_username
|
120
110
|
|
121
|
-
|
122
|
-
|
123
|
-
|
111
|
+
# @return [String]
|
112
|
+
#
|
113
|
+
# The whether or not to hide the ssh user.
|
124
114
|
attr_accessor :hide_account
|
125
115
|
|
126
|
-
|
127
|
-
|
128
|
-
|
116
|
+
# @return [String]
|
117
|
+
#
|
118
|
+
# The invitation_status.
|
129
119
|
attr_accessor :invitation_status
|
130
120
|
|
131
|
-
|
132
|
-
|
133
|
-
|
121
|
+
# @return [String]
|
122
|
+
#
|
123
|
+
# Whether the invitation can be used multiple times (boolean).
|
134
124
|
attr_accessor :multiple_uses_allowed
|
135
125
|
|
136
|
-
|
137
|
-
### Public Instance Methods
|
126
|
+
# Public Instance Methods
|
138
127
|
#####################################
|
139
128
|
|
140
|
-
|
141
|
-
|
142
|
-
###
|
129
|
+
# @see APIObject#initialize
|
130
|
+
#
|
143
131
|
def initialize(args = {
|
144
132
|
id: :new,
|
145
|
-
name:
|
146
|
-
ssh_username:
|
147
|
-
hide_account:
|
133
|
+
name: 'some_new_name',
|
134
|
+
ssh_username: 'casper_remote',
|
135
|
+
hide_account: 'true'
|
136
|
+
})
|
148
137
|
|
149
|
-
super args
|
138
|
+
super args
|
150
139
|
|
151
140
|
@name = @init_data[:invitation]
|
152
141
|
@invitation_type = @init_data[:invitation_type]
|
@@ -158,15 +147,13 @@ module JSS
|
|
158
147
|
@multiple_uses_allowed = @init_data[:multiple_uses_allowed] || args[:multiple_uses_allowed]
|
159
148
|
end
|
160
149
|
|
161
|
-
|
162
|
-
### Public Class Methods
|
150
|
+
# Public Class Methods
|
163
151
|
#####################################
|
164
152
|
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
###
|
153
|
+
# Needed to support creation of new Computer Invitations to set their name.
|
154
|
+
#
|
155
|
+
# @return [JSS::ComputerInvitation]
|
156
|
+
#
|
170
157
|
def create
|
171
158
|
new_invitation_id = super
|
172
159
|
|
@@ -181,14 +168,12 @@ module JSS
|
|
181
168
|
@multiple_uses_allowed = jss_me.multiple_uses_allowed
|
182
169
|
end
|
183
170
|
|
184
|
-
|
185
|
-
### Private Instance Methods
|
171
|
+
# Private Instance Methods
|
186
172
|
#####################################
|
187
173
|
private
|
188
174
|
|
189
|
-
|
190
|
-
|
191
|
-
###
|
175
|
+
# Sets invitation expiration 4 hours after request.
|
176
|
+
#
|
192
177
|
def rest_xml
|
193
178
|
doc = REXML::Document.new APIConnection::XML_HEADER
|
194
179
|
obj = doc.add_element RSRC_OBJECT_KEY.to_s
|
@@ -201,7 +186,9 @@ module JSS
|
|
201
186
|
obj.add_element('hide_account').text = hide_account
|
202
187
|
obj.add_element('invitation_status').text = invitation_status
|
203
188
|
obj.add_element('multiple_uses_allowed').text = multiple_uses_allowed
|
204
|
-
|
189
|
+
doc.to_s
|
205
190
|
end
|
191
|
+
|
206
192
|
end
|
193
|
+
|
207
194
|
end
|
@@ -1,26 +1,26 @@
|
|
1
1
|
### Copyright 2017 Pixar
|
2
2
|
|
3
|
-
###
|
3
|
+
###
|
4
4
|
### Licensed under the Apache License, Version 2.0 (the "Apache License")
|
5
5
|
### with the following modification; you may not use this file except in
|
6
6
|
### compliance with the Apache License and the following modification to it:
|
7
7
|
### Section 6. Trademarks. is deleted and replaced with:
|
8
|
-
###
|
8
|
+
###
|
9
9
|
### 6. Trademarks. This License does not grant permission to use the trade
|
10
10
|
### names, trademarks, service marks, or product names of the Licensor
|
11
11
|
### and its affiliates, except as required to comply with Section 4(c) of
|
12
12
|
### the License and to reproduce the content of the NOTICE file.
|
13
|
-
###
|
13
|
+
###
|
14
14
|
### You may obtain a copy of the Apache License at
|
15
|
-
###
|
15
|
+
###
|
16
16
|
### http://www.apache.org/licenses/LICENSE-2.0
|
17
|
-
###
|
17
|
+
###
|
18
18
|
### Unless required by applicable law or agreed to in writing, software
|
19
19
|
### distributed under the Apache License with the above modification is
|
20
20
|
### distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
21
21
|
### KIND, either express or implied. See the Apache License for the specific
|
22
22
|
### language governing permissions and limitations under the Apache License.
|
23
|
-
###
|
23
|
+
###
|
24
24
|
###
|
25
25
|
|
26
26
|
###
|
@@ -68,7 +68,6 @@ module JSS
|
|
68
68
|
### inform the subclass instance that it has changed and needs an #update
|
69
69
|
###
|
70
70
|
### Classes mixing in this module *must*
|
71
|
-
### * call #parse_criteria during initialization.
|
72
71
|
### * If they are Updatable or Creatable, they must insert
|
73
72
|
### self.criteria.rest_xml into their own xml output.
|
74
73
|
###
|
@@ -0,0 +1,21 @@
|
|
1
|
+
# This is just a stub for now.
|
2
|
+
|
3
|
+
#
|
4
|
+
module JSS
|
5
|
+
|
6
|
+
#
|
7
|
+
class EBook < APIObject
|
8
|
+
|
9
|
+
### The base for REST resources of this class
|
10
|
+
RSRC_BASE = 'ebooks'.freeze
|
11
|
+
|
12
|
+
### the hash key used for the JSON list output of all objects in the JSS
|
13
|
+
RSRC_LIST_KEY = :ebooks
|
14
|
+
|
15
|
+
### The hash key used for the JSON object output.
|
16
|
+
### It's also used in various error messages
|
17
|
+
RSRC_OBJECT_KEY = :ebook
|
18
|
+
|
19
|
+
end
|
20
|
+
|
21
|
+
end
|
@@ -1,26 +1,26 @@
|
|
1
1
|
### Copyright 2017 Pixar
|
2
2
|
|
3
|
-
###
|
3
|
+
###
|
4
4
|
### Licensed under the Apache License, Version 2.0 (the "Apache License")
|
5
5
|
### with the following modification; you may not use this file except in
|
6
6
|
### compliance with the Apache License and the following modification to it:
|
7
7
|
### Section 6. Trademarks. is deleted and replaced with:
|
8
|
-
###
|
8
|
+
###
|
9
9
|
### 6. Trademarks. This License does not grant permission to use the trade
|
10
10
|
### names, trademarks, service marks, or product names of the Licensor
|
11
11
|
### and its affiliates, except as required to comply with Section 4(c) of
|
12
12
|
### the License and to reproduce the content of the NOTICE file.
|
13
|
-
###
|
13
|
+
###
|
14
14
|
### You may obtain a copy of the Apache License at
|
15
|
-
###
|
15
|
+
###
|
16
16
|
### http://www.apache.org/licenses/LICENSE-2.0
|
17
|
-
###
|
17
|
+
###
|
18
18
|
### Unless required by applicable law or agreed to in writing, software
|
19
19
|
### distributed under the Apache License with the above modification is
|
20
20
|
### distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
21
21
|
### KIND, either express or implied. See the Apache License for the specific
|
22
22
|
### language governing permissions and limitations under the Apache License.
|
23
|
-
###
|
23
|
+
###
|
24
24
|
###
|
25
25
|
|
26
26
|
###
|
@@ -61,8 +61,6 @@ module JSS
|
|
61
61
|
### For Example, {JSS::Computer} sets this:
|
62
62
|
### EXT_ATTRIB_CLASS = JSS::ComputerExtensionAttribute
|
63
63
|
###
|
64
|
-
### During initialization those classes must call {#parse_ext_attrs} to populate the @extension_attributes
|
65
|
-
### attribute from @init_data.
|
66
64
|
###
|
67
65
|
### Parsing also populates @ext_attrs which is a Hash of name => value for each EA.
|
68
66
|
###
|
data/lib/jss/api_object/group.rb
CHANGED
@@ -155,8 +155,6 @@ module JSS
|
|
155
155
|
|
156
156
|
@site = JSS::APIObject.get_name(@init_data[:site])
|
157
157
|
|
158
|
-
parse_criteria
|
159
|
-
|
160
158
|
end #init
|
161
159
|
|
162
160
|
#####################################
|
@@ -378,4 +376,3 @@ end # module JSS
|
|
378
376
|
require "jss/api_object/group/computer_group"
|
379
377
|
require "jss/api_object/group/mobile_device_group"
|
380
378
|
require "jss/api_object/group/user_group"
|
381
|
-
|
@@ -1,26 +1,26 @@
|
|
1
1
|
### Copyright 2017 Pixar
|
2
2
|
|
3
|
-
###
|
3
|
+
###
|
4
4
|
### Licensed under the Apache License, Version 2.0 (the "Apache License")
|
5
5
|
### with the following modification; you may not use this file except in
|
6
6
|
### compliance with the Apache License and the following modification to it:
|
7
7
|
### Section 6. Trademarks. is deleted and replaced with:
|
8
|
-
###
|
8
|
+
###
|
9
9
|
### 6. Trademarks. This License does not grant permission to use the trade
|
10
10
|
### names, trademarks, service marks, or product names of the Licensor
|
11
11
|
### and its affiliates, except as required to comply with Section 4(c) of
|
12
12
|
### the License and to reproduce the content of the NOTICE file.
|
13
|
-
###
|
13
|
+
###
|
14
14
|
### You may obtain a copy of the Apache License at
|
15
|
-
###
|
15
|
+
###
|
16
16
|
### http://www.apache.org/licenses/LICENSE-2.0
|
17
|
-
###
|
17
|
+
###
|
18
18
|
### Unless required by applicable law or agreed to in writing, software
|
19
19
|
### distributed under the Apache License with the above modification is
|
20
20
|
### distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
21
21
|
### KIND, either express or implied. See the Apache License for the specific
|
22
22
|
### language governing permissions and limitations under the Apache License.
|
23
|
-
###
|
23
|
+
###
|
24
24
|
###
|
25
25
|
|
26
26
|
###
|
@@ -52,8 +52,7 @@ module JSS
|
|
52
52
|
### - :username => String
|
53
53
|
###
|
54
54
|
### Including this module in an {APIObject} subclass will give it attributes
|
55
|
-
### matching those keys
|
56
|
-
### subclass's constructor after calling super.
|
55
|
+
### matching those keys.
|
57
56
|
###
|
58
57
|
### If the subclass is creatable or updatable, calling {#location_xml} returns
|
59
58
|
### a REXML element representing the location subset, to be included with the
|
@@ -70,13 +69,13 @@ module JSS
|
|
70
69
|
#####################################
|
71
70
|
### Variables
|
72
71
|
#####################################
|
73
|
-
|
74
|
-
|
72
|
+
|
73
|
+
|
75
74
|
#####################################
|
76
75
|
### Attribtues
|
77
76
|
#####################################
|
78
77
|
|
79
|
-
###
|
78
|
+
###
|
80
79
|
### Objects with a Location subset have those values stored as
|
81
80
|
### primary attributes here, not in a single Hash attribute
|
82
81
|
### as the other subsets
|
@@ -104,7 +103,7 @@ module JSS
|
|
104
103
|
|
105
104
|
### @return [String]
|
106
105
|
attr_reader :username
|
107
|
-
|
106
|
+
|
108
107
|
|
109
108
|
#####################################
|
110
109
|
### Mixed-in Instance Methods
|
@@ -130,12 +129,12 @@ module JSS
|
|
130
129
|
@username = @init_data[:location][:username]
|
131
130
|
end
|
132
131
|
|
133
|
-
|
132
|
+
|
134
133
|
###
|
135
134
|
### All the location data in a Hash, as it comes from the API.
|
136
135
|
###
|
137
136
|
### The reason it isn't stored this way is to prevent editing of the hash directly.
|
138
|
-
###
|
137
|
+
###
|
139
138
|
### @return [Hash<String>] the location data
|
140
139
|
###
|
141
140
|
def location
|
@@ -150,8 +149,8 @@ module JSS
|
|
150
149
|
:username => @username
|
151
150
|
}
|
152
151
|
end
|
153
|
-
|
154
|
-
|
152
|
+
|
153
|
+
|
155
154
|
###
|
156
155
|
###
|
157
156
|
### Setters
|
@@ -254,12 +253,12 @@ module JSS
|
|
254
253
|
@room = ''
|
255
254
|
@need_to_update = true
|
256
255
|
end
|
257
|
-
|
258
|
-
|
256
|
+
|
257
|
+
|
259
258
|
### aliases
|
260
259
|
alias user username
|
261
|
-
|
262
|
-
|
260
|
+
|
261
|
+
|
263
262
|
###
|
264
263
|
### @api private
|
265
264
|
###
|