miu 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (54) hide show
  1. data/.rspec +2 -0
  2. data/.travis.yml +21 -0
  3. data/Gemfile +7 -0
  4. data/Guardfile +8 -0
  5. data/README.md +19 -2
  6. data/Rakefile +3 -0
  7. data/bin/miu +0 -2
  8. data/lib/miu/cli.rb +49 -24
  9. data/lib/miu/cli_base.rb +7 -0
  10. data/lib/miu/command.rb +19 -12
  11. data/lib/miu/errors.rb +22 -0
  12. data/lib/miu/forwarder.rb +54 -0
  13. data/lib/miu/logger.rb +11 -5
  14. data/lib/miu/messages/base.rb +14 -4
  15. data/lib/miu/messages/text.rb +4 -2
  16. data/lib/miu/messages/unknown.rb +11 -0
  17. data/lib/miu/messages.rb +17 -2
  18. data/lib/miu/{plugin.rb → node.rb} +10 -9
  19. data/lib/miu/nodes/.gitkeep +0 -0
  20. data/lib/miu/{plugins.rb → nodes.rb} +1 -1
  21. data/lib/miu/packet.rb +11 -18
  22. data/lib/miu/proxy.rb +57 -0
  23. data/lib/miu/publishable.rb +18 -0
  24. data/lib/miu/publisher.rb +16 -22
  25. data/lib/miu/resources/base.rb +2 -2
  26. data/lib/miu/resources/content.rb +1 -1
  27. data/lib/miu/resources/network.rb +1 -1
  28. data/lib/miu/resources/room.rb +1 -1
  29. data/lib/miu/resources/text_content.rb +3 -5
  30. data/lib/miu/resources/user.rb +1 -1
  31. data/lib/miu/server.rb +10 -25
  32. data/lib/miu/socket.rb +100 -28
  33. data/lib/miu/subscribable.rb +44 -0
  34. data/lib/miu/subscriber.rb +17 -48
  35. data/lib/miu/utility.rb +13 -8
  36. data/lib/miu/version.rb +1 -1
  37. data/lib/miu.rb +42 -25
  38. data/miu.gemspec +6 -4
  39. data/spec/miu/command_spec.rb +26 -0
  40. data/spec/miu/logger_spec.rb +39 -0
  41. data/spec/miu/messages/base_spec.rb +43 -0
  42. data/spec/miu/messages/text_spec.rb +35 -0
  43. data/spec/miu/node_spec.rb +31 -0
  44. data/spec/miu/packet_spec.rb +47 -0
  45. data/spec/miu/publishable_spec.rb +24 -0
  46. data/spec/miu/publisher_spec.rb +36 -0
  47. data/spec/miu/subscribable_spec.rb +44 -0
  48. data/spec/miu/subscriber_spec.rb +36 -0
  49. data/spec/miu/utility_spec.rb +60 -0
  50. data/spec/miu_spec.rb +23 -0
  51. data/spec/spec_helper.rb +15 -0
  52. metadata +86 -19
  53. data/lib/miu/plugins/null.rb +0 -59
  54. data/lib/templates/Gemfile +0 -8
@@ -1,59 +0,0 @@
1
- require 'miu/plugin'
2
-
3
- module Miu
4
- module Plugins
5
- class Null
6
- include Miu::Plugin
7
-
8
- DEFAULT_PORT = Miu.default_port + 10
9
-
10
- class Handler
11
- def log(tag, time, record)
12
- end
13
- end
14
-
15
- def initialize(options)
16
- require 'msgpack/rpc'
17
- @server = MessagePack::RPC::Server.new
18
- @server.listen options[:host], options[:port], Handler.new
19
-
20
- [:TERM, :INT].each do |sig|
21
- Signal.trap(sig) { @server.stop }
22
- end
23
-
24
- @server.run
25
- end
26
-
27
- register :null, :desc => 'Null plugin' do
28
- desc 'start', 'start null'
29
- option :bind, :type => :string, :default => '0.0.0.0', :desc => 'bind address', :aliases => '-a'
30
- option :port, :type => :numeric, :default => DEFAULT_PORT, :desc => 'listen port', :aliases => '-p'
31
- def start
32
- Null.new options
33
- end
34
-
35
- desc 'init', 'init null config'
36
- def init
37
- append_to_file Miu.default_god_config, <<-CONF
38
-
39
- God.watch do |w|
40
- w.dir = Miu.root
41
- w.log = Miu.root.join('log/null.log')
42
- w.name = 'null'
43
- w.start = 'bundle exec miu null start'
44
- end
45
- CONF
46
- append_to_file Miu.default_fluent_config, <<-CONF
47
-
48
- # miu null output plugin
49
- <match miu.output.null>
50
- type msgpack_rpc
51
- host localhost
52
- port #{DEFAULT_PORT}
53
- </match>
54
- CONF
55
- end
56
- end
57
- end
58
- end
59
- end
@@ -1,8 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- group :assets do
4
- gem 'god'
5
- end
6
-
7
- gem 'miu'
8
-