« 目次

Movable Type オブジェクト・リファレンス

MT::Task

概要

package MyPlugin;

MT->add_task(new MT::Task({
    name => "My Task",
    key => "Task001",
    frequency => 360, # at most, once per hour
    code => \&runner
}));

解説

MT::Taskオブジェクトは、MTが実行可能なタスクを定義するために用います。基本オブジェクトでは、すべてのタスクの共通の特性と、呼び出しのためのメソッドを定義しています。通常、プラグインはMT::Taskオブジェクトを生成し、MTクラスのadd_taskメソッドに渡します。

MT->add_task(new MT::Task({
    # arguments; see listing of arguments below
}));

引数

MT::Taskオブジェクトの生成時に指定可能なパラメーターは次のとおりです。

key

タスクを識別する一意な文字列を指定します。タスクのセッション・レコードを管理するために用いられます。タスクのセッション・レコードは、最後にタスクが実行された時間を記録するものです。セッション・レコードは、kindカラムの値が"PT"(periodic taskの略)に設定されたレコードとして、mt_sessionテーブルに保存されます。

name

タスク名です。これはオプションですが、タスクが失敗したときのエラー・ログ・レコードを記録する際に用いられるものです。

frequency

frequency(頻度)には、時間を秒数で指定します。どのような間隔でタスクを実行するかを定義するものです。ただし、ここで指定した頻度でタスクが実行される保証はありません。指定した期間内に2回以上実行されることがないことを保証するだけです。

code

MT::TaskMgrがそのタスクを呼び出すときに実行されるコードを、コード・リファレンスとして指定します。ここで指定したコードには、パラメーターとしてMT::Taskインスタンスが渡されます。


Copyright © 2001-2006 Six Apart, Ltd. All Rights Reserved.