avm-eac_github_base0 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: b329c4e5eed8316e69106dd44e5e10c8acb5175945a55e4c4bbba4e00cdaaf68
4
+ data.tar.gz: ad39653a8d4bbfe8155d357ddc0312591ea1c7433b2be3eea6c1764da84a288a
5
+ SHA512:
6
+ metadata.gz: ade9f973d437307946f9ebd5c46f91d5c812d736235fe7f8e8b2f9c969403a4e0c97b9afe7f05f4600e32581453c167efdee1068e6b4dd66405b3258fc6fc092
7
+ data.tar.gz: c1a528dd3c39881d6ef5d62d3e962e5ccf11f5c2f05270ce7c4178c7feb46a81c08f47253ea994b1cb68d178f1528e33ec413090a1bc3bbeef23f698e8124cf4
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_rest/api'
4
+ require 'eac_rest/entity'
5
+ require 'eac_ruby_utils/core_ext'
6
+
7
+ module Avm
8
+ module EacGithubBase0
9
+ class Api < ::EacRest::Api
10
+ class Entity < ::EacRest::Entity
11
+ def all_from_list(entity_class, url_suffix)
12
+ r = []
13
+ while url_suffix.present?
14
+ response = api.request_json(url_suffix).response
15
+ r += response.body_data_or_raise
16
+ .map { |child_data| child_entity(entity_class, child_data) }
17
+ url_suffix = response.link('next')
18
+ end
19
+ r
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_github_base0/api/entity'
4
+ require 'avm/eac_github_base0/api/repository'
5
+ require 'eac_rest/api'
6
+ require 'eac_ruby_utils/core_ext'
7
+
8
+ module Avm
9
+ module EacGithubBase0
10
+ class Api < ::EacRest::Api
11
+ class Organization < ::Avm::EacGithubBase0::Api::Entity
12
+ # @return [Array<Avm::EacGithubBase0::Api::Repository>]
13
+ def repositories
14
+ all_from_list(::Avm::EacGithubBase0::Api::Repository, "/orgs/#{id}/repos")
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_github_base0/api/entity'
4
+ require 'eac_rest/api'
5
+ require 'eac_ruby_utils/core_ext'
6
+
7
+ module Avm
8
+ module EacGithubBase0
9
+ class Api < ::EacRest::Api
10
+ class Repository < ::Avm::EacGithubBase0::Api::Entity
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_github_base0/api/entity'
4
+ require 'avm/eac_github_base0/api/organization'
5
+ require 'eac_rest/api'
6
+ require 'eac_ruby_utils/core_ext'
7
+
8
+ module Avm
9
+ module EacGithubBase0
10
+ class Api < ::EacRest::Api
11
+ class Root < ::Avm::EacGithubBase0::Api::Entity
12
+ # @param id [String]
13
+ # @return [Avm::EacGithubBase0::Api::Organization]
14
+ def organization(id)
15
+ child_entity(::Avm::EacGithubBase0::Api::Organization, id)
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_rest/api'
4
+ require 'eac_ruby_utils/core_ext'
5
+
6
+ module Avm
7
+ module EacGithubBase0
8
+ class Api < ::EacRest::Api
9
+ DEFAULT_ROOT_URL = 'https://api.github.com'
10
+
11
+ def initialize(root_url = DEFAULT_ROOT_URL)
12
+ super(root_url)
13
+ end
14
+
15
+ require_sub __FILE__
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacGithubBase0
5
+ VERSION = '0.1.0'
6
+ end
7
+ end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module Avm
6
+ module EacGithubBase0
7
+ require_sub __FILE__
8
+ end
9
+ end
metadata ADDED
@@ -0,0 +1,102 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: avm-eac_github_base0
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Put here the authors
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2023-10-30 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: eac_rest
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '0.10'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '0.10'
27
+ - !ruby/object:Gem::Dependency
28
+ name: eac_ruby_utils
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '0.119'
34
+ - - ">="
35
+ - !ruby/object:Gem::Version
36
+ version: 0.119.2
37
+ type: :runtime
38
+ prerelease: false
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - "~>"
42
+ - !ruby/object:Gem::Version
43
+ version: '0.119'
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: 0.119.2
47
+ - !ruby/object:Gem::Dependency
48
+ name: eac_ruby_gem_support
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '0.8'
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ version: 0.8.2
57
+ type: :development
58
+ prerelease: false
59
+ version_requirements: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - "~>"
62
+ - !ruby/object:Gem::Version
63
+ version: '0.8'
64
+ - - ">="
65
+ - !ruby/object:Gem::Version
66
+ version: 0.8.2
67
+ description:
68
+ email:
69
+ executables: []
70
+ extensions: []
71
+ extra_rdoc_files: []
72
+ files:
73
+ - lib/avm/eac_github_base0.rb
74
+ - lib/avm/eac_github_base0/api.rb
75
+ - lib/avm/eac_github_base0/api/entity.rb
76
+ - lib/avm/eac_github_base0/api/organization.rb
77
+ - lib/avm/eac_github_base0/api/repository.rb
78
+ - lib/avm/eac_github_base0/api/root.rb
79
+ - lib/avm/eac_github_base0/version.rb
80
+ homepage:
81
+ licenses: []
82
+ metadata: {}
83
+ post_install_message:
84
+ rdoc_options: []
85
+ require_paths:
86
+ - lib
87
+ required_ruby_version: !ruby/object:Gem::Requirement
88
+ requirements:
89
+ - - ">="
90
+ - !ruby/object:Gem::Version
91
+ version: '2.7'
92
+ required_rubygems_version: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ requirements: []
98
+ rubygems_version: 3.1.6
99
+ signing_key:
100
+ specification_version: 4
101
+ summary: Put here de description.
102
+ test_files: []