c80_shared 0.1.6 → 0.1.7

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 282f4b1ba68f13873f052665d01206c63a4fdfbc8274b5dcf981f315cf6a6642
4
- data.tar.gz: 746dad08797f3de65414654d371b3c38a022a770a0235f1d94ec2a8806cb4901
3
+ metadata.gz: c2b4dfa33343a45cca8c8d1d52990d1d82c1cce11cf6a09ac98bf60d0a744955
4
+ data.tar.gz: 5ea8c249a86cf053ddd00aa5e023c42a7d3aa72d8f2e4673adbbe7943d51be21
5
5
  SHA512:
6
- metadata.gz: faf61373770b77b783fa9a32f001691c1ed4f3698f548469e94a4612ef4a00d441dc8d75b0be3fc6f7bff567d5e0ed13be1186af5cdf5c50835b31d3a25d606b
7
- data.tar.gz: 6bcccb150b0b498eb034957313bce8dd2a90ed97bf5fb5b4130ae7fae4376983ae38631f444e39811923d355a739250fcd3c0ee3f96966bc722a74b1d9fe5043
6
+ metadata.gz: 1799be6ad06c90ea5f62cde9350ce4affa7c7e47bbf3c54461f6c61d54b976381b45938f6f7d7cfe9873ae4763b5836aebe7fc303c15edb126d13089843e0cc0
7
+ data.tar.gz: 7599f414641c647a7b1e1747a3ad3c18e573a2e6b62d0196b4032bc1b2a53a178912969ef3b136cd4d99c2f60c185a3b7eb47e69ee9ccad90042db7fd0757b1a
@@ -0,0 +1,19 @@
1
+ module AASM
2
+ module HandleEvent
3
+ # Конечный автомат принимает событие и AASM переводит модель в нужное состояние.
4
+ #
5
+ # Метод создан с целью изоляции зависимости всего остального кода
6
+ # от исключительных ситуаций, генерируемых gem AASM
7
+ def handle_event(event)
8
+ if send('may_%s?' % event) # сначала проверим, можем ли перейти в такое состояние
9
+ send event # шлём event (меняется состояние Предложения)
10
+ return true
11
+ end
12
+ false
13
+ rescue NoMethodError, AASM::InvalidTransition
14
+ errors.add :not_updated, I18n.t('activerecord.errors.not_updated')
15
+ Rails.logger.warn '[InquiryStates.handle_event] Unknown event %s.' % event
16
+ false
17
+ end
18
+ end
19
+ end
@@ -1,3 +1,3 @@
1
1
  module C80Shared
2
- VERSION = "0.1.6"
2
+ VERSION = "0.1.7"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: c80_shared
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 0.1.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - C80609A
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-11-19 00:00:00.000000000 Z
11
+ date: 2018-11-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -72,6 +72,7 @@ files:
72
72
  - config/locales/rent_skip_type/en.yml
73
73
  - config/locales/rent_skip_type/ru.yml
74
74
  - lib/c80_shared.rb
75
+ - lib/c80_shared/aasm/handle_event.rb
75
76
  - lib/c80_shared/abstract_serializer.rb
76
77
  - lib/c80_shared/dict.rb
77
78
  - lib/c80_shared/engine.rb