state_machina 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: f1ce6ace127413c5e3ea50cc6163740defad6f378f3485716cbbd8bcd1e301bd
4
- data.tar.gz: a42a94cb064e593a95f9d4d13750ce3dc850e51b2882570749ca03b4df667c94
3
+ metadata.gz: f91cfe9ff343cb7dfb2634ecc825a061ad776661216de23a6e04e8824710d959
4
+ data.tar.gz: d8363c7847375ec9b9c95d52804017be4aa27fce82cc656a1e7102b4287ab423
5
5
  SHA512:
6
- metadata.gz: c50c65b8264fc4149a0560e3b2ac6cd3d53e6dab4dea14b5731cf50380917b003811a5b0cad2e808772dbc16eef0318601505fe36efe2373a7eadc8765b0aa0d
7
- data.tar.gz: 415f21703f10b5d1094bb8c78972ea47a70a3f152be7d781e38901aee8be75a15229a7a5d088dfdc347ef41db10c58ec50f31c54d024f9d562dc20318a0dd07a
6
+ metadata.gz: 118bed2d86e7f529bd5c395d5a0d988aa29b7fc1532bd989442e97f014a7410df632188c36b7350337c144a487497c9848218442458fe7a9672ac5dc45fd0772
7
+ data.tar.gz: ff587876b7a1f2de84f9b573e044bd17ec0c5dde8a99c662291753fc9fac0bb4859897a390deadad5f55b76b535644d05dbf41df454e295f062dc1fb36ed7de1
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- state_machina (0.1.2)
4
+ state_machina (0.1.4)
5
5
  concurrent-ruby (< 2)
6
6
 
7
7
  GEM
@@ -60,6 +60,14 @@ module StateMachina
60
60
  end
61
61
  end
62
62
 
63
+ def update_state!(new_state)
64
+ if model.respond_to?(:update!)
65
+ model.update!(column_name => new_state)
66
+ else
67
+ model.public_send("#{column_name}=", new_state)
68
+ end
69
+ end
70
+
63
71
  private
64
72
 
65
73
  def select_possible_events(events)
@@ -44,5 +44,11 @@ module StateMachina
44
44
 
45
45
  machine.update_state(to_state_name)
46
46
  end
47
+
48
+ def execute!
49
+ return false if machine.nil?
50
+
51
+ machine.update_state!(to_state_name)
52
+ end
47
53
  end
48
54
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module StateMachina
4
- VERSION = "0.1.3"
4
+ VERSION = "0.1.4"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: state_machina
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
  - Jan van der Pas
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-11-10 00:00:00.000000000 Z
11
+ date: 2023-11-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: concurrent-ruby