From: TADA T. <sh...@sp...> - 2003-03-10 14:12:58
|
ただただしです。 On Sun, 9 Mar 2003 17:17:06 +0900 TADA Tadashi <sh...@sp...> wrote: >>> ちなみにload済みのプラグインのリストをPluginクラスが持つという話は、 >>> 以前ZnZさんに指摘されて以来考えてはいたので、近いうちに実装する可能 >>> 性は高いです。 >> >>これと同じ話ですね。 > >じゃあ、これはいずれ。ただ、リストはあくまでプラグインファイル名にす >るつもりです。つまり「ファイル名が含まれていること」すなわち「目的と >するメソッド(プラグイン)が存在していること」ではない、ということには >注意してください。目安くらいにしか役に立たないかも知れません。 Pluginクラスに@plugin_filesというインスタンス変数を追加しました。 元のアイデアではfreezeしていたようなんですが、あえてプラグインの中で この変数をいじれる余地を残してみました。ゆえに、フルパスで残してあり ます。 例えば、指定ディレクトリからもプラグインを読み込む、こんな00ext_plugins.rb なんてプラグインが書けます。レンタルサーバで共通プラグインと個々のユ ーザのプラグインを別ディレクトリで管理、なんて真似ができそう。 if @options['ext_plugin.path'] then Dir::glob( "#{@options['ext_plugin.path']}/*.rb' ).sort.each do |file| open( file.untaint ) do |src| instance_eval( src.read.untaint ) end @plugin_files << file end end #注: エラー処理していません ━━━━━━━━━━━━━━━━━━━ ただただし <http://www.spc.gr.jp/sho/> ♪ツッコミは、短く鋭く、愛をこめて ━━━━━━━━━━━━━━━━━━━ |