eac_rest 0.12.0 → 0.13.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/lib/eac_rest/api.rb +0 -4
- data/lib/eac_rest/entity/children.rb +24 -0
- data/lib/eac_rest/entity/data.rb +0 -2
- data/lib/eac_rest/entity/fetching.rb +16 -12
- data/lib/eac_rest/entity.rb +0 -9
- data/lib/eac_rest/helper.rb +0 -2
- data/lib/eac_rest/request.rb +0 -4
- data/lib/eac_rest/response.rb +0 -4
- data/lib/eac_rest/version.rb +1 -1
- data/lib/eac_rest.rb +5 -2
- metadata +36 -17
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 82e7ab203081a5bb00d067ac03d7816d3269d184b529fb5221b29abfb6417bf0
|
|
4
|
+
data.tar.gz: 686f13eeff4af34eb0aaed13cad06f6b2dc45b288333ddaf846f37ca3cd2913d
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 914710a3034b2c34a30a4268a0ad2a43e21a6e0fe193f5b8d40d3f4302e99d3d2b60a502d72fc101c1b33f4cd1300a25efbc48e1e933e0818cf79060aabac29d
|
|
7
|
+
data.tar.gz: ad721989f4a047203d045aa45a73487f84eadf7cc4f3fad9ecfdd42f278bce062782443a0c7d60d3161cbe3bdaf10c2eee3324b78790122bae48d2883f1b6d02
|
data/lib/eac_rest/api.rb
CHANGED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module EacRest
|
|
4
|
+
class Entity
|
|
5
|
+
module Children
|
|
6
|
+
# @param entity_class [Class]
|
|
7
|
+
# @param data_or_id [Hash|Object]
|
|
8
|
+
# @param options [Hash]
|
|
9
|
+
# @return [EacRest::Entity]
|
|
10
|
+
def child_entity(entity_class, data_or_id, options = {})
|
|
11
|
+
api.entity(entity_class, data_or_id, options.merge(OPTION_PARENT => self))
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
# @param entity_class [Class<T>]
|
|
15
|
+
# @param path_suffix [String]
|
|
16
|
+
# @return [Enumerable<T>]
|
|
17
|
+
def child_list(entity_class, path_suffix)
|
|
18
|
+
items = request(path_suffix).response.body_data
|
|
19
|
+
items = yield(items) if block_given?
|
|
20
|
+
items.map { |e| child_entity(entity_class, e) }
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
data/lib/eac_rest/entity/data.rb
CHANGED
|
@@ -1,26 +1,30 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
require 'eac_rest/helper'
|
|
4
|
-
require 'eac_ruby_utils/core_ext'
|
|
5
|
-
|
|
6
3
|
module EacRest
|
|
7
4
|
class Entity
|
|
8
5
|
module Fetching
|
|
9
|
-
# @return [Addressable::URI]
|
|
10
|
-
def entity_root_url_suffix
|
|
11
|
-
parent_entity.if_present('', &:entity_root_url_suffix).to_uri
|
|
12
|
-
end
|
|
13
|
-
|
|
14
6
|
# @param url_suffix [Addressable::URI]
|
|
15
7
|
# @return [EacRest::Request]
|
|
16
8
|
def request(url_suffix)
|
|
17
|
-
|
|
9
|
+
request_json(url_suffix)
|
|
18
10
|
end
|
|
19
11
|
|
|
20
12
|
# @param url_suffix [Addressable::URI]
|
|
21
|
-
# @return [
|
|
22
|
-
def
|
|
23
|
-
|
|
13
|
+
# @return [EacRest::Request]
|
|
14
|
+
def request_json(url_suffix = '')
|
|
15
|
+
api.request_json(to_api_address_suffix(url_suffix))
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
# @return [String]
|
|
19
|
+
def to_api_address_suffix(url_suffix = '')
|
|
20
|
+
r = [to_api_address_suffix_self, url_suffix].join
|
|
21
|
+
r = parent_entity.to_api_address_suffix(r) if parent_entity
|
|
22
|
+
r
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
# @return [String]
|
|
26
|
+
def to_api_address_suffix_self
|
|
27
|
+
raise_abstract_method __method__
|
|
24
28
|
end
|
|
25
29
|
end
|
|
26
30
|
end
|
data/lib/eac_rest/entity.rb
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
require 'eac_ruby_utils/core_ext'
|
|
4
|
-
|
|
5
3
|
module EacRest
|
|
6
4
|
class Entity
|
|
7
5
|
enable_abstract_methods
|
|
@@ -18,13 +16,6 @@ module EacRest
|
|
|
18
16
|
end
|
|
19
17
|
end
|
|
20
18
|
|
|
21
|
-
# @param entity_class [Class]
|
|
22
|
-
# @param url_suffix [String]
|
|
23
|
-
# @return [EacRest::Entity]
|
|
24
|
-
def child_entity(entity_class, data_or_id, options = {})
|
|
25
|
-
api.entity(entity_class, data_or_id, options.merge(OPTION_PARENT => self))
|
|
26
|
-
end
|
|
27
|
-
|
|
28
19
|
# @return [EacRest::Entity, nil]
|
|
29
20
|
def parent_entity
|
|
30
21
|
options[OPTION_PARENT]
|
data/lib/eac_rest/helper.rb
CHANGED
data/lib/eac_rest/request.rb
CHANGED
data/lib/eac_rest/response.rb
CHANGED
data/lib/eac_rest/version.rb
CHANGED
data/lib/eac_rest.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: eac_rest
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.13.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Eduardo H. Bogoni
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2026-04-09 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: eac_envs-http
|
|
@@ -16,58 +16,76 @@ dependencies:
|
|
|
16
16
|
requirements:
|
|
17
17
|
- - "~>"
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: '0.
|
|
19
|
+
version: '0.7'
|
|
20
|
+
- - ">="
|
|
21
|
+
- !ruby/object:Gem::Version
|
|
22
|
+
version: 0.7.1
|
|
20
23
|
type: :runtime
|
|
21
24
|
prerelease: false
|
|
22
25
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
26
|
requirements:
|
|
24
27
|
- - "~>"
|
|
25
28
|
- !ruby/object:Gem::Version
|
|
26
|
-
version: '0.
|
|
29
|
+
version: '0.7'
|
|
30
|
+
- - ">="
|
|
31
|
+
- !ruby/object:Gem::Version
|
|
32
|
+
version: 0.7.1
|
|
27
33
|
- !ruby/object:Gem::Dependency
|
|
28
34
|
name: eac_fs
|
|
29
35
|
requirement: !ruby/object:Gem::Requirement
|
|
30
36
|
requirements:
|
|
31
37
|
- - "~>"
|
|
32
38
|
- !ruby/object:Gem::Version
|
|
33
|
-
version: '0.
|
|
39
|
+
version: '0.20'
|
|
40
|
+
- - ">="
|
|
41
|
+
- !ruby/object:Gem::Version
|
|
42
|
+
version: 0.20.1
|
|
34
43
|
type: :runtime
|
|
35
44
|
prerelease: false
|
|
36
45
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
46
|
requirements:
|
|
38
47
|
- - "~>"
|
|
39
48
|
- !ruby/object:Gem::Version
|
|
40
|
-
version: '0.
|
|
49
|
+
version: '0.20'
|
|
50
|
+
- - ">="
|
|
51
|
+
- !ruby/object:Gem::Version
|
|
52
|
+
version: 0.20.1
|
|
41
53
|
- !ruby/object:Gem::Dependency
|
|
42
54
|
name: eac_ruby_utils
|
|
43
55
|
requirement: !ruby/object:Gem::Requirement
|
|
44
56
|
requirements:
|
|
45
57
|
- - "~>"
|
|
46
58
|
- !ruby/object:Gem::Version
|
|
47
|
-
version: '0.
|
|
59
|
+
version: '0.130'
|
|
48
60
|
type: :runtime
|
|
49
61
|
prerelease: false
|
|
50
62
|
version_requirements: !ruby/object:Gem::Requirement
|
|
51
63
|
requirements:
|
|
52
64
|
- - "~>"
|
|
53
65
|
- !ruby/object:Gem::Version
|
|
54
|
-
version: '0.
|
|
66
|
+
version: '0.130'
|
|
55
67
|
- !ruby/object:Gem::Dependency
|
|
56
68
|
name: eac_ruby_gem_support
|
|
57
69
|
requirement: !ruby/object:Gem::Requirement
|
|
58
70
|
requirements:
|
|
59
71
|
- - "~>"
|
|
60
72
|
- !ruby/object:Gem::Version
|
|
61
|
-
version: '0.
|
|
73
|
+
version: '0.12'
|
|
74
|
+
- - ">="
|
|
75
|
+
- !ruby/object:Gem::Version
|
|
76
|
+
version: 0.12.2
|
|
62
77
|
type: :development
|
|
63
78
|
prerelease: false
|
|
64
79
|
version_requirements: !ruby/object:Gem::Requirement
|
|
65
80
|
requirements:
|
|
66
81
|
- - "~>"
|
|
67
82
|
- !ruby/object:Gem::Version
|
|
68
|
-
version: '0.
|
|
69
|
-
|
|
70
|
-
|
|
83
|
+
version: '0.12'
|
|
84
|
+
- - ">="
|
|
85
|
+
- !ruby/object:Gem::Version
|
|
86
|
+
version: 0.12.2
|
|
87
|
+
description:
|
|
88
|
+
email:
|
|
71
89
|
executables: []
|
|
72
90
|
extensions: []
|
|
73
91
|
extra_rdoc_files: []
|
|
@@ -75,6 +93,7 @@ files:
|
|
|
75
93
|
- lib/eac_rest.rb
|
|
76
94
|
- lib/eac_rest/api.rb
|
|
77
95
|
- lib/eac_rest/entity.rb
|
|
96
|
+
- lib/eac_rest/entity/children.rb
|
|
78
97
|
- lib/eac_rest/entity/data.rb
|
|
79
98
|
- lib/eac_rest/entity/fetching.rb
|
|
80
99
|
- lib/eac_rest/error.rb
|
|
@@ -82,10 +101,10 @@ files:
|
|
|
82
101
|
- lib/eac_rest/request.rb
|
|
83
102
|
- lib/eac_rest/response.rb
|
|
84
103
|
- lib/eac_rest/version.rb
|
|
85
|
-
homepage:
|
|
104
|
+
homepage:
|
|
86
105
|
licenses: []
|
|
87
106
|
metadata: {}
|
|
88
|
-
post_install_message:
|
|
107
|
+
post_install_message:
|
|
89
108
|
rdoc_options: []
|
|
90
109
|
require_paths:
|
|
91
110
|
- lib
|
|
@@ -100,8 +119,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
100
119
|
- !ruby/object:Gem::Version
|
|
101
120
|
version: '0'
|
|
102
121
|
requirements: []
|
|
103
|
-
rubygems_version: 3.
|
|
104
|
-
signing_key:
|
|
122
|
+
rubygems_version: 3.4.19
|
|
123
|
+
signing_key:
|
|
105
124
|
specification_version: 4
|
|
106
125
|
summary: A REST helper for Ruby.
|
|
107
126
|
test_files: []
|