WebDAVファンタジー

ピアニストを撃ってはいけません。 彼はできる限りプレーします。
私が理解するように、WebDAVプロトコルは、オブジェクトのコレクション、そのプロパティ、およびバージョンを操作する方法によるHTTPの拡張ですコレクションの典型的な例は、ファイルシステムであり、WEBに関連するクラウドファイルストレージです。 それらのいくつかとの相互作用は、最新のOCのWebDAVクライアントアプリケーションを使用して可能です。



コレクションを少し異なる側面から見ることをお勧めします:コンテナーとしてだけでなく、フィルターとして、つまり、 オブジェクトを特定のタイプに変換するためのいくつかの固定アクション。 ファイルに関連して、これらは、光学文字認識のフォルダー、あるタイプから別のタイプへのドキュメントの相互変換のフォルダー(doc、xlsx、pdf、odt、html、...)、アーカイブフォルダー(zip、tar、rar)などです。 。 「オンザフライ」でファイルを配置(PUTメソッド)すると、これらのフィルターフォルダー内の適切なフォームに変換されます。



変換チェーンは、1つのリモートフォルダーから別のリモートフォルダーにコピー(MOVE、COPYメソッド)することで実装されます。 クライアント側の「イメージの回転-認識」(davfsマウントを省略)のシーケンスは次のようになります。



cp ~/images/document.jpg /dav/convert/images/rotate90/ mv /dav/convert/images/rotate90/document.jpg /dav/convert/images/ocr(rus)/document.doc mv /dav/convert/images/ocr(rus)/document.* ~/texts/
      
      





提案された例では、変換のタイプとパラメーターはフォルダーの名前によって決まり、結果の形式は宛先ファイルの拡張子によって決まります。 コレクション(仮想ユーザーフォルダー)のプロパティを変更するか、元のパッケージと同じパッケージでパラメーターファイルを転送することにより、より伝統的な方法で変換の「薄い」パラメーター化を実行することは論理的です。



また、コピーが完了したときに開始されたアクションが誤った結果につながるファイルのセットが必要な場合にも、パッキングが必要になる場合があります。 ファイルのパッケージ化の目的は、仮想一時ストレージフォルダーとして機能します。 結果がプロトコルファイルであるxmlファイルのパッケージをチェックするための一連のアクションは、次のようになります。



 cp ~/document1.xml /dav/storage/ cp ~/document2.xml /dav/storage/ ... cp ~/documentN.xml /dav/storage/ cp /dav/storage/ /dav/check/checkxml/ mv /dav/check/checkxml/storage/protocol.html ~/result/
      
      





変換フォルダーは共有、バージョニングサポート、および長期保存には不要であるため(逆に、アクセスは排他的なユーザーセッションに制限し、要求されていないファイルはセッションタイムアウト後に削除する必要があります)、WebDAVクラス1メソッドの限られたセットでインターフェースを実装できます。



この奇妙なアイデアは、 RESTfulコンソールアプリケーションサーバーのユーザーインターフェイスについて考えていたときに思いつきました。 提示されたアプローチはより柔軟に見え、実装はブラウザ用の従来のWEBソリューションよりも複雑ではありません。



サンドボックス、2015年6月。



All Articles