stellar_base-rails 0.9.4 → 0.9.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/concepts/stellar_base/withdrawal_requests/operations/create.rb +6 -0
- data/app/controllers/stellar_base/withdraw_controller.rb +1 -1
- data/app/services/stellar_base/account_subscriptions/get_operations.rb +4 -3
- data/app/services/stellar_base/deposit_requests/send_asset.rb +2 -3
- data/db/migrate/20181013072141_ensure_deposits_tx_id_uniqueness.rb +10 -0
- data/lib/stellar_base/version.rb +1 -1
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7d46d85f2dc7b2aae1b07e4a4a8e14438492daed928984280164d555e14dd867
|
4
|
+
data.tar.gz: 75f22ebee9475714b891fa8bfc3c76bfe224d5236b81ac82a0be403117f4d8b3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 00af460fe3e90e786c68e8854b877eb8b74ded926238f00feccbde764c8c8cd05ec26083b079e922227342cddfd6f8f6ea32f866a989567292cd1b110fcf75a8
|
7
|
+
data.tar.gz: 63701fb3cbb3bc43c7c92f4b20d6efda1c0cc6b13fcaa8173fadeaecca0105273de7745776ab55e8d7dac4aa49a0ede6b71d40373e56feee2b7c212aa4524a28
|
@@ -4,8 +4,10 @@ module StellarBase
|
|
4
4
|
class Create < ApplicationOperation
|
5
5
|
|
6
6
|
DEFAULT_ETA = (10 * 60).freeze
|
7
|
+
POLICY_ERROR_MESSAGE = "You are unauthorized to request withdrawal details"
|
7
8
|
|
8
9
|
step self::Policy::Pundit(WithdrawalRequestPolicy, :create?)
|
10
|
+
failure :set_policy_error!
|
9
11
|
step Model(WithdrawalRequest, :new)
|
10
12
|
step :setup_params!
|
11
13
|
step Contract::Build(constant: Contracts::Create)
|
@@ -17,6 +19,10 @@ module StellarBase
|
|
17
19
|
|
18
20
|
private
|
19
21
|
|
22
|
+
def set_policy_error!(options, params:, **)
|
23
|
+
options["result.policy.message"] = POLICY_ERROR_MESSAGE
|
24
|
+
end
|
25
|
+
|
20
26
|
def setup_params!(options, params:, **)
|
21
27
|
params[:withdrawal_request].merge!({
|
22
28
|
asset_type: params[:withdrawal_request][:type],
|
@@ -12,13 +12,14 @@ module StellarBase
|
|
12
12
|
promises :operations
|
13
13
|
|
14
14
|
executed do |c|
|
15
|
+
address = c.account_subscription.address
|
16
|
+
|
15
17
|
c.operations = c.stellar_sdk_client.horizon
|
16
|
-
.account(account_id:
|
18
|
+
.account(account_id: address)
|
17
19
|
.operations(order: "asc", limit: c.operation_limit).records
|
18
20
|
|
19
21
|
if c.operations.empty?
|
20
|
-
c.fail_and_return! "No operations found "
|
21
|
-
"for #{c.account_subscription.address}"
|
22
|
+
c.fail_and_return! "No operations found for #{address}"
|
22
23
|
end
|
23
24
|
rescue Faraday::ClientError => e
|
24
25
|
c.fail_and_return! "Skipping fetching operations of #{address} " \
|
@@ -34,9 +34,8 @@ module StellarBase
|
|
34
34
|
|
35
35
|
c.stellar_tx_id = response.to_hash["hash"]
|
36
36
|
rescue Faraday::ClientError => e
|
37
|
-
c.
|
38
|
-
|
39
|
-
"Faraday::ClientError: #{e.message}"
|
37
|
+
c.fail_and_return! "Error sending the asset. " \
|
38
|
+
"Faraday::ClientError: #{e.inspect}"
|
40
39
|
end
|
41
40
|
end
|
42
41
|
|
@@ -0,0 +1,10 @@
|
|
1
|
+
class CreateStellarBaseAccountSubscriptions < ActiveRecord::Migration[5.2]
|
2
|
+
def change
|
3
|
+
create_table :stellar_base_account_subscriptions do |t|
|
4
|
+
t.string :address, null: false
|
5
|
+
t.string :cursor
|
6
|
+
t.index :address, unique: true
|
7
|
+
t.timestamps
|
8
|
+
end
|
9
|
+
end
|
10
|
+
end
|
data/lib/stellar_base/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: stellar_base-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ace Subido
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-10-
|
11
|
+
date: 2018-10-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: disposable
|
@@ -430,6 +430,7 @@ files:
|
|
430
430
|
- db/migrate/20180925045927_create_stellar_base_deposit_requests.rb
|
431
431
|
- db/migrate/20181001070647_create_stellar_base_deposits.rb
|
432
432
|
- db/migrate/20181003072138_create_stellar_base_account_subscriptions.rb
|
433
|
+
- db/migrate/20181013072141_ensure_deposits_tx_id_uniqueness.rb
|
433
434
|
- lib/stellar_base-rails.rb
|
434
435
|
- lib/stellar_base.rb
|
435
436
|
- lib/stellar_base/engine.rb
|
@@ -463,7 +464,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
463
464
|
version: '0'
|
464
465
|
requirements: []
|
465
466
|
rubyforge_project:
|
466
|
-
rubygems_version: 2.7.
|
467
|
+
rubygems_version: 2.7.7
|
467
468
|
signing_key:
|
468
469
|
specification_version: 4
|
469
470
|
summary: Mountable Stellar API Endpoints for Rails
|