ruboty-reminder 0.2.1 → 0.2.2

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
  SHA1:
3
- metadata.gz: 93fb18c3e643c38f4af4441b0823494061952f11
4
- data.tar.gz: 82c4b5602bf80e1290b84e4ecad0bf1230737d20
3
+ metadata.gz: 6acf799f433cde582ed11fc78415b45caab44fee
4
+ data.tar.gz: f68942bb7d84268662c3be286b914db85b76aebd
5
5
  SHA512:
6
- metadata.gz: db32f2201a7b285a3d5e2d8c0a968a8809ad3d601a92a38ea2e4c6974f20263cf896b954370e28cbe509071bac6278360a19c8b8e9992f77fae18e6045108e60
7
- data.tar.gz: c45044e3319bd2d338ed800f82c2eb8af40d2861f549864cbeeb1d8e381e430859516267b9c0daba497b82ac15adfd3575061d1d793f0ffb81fabbfea35256d6
6
+ metadata.gz: e8a1dc33cab816ec720fdae9092fdfc12a4de184db572c55a6ee7a739e9146bb1b37da21d57aaf502ba3103b736d1ab672a066d7412b535ef24d6097f0123a37
7
+ data.tar.gz: 6d7117044a5014fdf17470adb23c404aa6615db3790f36abf22c1a894a2d2ef6ea98c34e5f63ea2cf9d12d9c94d8edbce764463d3c76e242d60cf350157962d2
@@ -12,7 +12,7 @@ module Ruboty
12
12
  on /list reminders\z/, name: 'list', description: 'Show all reminders'
13
13
 
14
14
  def initialize(*args)
15
- super
15
+ super(*args)
16
16
  restart
17
17
  end
18
18
 
@@ -56,10 +56,12 @@ module Ruboty
56
56
  message.reply("Reminder #{task.hash[:id]} is created.")
57
57
 
58
58
  reminders[task.hash[:id]] = task.hash
59
+ reminder_threads[task.hash[:id]] = task.thread
59
60
  end
60
61
 
61
62
  def delete(message)
62
63
  if reminders.delete(message[:id].to_i)
64
+ reminder_threads[message[:id].to_i].kill
63
65
  message.reply("Reminder #{message[:id]} is deleted.")
64
66
  else
65
67
  message.reply("Reminder #{message[:id]} is not found.")
@@ -92,6 +94,10 @@ module Ruboty
92
94
  robot.brain.data[Ruboty::Reminder::NAMESPACE] ||= {}
93
95
  end
94
96
 
97
+ def reminder_threads
98
+ @temporary_store ||= {}
99
+ end
100
+
95
101
  def generate_id
96
102
  loop do
97
103
  id = rand(1000)
@@ -1,16 +1,17 @@
1
1
  module Ruboty
2
2
  module Reminder
3
3
  class Task
4
- attr_reader :hash
4
+ attr_reader :hash, :thread
5
5
 
6
6
  def initialize(hash)
7
7
  @hash = hash
8
+ @thread = nil
8
9
  end
9
10
 
10
11
  def start(robot)
11
12
  wait_time = hash[:unixtime] - Time.now.to_i
12
13
 
13
- Thread.start do
14
+ @thread = Thread.start do
14
15
  sleep(wait_time)
15
16
  Message.new(
16
17
  hash.except(:id, :body, :year, :month, :day, :hour, :min, :unixtime).merge(robot: robot)
@@ -1,5 +1,5 @@
1
1
  module Ruboty
2
2
  module Reminder
3
- VERSION = '0.2.1'
3
+ VERSION = '0.2.2'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruboty-reminder
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - kaihar4
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-04-04 00:00:00.000000000 Z
11
+ date: 2015-04-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ruboty