microslop_one_drive 2.2.0 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +67 -7
- data/lib/microslop_one_drive/batch/batch_response.rb +15 -0
- data/lib/microslop_one_drive/batch/response.rb +18 -0
- data/lib/microslop_one_drive/client.rb +98 -42
- data/lib/microslop_one_drive/deserializers/drive_deserializer.rb +57 -0
- data/lib/microslop_one_drive/deserializers/drive_item_deserializer.rb +67 -0
- data/lib/microslop_one_drive/deserializers/parent_reference_deserializer.rb +20 -0
- data/lib/microslop_one_drive/deserializers/quota_deserializer.rb +24 -0
- data/lib/microslop_one_drive/deserializers/shared_with_me_item_deserializer.rb +48 -0
- data/lib/microslop_one_drive/deserializers/user_deserializer.rb +29 -0
- data/lib/microslop_one_drive/drive.rb +40 -10
- data/lib/microslop_one_drive/drive_item.rb +61 -63
- data/lib/microslop_one_drive/file.rb +13 -0
- data/lib/microslop_one_drive/folder.rb +13 -0
- data/lib/microslop_one_drive/list_responses/drive_item_list.rb +21 -0
- data/lib/microslop_one_drive/list_responses/drive_list.rb +15 -0
- data/lib/microslop_one_drive/list_responses/list_response.rb +21 -0
- data/lib/microslop_one_drive/list_responses/permission_list.rb +27 -0
- data/lib/microslop_one_drive/list_responses/shared_with_me_list.rb +15 -0
- data/lib/microslop_one_drive/parent_reference.rb +14 -0
- data/lib/microslop_one_drive/permission_set.rb +13 -15
- data/lib/microslop_one_drive/quota.rb +14 -0
- data/lib/microslop_one_drive/root_folder.rb +13 -0
- data/lib/microslop_one_drive/shared_with_me_item.rb +44 -0
- data/lib/microslop_one_drive/user.rb +33 -5
- data/lib/microslop_one_drive/utils.rb +10 -0
- data/lib/microslop_one_drive/version.rb +1 -1
- data/lib/microslop_one_drive.rb +33 -8
- metadata +25 -67
- data/lib/microslop_one_drive/batch_response.rb +0 -13
- data/lib/microslop_one_drive/drive_item_list.rb +0 -32
- data/lib/microslop_one_drive/drive_list.rb +0 -13
- data/lib/microslop_one_drive/list_response.rb +0 -21
- data/lib/microslop_one_drive/permission_list.rb +0 -29
- data/lib/microslop_one_drive/response.rb +0 -16
|
@@ -1,18 +1,48 @@
|
|
|
1
1
|
module MicroslopOneDrive
|
|
2
2
|
class Drive
|
|
3
|
-
attr_reader :id, :name, :description, :
|
|
3
|
+
attr_reader :id, :name, :description, :web_url, :drive_type, :created_date_time, :last_modified_date_time,
|
|
4
|
+
:created_by, :last_modified_by, :owner, :quota
|
|
4
5
|
|
|
5
|
-
def initialize(
|
|
6
|
-
|
|
6
|
+
def initialize(
|
|
7
|
+
id:,
|
|
8
|
+
name:,
|
|
9
|
+
description:,
|
|
10
|
+
web_url:,
|
|
11
|
+
drive_type:,
|
|
12
|
+
created_date_time:,
|
|
13
|
+
last_modified_date_time:,
|
|
14
|
+
created_by:,
|
|
15
|
+
last_modified_by:,
|
|
16
|
+
owner:,
|
|
17
|
+
quota:
|
|
18
|
+
)
|
|
19
|
+
@id = id
|
|
20
|
+
@name = name
|
|
21
|
+
@description = description
|
|
22
|
+
@web_url = web_url
|
|
23
|
+
@drive_type = drive_type
|
|
24
|
+
@created_date_time = created_date_time
|
|
25
|
+
@last_modified_date_time = last_modified_date_time
|
|
26
|
+
@created_by = created_by
|
|
27
|
+
@last_modified_by = last_modified_by
|
|
28
|
+
@owner = owner
|
|
29
|
+
@quota = quota
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def created_at
|
|
33
|
+
@created_date_time
|
|
34
|
+
end
|
|
7
35
|
|
|
8
|
-
|
|
9
|
-
@
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
36
|
+
def updated_at
|
|
37
|
+
@last_modified_date_time
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
def url
|
|
41
|
+
@web_url
|
|
42
|
+
end
|
|
13
43
|
|
|
14
|
-
|
|
15
|
-
@
|
|
44
|
+
def updated_by
|
|
45
|
+
@last_modified_by
|
|
16
46
|
end
|
|
17
47
|
end
|
|
18
48
|
end
|
|
@@ -4,53 +4,70 @@ module MicroslopOneDrive
|
|
|
4
4
|
|
|
5
5
|
attr_reader :id,
|
|
6
6
|
:name,
|
|
7
|
-
:
|
|
8
|
-
:
|
|
9
|
-
:url,
|
|
7
|
+
:download_url,
|
|
8
|
+
:web_url,
|
|
10
9
|
:size,
|
|
10
|
+
:created_date_time,
|
|
11
|
+
:last_modified_date_time,
|
|
12
|
+
:e_tag,
|
|
13
|
+
:c_tag,
|
|
11
14
|
:file_or_folder,
|
|
12
|
-
:parent_id,
|
|
13
15
|
:mime_type,
|
|
14
|
-
:
|
|
15
|
-
:
|
|
16
|
-
:
|
|
17
|
-
:full_path
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
@
|
|
39
|
-
|
|
40
|
-
@
|
|
16
|
+
:parent_reference,
|
|
17
|
+
:is_deleted,
|
|
18
|
+
:is_shared,
|
|
19
|
+
:full_path,
|
|
20
|
+
:path
|
|
21
|
+
|
|
22
|
+
def initialize(
|
|
23
|
+
id:,
|
|
24
|
+
name:,
|
|
25
|
+
download_url:,
|
|
26
|
+
web_url:,
|
|
27
|
+
size:,
|
|
28
|
+
created_date_time:,
|
|
29
|
+
last_modified_date_time:,
|
|
30
|
+
e_tag:,
|
|
31
|
+
c_tag:,
|
|
32
|
+
file_or_folder:,
|
|
33
|
+
mime_type:,
|
|
34
|
+
parent_reference:,
|
|
35
|
+
is_deleted:,
|
|
36
|
+
is_shared:
|
|
37
|
+
)
|
|
38
|
+
@id = id
|
|
39
|
+
@name = name
|
|
40
|
+
@download_url = download_url
|
|
41
|
+
@web_url = web_url
|
|
42
|
+
@size = size
|
|
43
|
+
@created_date_time = created_date_time
|
|
44
|
+
@last_modified_date_time = last_modified_date_time
|
|
45
|
+
@e_tag = e_tag
|
|
46
|
+
@c_tag = c_tag
|
|
47
|
+
@file_or_folder = file_or_folder
|
|
48
|
+
@mime_type = mime_type
|
|
49
|
+
@parent_reference = parent_reference
|
|
50
|
+
@is_deleted = is_deleted
|
|
51
|
+
@is_shared = is_shared
|
|
52
|
+
|
|
53
|
+
@full_path = build_full_path
|
|
54
|
+
@path = build_path(@full_path)
|
|
55
|
+
end
|
|
41
56
|
|
|
42
|
-
|
|
57
|
+
def created_at
|
|
58
|
+
@created_date_time
|
|
59
|
+
end
|
|
43
60
|
|
|
44
|
-
|
|
45
|
-
@
|
|
61
|
+
def updated_at
|
|
62
|
+
@last_modified_date_time
|
|
46
63
|
end
|
|
47
64
|
|
|
48
65
|
def deleted?
|
|
49
|
-
@
|
|
66
|
+
@is_deleted
|
|
50
67
|
end
|
|
51
68
|
|
|
52
69
|
def shared?
|
|
53
|
-
@
|
|
70
|
+
@is_shared
|
|
54
71
|
end
|
|
55
72
|
|
|
56
73
|
def file?
|
|
@@ -61,39 +78,20 @@ module MicroslopOneDrive
|
|
|
61
78
|
@file_or_folder == :folder
|
|
62
79
|
end
|
|
63
80
|
|
|
64
|
-
def
|
|
65
|
-
|
|
66
|
-
@parent.remove_child(self)
|
|
67
|
-
end
|
|
68
|
-
|
|
69
|
-
@parent = parent
|
|
70
|
-
@parent.add_child(self)
|
|
71
|
-
end
|
|
72
|
-
|
|
73
|
-
def is_root?
|
|
74
|
-
@item_hash.key?("root")
|
|
81
|
+
def root?
|
|
82
|
+
false
|
|
75
83
|
end
|
|
76
84
|
|
|
77
|
-
|
|
85
|
+
def build_full_path
|
|
86
|
+
return nil if parent_reference&.path.nil? || name.nil?
|
|
78
87
|
|
|
79
|
-
|
|
80
|
-
@children << child
|
|
88
|
+
::File.join(parent_reference.path, name)
|
|
81
89
|
end
|
|
82
90
|
|
|
83
|
-
def
|
|
84
|
-
|
|
85
|
-
end
|
|
86
|
-
|
|
87
|
-
private
|
|
88
|
-
|
|
89
|
-
def build_path
|
|
90
|
-
return "root:" if is_root?
|
|
91
|
-
|
|
92
|
-
full_parent_path = @item_hash.dig("parentReference", "path")
|
|
93
|
-
return nil if full_parent_path.nil?
|
|
91
|
+
def build_path(full_path)
|
|
92
|
+
return "" if full_path.nil?
|
|
94
93
|
|
|
95
|
-
|
|
96
|
-
full_path_with_name.sub(/\A.*root:\//, "root:/")
|
|
94
|
+
full_path.gsub(%r{\A/?drive/root:/?}, "").chomp("/")
|
|
97
95
|
end
|
|
98
96
|
end
|
|
99
97
|
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
module MicroslopOneDrive
|
|
2
|
+
module ListResponses
|
|
3
|
+
class DriveItemList < ListResponse
|
|
4
|
+
attr_reader :items
|
|
5
|
+
|
|
6
|
+
def initialize(parsed_response)
|
|
7
|
+
super
|
|
8
|
+
|
|
9
|
+
@items = build_items(parsed_response)
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
private
|
|
13
|
+
|
|
14
|
+
def build_items(parsed_response)
|
|
15
|
+
parsed_response.fetch("value", []).map do
|
|
16
|
+
MicroslopOneDrive::Deserializers::DriveItemDeserializer.create_from_hash(it)
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
module MicroslopOneDrive
|
|
2
|
+
module ListResponses
|
|
3
|
+
class DriveList < ListResponse
|
|
4
|
+
attr_reader :drives
|
|
5
|
+
|
|
6
|
+
def initialize(response_hash)
|
|
7
|
+
super
|
|
8
|
+
|
|
9
|
+
@drives = response_hash.fetch("value", []).map do
|
|
10
|
+
MicroslopOneDrive::Deserializers::DriveDeserializer.create_from_hash(it)
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
module MicroslopOneDrive
|
|
2
|
+
module ListResponses
|
|
3
|
+
class ListResponse
|
|
4
|
+
attr_reader :next_link, :next_token, :delta_link, :delta_token, :context
|
|
5
|
+
|
|
6
|
+
def initialize(response_hash)
|
|
7
|
+
@context = response_hash.fetch("@odata.context", nil)
|
|
8
|
+
|
|
9
|
+
@next_link = response_hash.fetch("@odata.nextLink", nil)
|
|
10
|
+
@next_token = @next_link.split("?token=").last if @next_link && !@next_link.empty?
|
|
11
|
+
|
|
12
|
+
@delta_link = response_hash.fetch("@odata.deltaLink", nil)
|
|
13
|
+
@delta_token = @delta_link.split("?token=").last if @delta_link && !@delta_link.empty?
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
def next_page?
|
|
17
|
+
!next_link.nil?
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
module MicroslopOneDrive
|
|
2
|
+
module ListResponses
|
|
3
|
+
class PermissionList < ListResponse
|
|
4
|
+
attr_reader :permissions
|
|
5
|
+
|
|
6
|
+
def initialize(drive_item_id:, parsed_response:)
|
|
7
|
+
super(parsed_response)
|
|
8
|
+
|
|
9
|
+
@permissions = build_permissions(drive_item_id, parsed_response)
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
private
|
|
13
|
+
|
|
14
|
+
def build_permissions(drive_item_id, parsed_response)
|
|
15
|
+
permission_sets = parsed_response.fetch("value", []).map do
|
|
16
|
+
MicroslopOneDrive::PermissionSet.new(drive_item_id: drive_item_id, parsed_response: it)
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
# At this stage, the permissions could contain multiple Audiences for the same Permission.
|
|
20
|
+
# This is because OneDrive can return multiple permissions for the same thing.
|
|
21
|
+
# For example, a file shared with one person and a public link will return in a single permission object.
|
|
22
|
+
# We therefore need to "explode" the permission sets into multiple permissions, one for each Audience.
|
|
23
|
+
permission_sets.flat_map(&:to_permissions)
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
module MicroslopOneDrive
|
|
2
|
+
module ListResponses
|
|
3
|
+
class SharedWithMeList < ListResponse
|
|
4
|
+
attr_reader :shared_with_me_items
|
|
5
|
+
|
|
6
|
+
def initialize(response_hash)
|
|
7
|
+
super
|
|
8
|
+
|
|
9
|
+
@shared_with_me_items = response_hash.fetch("value", []).map do
|
|
10
|
+
MicroslopOneDrive::Deserializers::SharedWithMeItemDeserializer.create_from_hash(it)
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
module MicroslopOneDrive
|
|
2
|
+
class ParentReference
|
|
3
|
+
attr_reader :drive_type, :drive_id, :id, :name, :path, :site_id
|
|
4
|
+
|
|
5
|
+
def initialize(drive_type:, drive_id:, id:, name:, path:, site_id:)
|
|
6
|
+
@drive_type = drive_type
|
|
7
|
+
@drive_id = drive_id
|
|
8
|
+
@id = id
|
|
9
|
+
@name = name
|
|
10
|
+
@path = path
|
|
11
|
+
@site_id = site_id
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
@@ -3,12 +3,10 @@ module MicroslopOneDrive
|
|
|
3
3
|
attr_reader :id, :role, :audiences
|
|
4
4
|
|
|
5
5
|
def initialize(drive_item_id:, parsed_response:)
|
|
6
|
-
@parsed_response = parsed_response
|
|
7
|
-
|
|
8
6
|
@drive_item_id = drive_item_id
|
|
9
|
-
@id =
|
|
10
|
-
@role = build_role
|
|
11
|
-
@audiences = build_audiences
|
|
7
|
+
@id = parsed_response.fetch("id", nil)
|
|
8
|
+
@role = build_role(parsed_response)
|
|
9
|
+
@audiences = build_audiences(parsed_response)
|
|
12
10
|
end
|
|
13
11
|
|
|
14
12
|
def to_permissions
|
|
@@ -17,31 +15,31 @@ module MicroslopOneDrive
|
|
|
17
15
|
|
|
18
16
|
private
|
|
19
17
|
|
|
20
|
-
def build_role
|
|
21
|
-
roles =
|
|
18
|
+
def build_role(parsed_response)
|
|
19
|
+
roles = parsed_response.fetch("roles", [])
|
|
22
20
|
roles.is_a?(Array) ? roles.first : roles
|
|
23
21
|
end
|
|
24
22
|
|
|
25
|
-
def build_audiences
|
|
23
|
+
def build_audiences(parsed_response)
|
|
26
24
|
audiences = []
|
|
27
25
|
|
|
28
|
-
audiences += audiences_from_site_users
|
|
29
|
-
audiences += audiences_from_anonymous_links
|
|
26
|
+
audiences += audiences_from_site_users(parsed_response)
|
|
27
|
+
audiences += audiences_from_anonymous_links(parsed_response)
|
|
30
28
|
|
|
31
29
|
audiences.compact
|
|
32
30
|
end
|
|
33
31
|
|
|
34
|
-
def audiences_from_site_users
|
|
32
|
+
def audiences_from_site_users(parsed_response)
|
|
35
33
|
site_users = []
|
|
36
|
-
site_users +=
|
|
37
|
-
site_users <<
|
|
34
|
+
site_users += parsed_response.fetch("grantedToIdentitiesV2", []).flat_map { it.fetch("siteUser", nil) }
|
|
35
|
+
site_users << parsed_response.dig("grantedToV2", "siteUser")
|
|
38
36
|
site_users.compact!
|
|
39
37
|
|
|
40
38
|
site_users.map { Audience.from_site_user(it) }
|
|
41
39
|
end
|
|
42
40
|
|
|
43
|
-
def audiences_from_anonymous_links
|
|
44
|
-
link =
|
|
41
|
+
def audiences_from_anonymous_links(parsed_response)
|
|
42
|
+
link = parsed_response.fetch("link", nil)
|
|
45
43
|
return [] if link.nil? || (link.respond_to?(:empty?) && link.empty?)
|
|
46
44
|
|
|
47
45
|
link_scope = link.fetch("scope", nil)
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
module MicroslopOneDrive
|
|
2
|
+
class Quota
|
|
3
|
+
attr_reader :deleted, :remaining, :state, :total, :used, :upgrade_available
|
|
4
|
+
|
|
5
|
+
def initialize(deleted:, remaining:, state:, total:, used:, upgrade_available:)
|
|
6
|
+
@deleted = deleted
|
|
7
|
+
@remaining = remaining
|
|
8
|
+
@state = state
|
|
9
|
+
@total = total
|
|
10
|
+
@used = used
|
|
11
|
+
@upgrade_available = upgrade_available
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
module MicroslopOneDrive
|
|
2
|
+
class SharedWithMeItem
|
|
3
|
+
attr_reader :id, :name, :web_url, :size, :last_modified_date_time, :created_date_time, :created_by,
|
|
4
|
+
:last_modified_by, :remote_item
|
|
5
|
+
|
|
6
|
+
def initialize(
|
|
7
|
+
id:,
|
|
8
|
+
name:,
|
|
9
|
+
web_url:,
|
|
10
|
+
size:,
|
|
11
|
+
last_modified_date_time:,
|
|
12
|
+
created_date_time:,
|
|
13
|
+
created_by:,
|
|
14
|
+
last_modified_by:,
|
|
15
|
+
remote_item:
|
|
16
|
+
)
|
|
17
|
+
@id = id
|
|
18
|
+
@name = name
|
|
19
|
+
@web_url = web_url
|
|
20
|
+
@size = size
|
|
21
|
+
@last_modified_date_time = last_modified_date_time
|
|
22
|
+
@created_date_time = created_date_time
|
|
23
|
+
@created_by = created_by
|
|
24
|
+
@last_modified_by = last_modified_by
|
|
25
|
+
@remote_item = remote_item
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
def created_at
|
|
29
|
+
@created_date_time
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def updated_at
|
|
33
|
+
@last_modified_date_time
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
def url
|
|
37
|
+
@web_url
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
def updated_by
|
|
41
|
+
@last_modified_by
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
end
|
|
@@ -1,12 +1,40 @@
|
|
|
1
1
|
module MicroslopOneDrive
|
|
2
2
|
class User
|
|
3
|
-
attr_reader :
|
|
3
|
+
attr_reader :principal_name, :id, :display_name, :surname, :given_name, :preferred_language, :mail, :mobile_phone,
|
|
4
|
+
:job_title, :office_location, :business_phones
|
|
4
5
|
|
|
5
|
-
def initialize(
|
|
6
|
-
|
|
6
|
+
def initialize(
|
|
7
|
+
principal_name: nil,
|
|
8
|
+
id: nil,
|
|
9
|
+
display_name: nil,
|
|
10
|
+
surname: nil,
|
|
11
|
+
given_name: nil,
|
|
12
|
+
preferred_language: nil,
|
|
13
|
+
mail: nil,
|
|
14
|
+
mobile_phone: nil,
|
|
15
|
+
job_title: nil,
|
|
16
|
+
office_location: nil,
|
|
17
|
+
business_phones: []
|
|
18
|
+
)
|
|
19
|
+
@principal_name = principal_name
|
|
20
|
+
@id = id
|
|
21
|
+
@display_name = display_name
|
|
22
|
+
@surname = surname
|
|
23
|
+
@given_name = given_name
|
|
24
|
+
@preferred_language = preferred_language
|
|
25
|
+
@mail = mail
|
|
26
|
+
@mobile_phone = mobile_phone
|
|
27
|
+
@job_title = job_title
|
|
28
|
+
@office_location = office_location
|
|
29
|
+
@business_phones = business_phones
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def email_address
|
|
33
|
+
mail
|
|
34
|
+
end
|
|
7
35
|
|
|
8
|
-
|
|
9
|
-
|
|
36
|
+
def last_name
|
|
37
|
+
surname
|
|
10
38
|
end
|
|
11
39
|
end
|
|
12
40
|
end
|
|
@@ -2,6 +2,16 @@ require "time"
|
|
|
2
2
|
|
|
3
3
|
module MicroslopOneDrive
|
|
4
4
|
module Utils
|
|
5
|
+
def self.deep_symbolize_keys(hash)
|
|
6
|
+
hash.transform_keys(&:to_sym).transform_values do
|
|
7
|
+
case it
|
|
8
|
+
when Hash then deep_symbolize_keys(it)
|
|
9
|
+
when Array then it.map { it.is_a?(Hash) ? deep_symbolize_keys(it) : it }
|
|
10
|
+
else it
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
|
|
5
15
|
def self.safe_parse_time(value)
|
|
6
16
|
return nil if value.nil? || value.to_s.strip.empty?
|
|
7
17
|
|
data/lib/microslop_one_drive.rb
CHANGED
|
@@ -3,17 +3,42 @@ require "json"
|
|
|
3
3
|
|
|
4
4
|
require_relative "microslop_one_drive/version"
|
|
5
5
|
require_relative "microslop_one_drive/utils"
|
|
6
|
-
|
|
6
|
+
|
|
7
|
+
# Deserializers
|
|
8
|
+
require_relative "microslop_one_drive/deserializers/user_deserializer"
|
|
9
|
+
require_relative "microslop_one_drive/deserializers/drive_deserializer"
|
|
10
|
+
require_relative "microslop_one_drive/deserializers/quota_deserializer"
|
|
11
|
+
require_relative "microslop_one_drive/deserializers/drive_item_deserializer"
|
|
12
|
+
require_relative "microslop_one_drive/deserializers/parent_reference_deserializer"
|
|
13
|
+
require_relative "microslop_one_drive/deserializers/shared_with_me_item_deserializer"
|
|
14
|
+
|
|
15
|
+
# Drive items
|
|
16
|
+
require_relative "microslop_one_drive/file"
|
|
17
|
+
require_relative "microslop_one_drive/folder"
|
|
18
|
+
require_relative "microslop_one_drive/root_folder"
|
|
19
|
+
require_relative "microslop_one_drive/drive_item"
|
|
20
|
+
|
|
21
|
+
# List Responses
|
|
22
|
+
require_relative "microslop_one_drive/list_responses/list_response"
|
|
23
|
+
require_relative "microslop_one_drive/list_responses/drive_list"
|
|
24
|
+
require_relative "microslop_one_drive/list_responses/drive_item_list"
|
|
25
|
+
require_relative "microslop_one_drive/list_responses/permission_list"
|
|
26
|
+
require_relative "microslop_one_drive/list_responses/shared_with_me_list"
|
|
27
|
+
|
|
28
|
+
# Batch
|
|
29
|
+
require_relative "microslop_one_drive/batch/batch_response"
|
|
30
|
+
require_relative "microslop_one_drive/batch/response"
|
|
31
|
+
|
|
32
|
+
# Other models
|
|
7
33
|
require_relative "microslop_one_drive/user"
|
|
8
|
-
require_relative "microslop_one_drive/
|
|
9
|
-
require_relative "microslop_one_drive/drive_list"
|
|
34
|
+
require_relative "microslop_one_drive/parent_reference"
|
|
10
35
|
require_relative "microslop_one_drive/drive"
|
|
11
|
-
require_relative "microslop_one_drive/drive_item"
|
|
12
|
-
require_relative "microslop_one_drive/drive_item_list"
|
|
13
|
-
require_relative "microslop_one_drive/permission_list"
|
|
14
36
|
require_relative "microslop_one_drive/permission_set"
|
|
15
37
|
require_relative "microslop_one_drive/permission"
|
|
16
38
|
require_relative "microslop_one_drive/audience"
|
|
17
|
-
require_relative "microslop_one_drive/
|
|
18
|
-
require_relative "microslop_one_drive/
|
|
39
|
+
require_relative "microslop_one_drive/quota"
|
|
40
|
+
require_relative "microslop_one_drive/shared_with_me_item"
|
|
41
|
+
|
|
42
|
+
# Client
|
|
43
|
+
require_relative "microslop_one_drive/errors/client_error"
|
|
19
44
|
require_relative "microslop_one_drive/client"
|