2007年03月01日

[PRagger] notify::ejectを書いてみた。

本家にもあるnotify::ejectを作ってみた。

とりあえず、Linux版。

まず、以下のディレクトリ構造をとる。

pragger
+-- plugin/
+-- notify/
+-- eject.rb
+-- eject/
+-- linux.rb
+-- mswin32.rb
+-- darwin.rb
+-- freebsd.rb

linux.rb以外未実装。また研究の合間にでも書きます。

このような状態で、
$ ruby pragger.rb -l
とすると、
notify::ejectという文字列がどこかに表示されるはず。

さて、問題のファイルの中身ですが、まず、eject.rb
#!/usr/bin/env ruby
# eject.rb
#

class Eject
def initialize()
@platform = RUBY_PLATFORM.split("-")[1]
end

def eject_handler()
require 'plugin/notify/eject/' + @platform
eject()
end
end

def eject(config, data)
Eject.new.eject_handler
end


次に、プラットフォームごとのコード。
linux.rb
def eject()
system "eject"
end


あとは、yamlで
- module: notify::eject

としてやるだけ。たぶんちゃんと動くことでしょう。
タグ:ruby PRagger
posted by yu at 03:39 | Comment(0) | TrackBack(0) | Ruby
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

この記事へのトラックバックURL
http://blog.seesaa.jp/tb/34960721
※言及リンクのないトラックバックは受信されません。

この記事へのトラックバック
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。