raas-client-rails 0.1.3 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b7b6a84b9056a678c04d3ccda0b3e9e51f088ce762ff66f220290759dfa68581
4
- data.tar.gz: 1078171ee29459bca2475b20b36e1aa4ec66ca12aeb1f6a9c261d3d325dedc25
3
+ metadata.gz: 87ef9e3d0ac5352f339eb54381946d31c686e346624ed8ea2f83d2d6af828eca
4
+ data.tar.gz: dfc5e841be021daf7765872d278a911f8e5a0342700284d7d063e4b3b4411059
5
5
  SHA512:
6
- metadata.gz: a29156150876b44a236747e93ed2a0cd7b673dc3db0d432edf1213fdf63045f1811932c8f398a7f73b9049fa7e3e52f5bdc7965e78da34213e96fb73d0597010
7
- data.tar.gz: d8c97c5576fca515e38ac04ebcd17df908bff8d323c673f1d39293e7467f21b25136b197b4a1cb4b21e29ccac23ed88ff265651198abcce1de32e9d8d6e609ca
6
+ metadata.gz: 0b030baa89b5745cecae093dbb066bd1c3bc032926571162695c67cb9631b204189b68fd9c10fdc56f011b5349e23fb57d1c413ae9856e1f4c47fd7f0ffd4b0b
7
+ data.tar.gz: f762f6cd1d17d6708db7c32dd9244d8619a9ddf80fc02fd24b3050e69b794aa2a4917d41fa5bb1873b3019add43c19e558b22bb01706dfd5b96116b07fbf3fd1
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Raas::Client::Rails
2
2
 
3
- Adding extra endpoints to access RaaS. These endpoints allows you to fetch external token to access RaaS or enables you to invoke specific functions through them.
3
+ Adding client to access Raas. This client allows you to call Raas API.
4
4
 
5
5
  ## Usage
6
6
 
@@ -21,11 +21,10 @@ This condifuration is **mandatory** please, do not forget before you start inter
21
21
 
22
22
  ### APIs
23
23
 
24
- Once you install your gem, your application has several extra endpoints to interact with RaaS.
24
+ Once you install gem and set it up, your application has several extra endpoints to interact with RaaS.
25
25
 
26
26
  - `/raas/report/session` : Generate external session by using your credentials for report
27
- - `/raas/datatraveler/session` : Generate external session by using your credentials for report
28
- - `/raas/health` : Ask RaaS to get current health condition
27
+ - `/raas/datatraveler/session` : Generate external session by using your credentials for datatraveler
29
28
 
30
29
  ## Installation
31
30
 
@@ -44,17 +43,34 @@ gem "raas-client-rails"
44
43
  $ bundle install
45
44
  ```
46
45
 
47
- 3. mount endPoint on `config/routes.rb`
46
+ 3. implement raas_controller.rb
48
47
 
49
48
  ```ruby
50
- mount Raas::Client::Rails::Engine => "[PATH]"
49
+ class RaasController < Raas::Client::Rails::RaasController
50
+ skip_before_action :verify_authenticity_token
51
+
52
+ def prepare_tenant_and_sub
53
+ super
54
+
55
+ @tenant = "xxxxx"
56
+ @sub = "xxxx"
57
+ end
58
+ end
59
+ ```
60
+
61
+ 3. add endPoint on `config/routes.rb`
62
+
63
+ ```ruby
64
+ post '/raas/datatraveler/session', to: 'raas#datatraveler_session'
65
+ post '/raas/report/session', to: 'raas#report_session'
51
66
  ```
52
67
 
53
68
  4. Launch your rails server
54
69
 
55
70
  5. then you can use this with...
56
71
 
57
- `/PATH/raas/endPointList`
72
+ `/raas/datatraveler/session`
73
+ `/raas/report/session`
58
74
 
59
75
  ## License
60
76
  All the patents belong to SuTech
@@ -1,136 +1,8 @@
1
1
  module Raas::Client::Rails
2
-
3
- require_relative 'rest_client'
4
2
 
5
- class RaasController < ApplicationController
6
-
7
- MSA_REPORT = "report";
8
- MSA_DT = "datatraveler";
9
-
10
- #/raas/health
11
- def health()
12
- prepare(params)
13
- render plain: "Moving #{@tenant}/#{@sub}";
14
- end
15
-
16
- def prepare(params)
17
- @backUrl = params[:backUrl]
18
- @subUrl = params[:subUrl]
19
- prepare_tenant_and_sub()
20
- @restClient = RestClient.new(@tenant, @sub)
21
- end
22
-
23
- def prepare_tenant_and_sub()
24
- # For Overload
25
- @tenant = params[:tenant]
26
- @sub = params[:sub]
27
- end
28
-
29
- def report_session()
30
- Rails.logger.warn("session parameter=#{params}");
31
- prepare(params)
32
- response = @restClient.createExternalSession(MSA_REPORT,@backUrl,@subUrl)
33
- render json: response.body
34
- end
35
-
36
- def datatraveler_session()
37
- Rails.logger.warn("session parameter=#{params}")
38
- prepare(params)
39
- response = @restClient.createExternalSession(MSA_DT,@backUrl,@subUrl)
40
- render json: response.body
41
- end
42
-
43
- MIME_TYPE_HTML = "html"
44
- MIME_TYPE_FILE = "file"
45
- MIME_TYPE_JSON = "json"
46
-
47
- #/raas/get
48
- def get()
49
- prepare(params)
50
- path = params[:path]
51
- parameters = params[:parameters]
52
- mimeType = params[:mimeType]
53
- fileName = params[:fileName]
54
- type = params[:type]
55
- #by default return HTML
56
- if mimeType.nil?
57
- mimeType = MIME_TYPE_HTML
58
- end
59
- #by default return download.pdf
60
- if fileName.nil?
61
- fileName = "download"
62
- end
63
- if type.nil?
64
- type = "application/pdf"
65
- end
66
- #by default empty Hash if nothing is assigned
67
- if parameters.nil?
68
- payload = Hash.new
69
- else
70
- payload = parameters
71
- end
72
- Rails.logger.warn("get path=#{path} parameters=#{payload}");
73
- response = @restClient.get(path,payload)
74
- handleMime(mimeType, fileName, type, response)
75
- end
76
-
77
- # How you return the value? This can be changed by passing mimeType through parameter
78
- def handleMime(mimeType, fileName,type, response)
79
- case mimeType
80
- when MIME_TYPE_HTML
81
- #sanitize response automatically
82
- render html: response.body
83
- when MIME_TYPE_JSON
84
- render json: response.body
85
- when MIME_TYPE_FILE
86
- send_data(response, filename: fileName, type: type)
87
- end
88
- # p "#{fileName} #{type} #{mimeType}"
89
- end
90
-
91
- #/raas/delete
92
- def delete()
93
- prepare(params)
94
- path = params[:path]
95
- parameters = params[:parameters]
96
- if parameters.nil?
97
- payload = nil
98
- else
99
- payload = JSON.parse(parameters)
100
- end
101
- Rails.logger.warn("delete path=#{path} parameters=#{parameters}");
102
- return @restClient.delete(path,payload)
103
- end
104
-
105
- #/raas/post
106
- def post()
107
- prepare(params)
108
- path = params[:path]
109
- requestBody = params[:requestbody]
110
- if requestBody.nil?
111
- payload = nil
112
- else
113
- payload = JSON.parse(requestBody)
114
- end
115
- Rails.logger.warn("post path=#{path} requestBody=#{requestBody}");
116
- response = @restClient.post(path,payload)
117
- return response.body;
118
- end
119
-
120
- #/raas/put
121
- def put()
122
- prepare(params)
123
- path = params[:path]
124
- requestBody = params[:requestbody]
125
- if requestBody.nil?
126
- payload = nil
127
- else
128
- payload = JSON.parse(requestBody)
129
- end
130
- Rails.logger.warn("post path=#{path} requestBody=#{requestBody}");
131
- response = @restClient.put(path,payload)
132
- return response.body;
133
- end
3
+ require_relative 'raas_controller_module'
134
4
 
5
+ class RaasController < ApplicationController
6
+ include RaasControllerModule
135
7
  end
136
8
  end
@@ -0,0 +1,136 @@
1
+ module Raas::Client::Rails
2
+
3
+ require_relative 'rest_client'
4
+
5
+ class RaasController < ApplicationController
6
+
7
+ MSA_REPORT = "report";
8
+ MSA_DT = "datatraveler";
9
+
10
+ #/raas/health
11
+ def health()
12
+ prepare(params)
13
+ render plain: "Moving #{@tenant}/#{@sub}";
14
+ end
15
+
16
+ def prepare(params)
17
+ @backUrl = params[:backUrl]
18
+ @subUrl = params[:subUrl]
19
+ prepare_tenant_and_sub()
20
+ @restClient = RestClient.new(@tenant, @sub)
21
+ end
22
+
23
+ def prepare_tenant_and_sub()
24
+ # For Overload
25
+ @tenant = params[:tenant]
26
+ @sub = params[:sub]
27
+ end
28
+
29
+ def report_session()
30
+ Rails.logger.warn("session parameter=#{params}");
31
+ prepare(params)
32
+ response = @restClient.createExternalSession(MSA_REPORT,@backUrl,@subUrl)
33
+ render json: response.body
34
+ end
35
+
36
+ def datatraveler_session()
37
+ Rails.logger.warn("session parameter=#{params}")
38
+ prepare(params)
39
+ response = @restClient.createExternalSession(MSA_DT,@backUrl,@subUrl)
40
+ render json: response.body
41
+ end
42
+
43
+ MIME_TYPE_HTML = "html"
44
+ MIME_TYPE_FILE = "file"
45
+ MIME_TYPE_JSON = "json"
46
+
47
+ #/raas/get
48
+ def get()
49
+ prepare(params)
50
+ path = params[:path]
51
+ parameters = params[:parameters]
52
+ mimeType = params[:mimeType]
53
+ fileName = params[:fileName]
54
+ type = params[:type]
55
+ #by default return HTML
56
+ if mimeType.nil?
57
+ mimeType = MIME_TYPE_HTML
58
+ end
59
+ #by default return download.pdf
60
+ if fileName.nil?
61
+ fileName = "download"
62
+ end
63
+ if type.nil?
64
+ type = "application/pdf"
65
+ end
66
+ #by default empty Hash if nothing is assigned
67
+ if parameters.nil?
68
+ payload = Hash.new
69
+ else
70
+ payload = parameters
71
+ end
72
+ Rails.logger.warn("get path=#{path} parameters=#{payload}");
73
+ response = @restClient.get(path,payload)
74
+ handleMime(mimeType, fileName, type, response)
75
+ end
76
+
77
+ # How you return the value? This can be changed by passing mimeType through parameter
78
+ def handleMime(mimeType, fileName,type, response)
79
+ case mimeType
80
+ when MIME_TYPE_HTML
81
+ #sanitize response automatically
82
+ render html: response.body
83
+ when MIME_TYPE_JSON
84
+ render json: response.body
85
+ when MIME_TYPE_FILE
86
+ send_data(response, filename: fileName, type: type)
87
+ end
88
+ # p "#{fileName} #{type} #{mimeType}"
89
+ end
90
+
91
+ #/raas/delete
92
+ def delete()
93
+ prepare(params)
94
+ path = params[:path]
95
+ parameters = params[:parameters]
96
+ if parameters.nil?
97
+ payload = nil
98
+ else
99
+ payload = JSON.parse(parameters)
100
+ end
101
+ Rails.logger.warn("delete path=#{path} parameters=#{parameters}");
102
+ return @restClient.delete(path,payload)
103
+ end
104
+
105
+ #/raas/post
106
+ def post()
107
+ prepare(params)
108
+ path = params[:path]
109
+ requestBody = params[:requestbody]
110
+ if requestBody.nil?
111
+ payload = nil
112
+ else
113
+ payload = JSON.parse(requestBody)
114
+ end
115
+ Rails.logger.warn("post path=#{path} requestBody=#{requestBody}");
116
+ response = @restClient.post(path,payload)
117
+ return response.body;
118
+ end
119
+
120
+ #/raas/put
121
+ def put()
122
+ prepare(params)
123
+ path = params[:path]
124
+ requestBody = params[:requestbody]
125
+ if requestBody.nil?
126
+ payload = nil
127
+ else
128
+ payload = JSON.parse(requestBody)
129
+ end
130
+ Rails.logger.warn("post path=#{path} requestBody=#{requestBody}");
131
+ response = @restClient.put(path,payload)
132
+ return response.body;
133
+ end
134
+
135
+ end
136
+ end
@@ -1,7 +1,7 @@
1
1
  module Raas
2
2
  module Client
3
3
  module Rails
4
- VERSION = "0.1.3"
4
+ VERSION = "0.1.4"
5
5
  end
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: raas-client-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sunao Suzuki
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-10-20 00:00:00.000000000 Z
11
+ date: 2023-12-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -38,6 +38,7 @@ files:
38
38
  - app/assets/stylesheets/raas/client/rails/application.css
39
39
  - app/controllers/raas/client/rails/application_controller.rb
40
40
  - app/controllers/raas/client/rails/raas_controller.rb
41
+ - app/controllers/raas/client/rails/raas_controller_module.rb
41
42
  - app/controllers/raas/client/rails/rest_client.rb
42
43
  - app/helpers/raas/client/rails/application_helper.rb
43
44
  - app/helpers/raas/client/rails/raa_s_helper.rb