Sutto-marvin 0.8.0.0 → 0.8.0.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -5,19 +5,14 @@ require 'perennial'
5
5
  module Marvin
6
6
  include Perennial
7
7
 
8
- VERSION = [0, 8, 0, 0]
8
+ VERSION = [0, 8, 0, 1]
9
9
 
10
- # Misc.
11
- #autoload :Util, 'marvin/util'
12
10
  # Client
13
- #autoload :AbstractClient, 'marvin/abstract_client'
14
- #autoload :IRC, 'marvin/irc'
15
11
  autoload :TestClient, 'marvin/test_client'
16
12
  # Console of DOOM.
17
13
  autoload :Console, 'marvin/console'
18
14
  # Distributed
19
15
  autoload :Distributed, 'marvin/distributed'
20
- autoload :Status, 'marvin/status'
21
16
  # Handler
22
17
  autoload :Base, 'marvin/base'
23
18
  autoload :CommandHandler, 'marvin/command_handler'
@@ -25,7 +20,6 @@ module Marvin
25
20
  autoload :CoreCommands, 'marvin/core_commands'
26
21
  autoload :MiddleMan, 'marvin/middle_man'
27
22
  # These should be namespaced under IRC
28
- #autoload :AbstractParser, 'marvin/abstract_parser'
29
23
  autoload :Parsers, 'marvin/parsers'
30
24
 
31
25
 
@@ -57,10 +57,7 @@ module Marvin
57
57
  end
58
58
 
59
59
  def process_development
60
- if @@development
61
- Marvin::Reloading.reload!
62
- setup_handlers
63
- end
60
+ Marvin::Reloading.reload! if @@development
64
61
  end
65
62
 
66
63
  def dispatch(*args)
@@ -76,9 +76,11 @@ module Marvin
76
76
  before = dispatcher.handlers
77
77
  register!(dispatcher)
78
78
  after = dispatcher.handlers
79
- (after - before).each { |h| h.handle(:reloaded, {}) }
79
+ (after - before).each do |h|
80
+ h.client = dispatcher
81
+ h.handle(:reloaded, {})
82
+ end
80
83
  end
81
-
82
84
  end
83
85
 
84
86
  end
@@ -8,7 +8,6 @@ module Marvin
8
8
 
9
9
  @@exposed_method_mapping = Hash.new { |h,k| h[k] = [] }
10
10
  @@method_descriptions = Hash.new { |h,k| h[k] = {} }
11
- @@registered_classes = Set.new
12
11
 
13
12
  class << self
14
13
 
@@ -48,6 +47,12 @@ module Marvin
48
47
  "#{command_prefix}#{method}"
49
48
  end
50
49
 
50
+ def reloading!
51
+ super
52
+ @@exposed_method_mapping.delete(self)
53
+ @@method_descriptions.delete(self)
54
+ end
55
+
51
56
  end
52
57
 
53
58
  on_event :incoming_message, :check_for_commands
@@ -21,20 +21,23 @@ module Marvin
21
21
  end
22
22
  end
23
23
 
24
- on_event :client_connected do
25
- @server = self.client.host_with_port
26
- @nick = self.client.nickname
27
- setup_logging
28
- end
24
+ on_event :client_connected, :presetup_logging
25
+ on_event :client_connected, :setup_logging
26
+ on_event :reloaded, :presetup_logging
27
+ on_event :reloaded, :setup_logging
29
28
 
30
- on_event :client_disconnected do
31
- teardown_logging
32
- end
29
+ on_event :client_disconnected, :teardown_logging
30
+ on_event :reloaded, :teardown_logging
33
31
 
34
32
  on_event :outgoing_nick do
35
33
  @nick = options.new_nick
36
34
  end
37
35
 
36
+ def presetup_logging
37
+ @server = self.client.host_with_port
38
+ @nick = self.client.nickname
39
+ end
40
+
38
41
  # Called when the client connects, over ride it to
39
42
  # do any of your specific setup.
40
43
  def setup_logging
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: Sutto-marvin
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.0.0
4
+ version: 0.8.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Darcy Laycock
@@ -9,8 +9,8 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-09-16 00:00:00 -07:00
13
- default_executable:
12
+ date: 2009-09-17 00:00:00 -07:00
13
+ default_executable: marvin
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: Sutto-perennial
@@ -20,7 +20,7 @@ dependencies:
20
20
  requirements:
21
21
  - - ">="
22
22
  - !ruby/object:Gem::Version
23
- version: 0.2.4.6
23
+ version: 1.0.0.0
24
24
  version:
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: eventmachine-eventmachine
@@ -44,8 +44,8 @@ dependencies:
44
44
  version:
45
45
  description:
46
46
  email: sutto@sutto.net
47
- executables: []
48
-
47
+ executables:
48
+ - marvin
49
49
  extensions: []
50
50
 
51
51
  extra_rdoc_files: []