ストレージバックエンド

To create a custom storage backend you will need to subclass the StorageBackend class. Then create an instance of the new class and pass that as the storage keyword argument when you create the WebSupport object:

support = WebSupport(srcdir=srcdir,
                     builddir=builddir,
                     storage=MyStorage())

カスタムのストレージバックエンドを作る際のより詳しい情報は、これから説明する StorageBackend クラスのドキュメントを参照してください。

class sphinxcontrib.websupport.storage.StorageBackend[ソース]

ストレージバックエンドのインタフェースを定義しています。

バージョン 1.6 で変更: StorageBackend クラスは sphinx.websupport.storage からsphinxcontrib.websupport.storage へ移動しました。

メソッド

StorageBackend.pre_build()[ソース]

ビルドプロセスを開始する前の呼び出し。ノードの追加のために、StorageBackendの準備をします。

StorageBackend.add_node(id, document, source)[ソース]

StorageBackendにノードを追加します。

パラメータ:
  • id -- コメントのユニークな識別子。

  • document -- ノードが属しているドキュメントの名前。

  • source -- ソースファイル名。

StorageBackend.post_build()[ソース]

ビルドが終了した時の呼び出し。必要に応じ、ノードの追加を完了させるために用います。

StorageBackend.add_comment(text, displayed, username, time, proposal, node_id, parent_id, moderator)[ソース]

コメントが追加された場合の呼び出し。

パラメータ:
  • text -- コメントの文字列。

  • displayed -- コメントを表示するかしないか。

  • username -- コメントを作成しているユーザーのユーザー名。

  • time -- コメントが追加された時刻のdateオブジェクト。

  • proposal -- ユーザーが作成した提案のテキスト。

  • node_id -- コメント対象となるノードのID。

  • parent_id -- コメントの親のコメントのID。

  • moderator -- コメントを追加しているユーザーがモデレーターかどうか。

StorageBackend.delete_comment(comment_id, username, moderator)[ソース]

コメントの削除。

Raises UserNotAuthorizedError モデレーターが失敗した場合、もしくは username がコメント上のusernameと一致しない場合に行います。

パラメータ:
  • comment_id -- 削除する対象のコメントのID。

  • username -- 削除をリクエストしているユーザーのユーザー名。

  • moderator -- ユーザーがモデレーターかどうか。

StorageBackend.get_data(node_id, username, moderator)[ソース]

ノード用にデータを回復させる場合の呼び出し。sourcecomments という二つのキーを持つ辞書を返します。 これらのキーは以下によって説明されています。 WebSupport's get_data() method.

パラメータ:
  • node_id -- コメント対象のノードがもつID。

  • username -- データを要求しているユーザーのユーザー名。

  • moderator -- ユーザーがモデレーターかどうか。

StorageBackend.process_vote(comment_id, username, value)[ソース]

投票結果を処理します。 value は -1, 0, 1 のいずれかです。

パラメータ:
  • comment_id -- 投票される対象のコメントのID。

  • username -- コメントに投票するユーザーのユーザー名。

  • value -- 投票される値。

StorageBackend.update_username(old_username, new_username)[ソース]

ユーザーがusernameを変更することを許可されていても、このメソッドは呼び出されませんので、ストレージシステム内にデータが停滞することはありません。

パラメータ:
  • old_username -- 変更されるユーザー名。

  • new_username -- 変更先のユーザー名。

StorageBackend.accept_comment(comment_id)[ソース]

モデレーターがコメントを受け付けた場合の呼び出し。このメソッドが呼ばれた後は、コマンドがユーザーには表示されなくなります。

パラメータ:

comment_id -- 受理される対象のコメントのID。