String Tokenizer もどき


第一段階は完了。まずは一次元配列化を実装。


本家 String Tokenizer は二次元配列化したデータの取得も可能だが、まずは一次元配列が機能的に実装できれば実用的な問題は無い。

Get Object との連携機能実装を考える

今後は HTTP Get 機能と String Tokenizer を連携させて、Get で取得した CSV 形式データを半自動的にエクステで配列化処理して値を保持するところまでを実装したい。

従来だと GET して受け取った値を MMF2/CF25 を使って String Tokenizer へ渡して配列化しデータを取得しての流れ。これだと各エクステと MMF2/CF25 間でデータが往復してるんだけどここにデータオーバーヘッドがある。

新エクステでは GET したデータをエクステ内部で自動的に配列化して値を保持するところまで一気にやる。データオーバーヘッドが減るので処理速度的には有利に。

一般公開されている DIME をベースにしてエクステを拡張しまくっているわけだが、ちょっと整理する必要がでてきたのでまとめておく。機能の全貌が自分でもよくわからなくなってきている。

ここまでを振り返って

文字列に関する一向に解消されないバグとかを回避するために作った機能が多いため、DIME として公開された以降に追加された機能は基本的に文字列を扱う機能が多い。

HTTP での送受信機能は GET object の POST 機能に文字数制限があると勘違いして以来開発を始めたもので、本家の Get Object の機能を踏襲しながら文字デコードタイプを明示的に指定できる等、文字コードに関する対応を拡張してある。スレッド処理に対応済み、URL文字エンコード機能などがまだ未実装で、日本語を含めた場合のデータ送信はまだできないが日本語として書かれたデータの受信が可能。Pending については CF25 側の Flag を使えば良いので実装せず、代わりに接続に失敗した場合の処理を行うための「Connection Failed」という Condition を付けた。

String Tokenize 機能は Get で得たデータを配列化しようとしたら文字が化けていたことから自作を計画。現時点では一次元配列化までに対応。今後は HTTP GET 機能などと連携して HTTP 経由で受け取ったデータの処理を自動化させる。

アクション
DIME_custom_actions

コンディション
DIME_custom_conditions

エクスプレッション
DIME_custom_expressions

Leave a comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です