2002-11-29 101531

syncfilters

ルールはマクロのみにすることしました。こんな感じ。

<filters>
  <filterSet name="test">
    <filter folder="ml/.*" match="@GreaterThan(@Size(),10240)">
      <action name="download">
        <param name="line">1000</param>
      </action>
    </filter>
    <filter folder="Inbox" match="@True()">
      <action name="download">
        <param name="type" value="textOnly"/>
      </action>
    </filter>
  </filterSet>
</filters>

そもそもなぜマクロで書ける筈なのにマクロ以外のルールも用意したかというと、マクロを評価するためにはメッセージ本体が必要で、サイズなどメッセージ本体を必要としないルールに関しては、メッセージをダウンロードするのはもったいないので別のルールを用意しようという話だったのです。しかし、マクロの中からメッセージが必要なときにロードする部分をフックして、そのタイミングでサーバからメッセージを取得するようにしました。なので、メッセージ本体が必要のないマクロに関してはメッセージはダウンロードしなくても良くなったので、マクロ以外のルールは廃止にしました。