doquedb.port package

Submodules

doquedb.port.authorizemode module

authorizemode.py – 認証方式の実装モジュール

class doquedb.port.authorizemode.AuthorizeMode(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)

Bases: IntEnum

認証方式

MaskMasterID = 65535
MaskMode = 251658240
NONE = 0
PASSWORD = 16777216

doquedb.port.connection module

connection.py – DoqueDBとのコネクション機能を実装するモジュール

class doquedb.port.connection.Connection(connection_type: int, master_id: int, slave_id: int)

Bases: ABC

DoqueDBとのコネクションの基底クラス.

すべてのコネクションクラスはこのクラスを継承する必要がある.

Parameters:
  • connection_type (int) – コネクションのタイプ

  • master_id (int) – マスターID(=プロトコルバージョン)

  • slave_id (int) – スレーブID(=ポート番号)

__connection_type

コネクションのタイプ

Type:

int

__master_id

マスターID(=プロトコルバージョン)

Type:

int

__slave_id

スレーブID(=ポート番号)

Type:

int

_inputstream

入力ストリーム

Type:

InputStream

_outputstream

出力ストリーム

Type:

OutputStream

property authorization: int

認証方式のゲッター

abstract close() None

コネクションをクローズする.

Notes

継承先で実装

flush() None

出力をフラッシュする.

property master_id: int

マスターIDのゲッター.

abstract open() None

コネクションをオープンする.

Notes

継承先で実装

read_object(data: Serializable | None = None) Serializable | None

オブジェクトを読み込む.

property slave_id: int

スレーブIDのゲッター.

property type: int

コネクションのタイプのゲッター

write_object(object_: Serializable | None = None) None

オブジェクトを読み込む.

class doquedb.port.connection.RemoteClientConnection(hostname: str, portnum: int, master_id: int, slave_id: int)

Bases: Connection

DoqueDBとのリモートクライアントコネクション.

Parameters:
  • hostname (str) – ホスト名

  • portnum (int) – ポート番号

  • master_id (int) – マスターID

  • slave_id (int) – スレーブID

__hostname

ホスト名

Type:

str

__portnum

ポート番号

Type:

str

__socket

ソケット

Type:

socket.socket

__ipmap

接続に成功したIPアドレスのマップ

Type:

dict

close()

コネクションをクローズする.

property is_opened: bool
open() None

コネクションをオープンする.

doquedb.port.constants module

constants.py – IDやタイプ値など定数定義のモジュール

class doquedb.port.constants.ConnectionSlaveID(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)

Bases: IntEnum

スレーブIDを管理するクラス

ANY = -2147483648
MAXIMUM = 2147483647
MINIMUM = 0
UNDEFINED = -1
classmethod is_normal(slave_id: int) bool
class doquedb.port.constants.ConnectionType(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)

Bases: IntEnum

コネクションのタイプ

LOCAL = 1
REMOTE = 2

Module contents

port – ポート機能パッケージ