rubypitaya 3.3.2 → 3.3.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/rubypitaya/app-template/Gemfile +1 -1
- data/lib/rubypitaya/app-template/Gemfile.lock +2 -2
- data/lib/rubypitaya/core/application_files_importer.rb +4 -1
- data/lib/rubypitaya/core/handler_router.rb +4 -1
- data/lib/rubypitaya/core/main.rb +17 -12
- data/lib/rubypitaya/core/route_error.rb +2 -0
- data/lib/rubypitaya/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 534b8bf854794eab64b53a7f550a18a8bc60b0f13b41ba8f75dba4e58506d319
|
4
|
+
data.tar.gz: b76c9e552bdc04d4bdcfabafa94eeeeda84fca483dec6df5c00cbd74c43e0816
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0420eda040f59d7d06913e3352faea670f19536d3435c9e3c2094986ec4bd8b81f2272cd1845e05791695ac610713e652a3985b2e62147b1b66d57e19bed220f
|
7
|
+
data.tar.gz: f0f2da6df0dbd54511b0eab8eacbcd98bd07a03a2e285bbd1cd1fb1d8692f71866252f8000a04af5937dfeee25aeacb6e4c834eac14a99115e6a9c64799ccd12
|
@@ -103,7 +103,7 @@ GEM
|
|
103
103
|
rspec-support (~> 3.10.0)
|
104
104
|
rspec-support (3.10.3)
|
105
105
|
ruby2_keywords (0.0.5)
|
106
|
-
rubypitaya (3.3.
|
106
|
+
rubypitaya (3.3.6)
|
107
107
|
activerecord (= 6.1.4.1)
|
108
108
|
etcdv3 (= 0.11.4)
|
109
109
|
google-protobuf (= 3.18.1)
|
@@ -143,7 +143,7 @@ DEPENDENCIES
|
|
143
143
|
listen (= 3.7.0)
|
144
144
|
pry (= 0.14.1)
|
145
145
|
rspec (= 3.10.0)
|
146
|
-
rubypitaya (= 3.3.
|
146
|
+
rubypitaya (= 3.3.6)
|
147
147
|
sinatra-contrib (= 2.1.0)
|
148
148
|
|
149
149
|
BUNDLED WITH
|
@@ -4,12 +4,15 @@ module RubyPitaya
|
|
4
4
|
|
5
5
|
class ApplicationFilesImporter
|
6
6
|
|
7
|
-
def import
|
7
|
+
def import(is_cheats_enabled)
|
8
8
|
app_folder_paths = Path::Plugins::APP_FOLDER_PATHS + [Path::Core::APP_FOLDER_PATH, Path::APP_FOLDER_PATH]
|
9
9
|
|
10
10
|
app_folder_paths.each do |app_folder_path|
|
11
11
|
app_files_path = "#{app_folder_path}/**/*.rb"
|
12
12
|
|
13
|
+
gem_files = Gem.find_files(app_files_path)
|
14
|
+
gem_files = gem_files.select { |a| !a[/.+_cheats.rb/] && !a[/.+_cheat.rb/] } unless is_cheats_enabled
|
15
|
+
|
13
16
|
Gem.find_files(app_files_path).each do |path|
|
14
17
|
require path unless path.include?('app/migrations')
|
15
18
|
end
|
@@ -45,7 +45,10 @@ module RubyPitaya
|
|
45
45
|
|
46
46
|
def import_handler_classes
|
47
47
|
handler_classes = ObjectSpace.each_object(HandlerBase.singleton_class).select do |klass|
|
48
|
-
|
48
|
+
class_name = klass.to_s.downcase
|
49
|
+
is_cheat_class = class_name.end_with?('cheat') || class_name.end_with?('cheats')
|
50
|
+
|
51
|
+
klass != HandlerBase && (@is_cheats_enabled || !is_cheat_class)
|
49
52
|
end
|
50
53
|
|
51
54
|
@handlers = handler_classes.map { |handler_class| handler_class.new }
|
data/lib/rubypitaya/core/main.rb
CHANGED
@@ -10,6 +10,7 @@ require 'rubypitaya/core/session'
|
|
10
10
|
require 'rubypitaya/core/postman'
|
11
11
|
require 'rubypitaya/core/parameters'
|
12
12
|
require 'rubypitaya/core/http_routes'
|
13
|
+
require 'rubypitaya/core/route_error'
|
13
14
|
require 'rubypitaya/core/routes_base'
|
14
15
|
require 'rubypitaya/core/status_codes'
|
15
16
|
require 'rubypitaya/core/handler_router'
|
@@ -31,6 +32,7 @@ module RubyPitaya
|
|
31
32
|
def initialize
|
32
33
|
@setup = Setup.new
|
33
34
|
@environment_name = @setup.fetch('rubypitaya.server.environment', 'development')
|
35
|
+
@is_cheats_enabled = @setup.fetch('rubypitaya.server.cheats', false)
|
34
36
|
@is_development_environment = @environment_name == 'development'
|
35
37
|
@setup.auto_reload if @is_development_environment
|
36
38
|
|
@@ -41,7 +43,7 @@ module RubyPitaya
|
|
41
43
|
end
|
42
44
|
|
43
45
|
@application_files_importer = ApplicationFilesImporter.new
|
44
|
-
@application_files_importer.import
|
46
|
+
@application_files_importer.import(@is_cheats_enabled)
|
45
47
|
@application_files_importer.auto_reload if @is_development_environment
|
46
48
|
|
47
49
|
@server_name = @setup['rubypitaya.server.name']
|
@@ -93,7 +95,6 @@ module RubyPitaya
|
|
93
95
|
@initializer_broadcast = InitializerBroadcast.new
|
94
96
|
@initializer_broadcast.run(@initializer_content)
|
95
97
|
|
96
|
-
@is_cheats_enabled = @setup.fetch('rubypitaya.server.cheats', false)
|
97
98
|
@handler_router = HandlerRouter.new(@is_cheats_enabled)
|
98
99
|
|
99
100
|
run_http
|
@@ -179,10 +180,20 @@ module RubyPitaya
|
|
179
180
|
|
180
181
|
@config.clear_cache
|
181
182
|
|
182
|
-
response =
|
183
|
-
|
184
|
-
|
185
|
-
|
183
|
+
response = {}
|
184
|
+
|
185
|
+
begin
|
186
|
+
response = @handler_router.call(handler_name, action_name, @session,
|
187
|
+
@postman, @redis_connector.redis,
|
188
|
+
@mongo_connector.mongo, @setup, @config,
|
189
|
+
@log, params)
|
190
|
+
rescue RouteError => error
|
191
|
+
@log.error "ROUTE ERROR: #{error.class} | #{error.message}} \n #{error.backtrace.join("\n")}"
|
192
|
+
response = {
|
193
|
+
code: error.code,
|
194
|
+
message: error.message
|
195
|
+
}
|
196
|
+
end
|
186
197
|
|
187
198
|
delta_time_seconds = ((Time.now.to_f - start_time_seconds) * 1000).round(2)
|
188
199
|
|
@@ -190,12 +201,6 @@ module RubyPitaya
|
|
190
201
|
|
191
202
|
response
|
192
203
|
end
|
193
|
-
rescue RouteError => error
|
194
|
-
@log.error "ROUTE ERROR: #{error.class} | #{error.message}} \n #{error.backtrace.join("\n")}"
|
195
|
-
response = {
|
196
|
-
code: error.code,
|
197
|
-
message: error.message
|
198
|
-
}
|
199
204
|
rescue Exception => error
|
200
205
|
@log.error "INTERNAL ERROR: #{error.class} | #{error.message}} \n #{error.backtrace.join("\n")}"
|
201
206
|
run_nats_connection
|
data/lib/rubypitaya/version.rb
CHANGED