class GServer
クラスの継承リスト: GServer < Object < Kernel < BasicObject
要約
サーバを実装するためのクラスです。GServer を継承した新しいクラスを定義して使います。 fork ではなくスレッドを使っています。
特異メソッド
in_service?(port, host = GServer::DEFAULT_HOST) -> bool-
与えられた host と port で GServer オブジェクトが同じプロセス内で サービス中なら真を返します。
- [PARAM] port:
- ポート番号を指定します。
- [PARAM] host:
- ホストを指定します。
new(port, host = GServer::DEFAULT_HOST, maxConnections = 4, stdlog = $stderr, audit = false, debug = false)-
GServer オブジェクトを生成します。
- [PARAM] port:
- サーバがリッスンするポートを指定します。
- [PARAM] host:
- ホストを指定します。
- [PARAM] maxConnections:
- 最大接続数を指定します。デフォルトは 4 です。
- [PARAM] stdlog:
- ログの出力先を指定します。デフォルトは標準エラー出力です。
- [PARAM] audit:
- 真を指定するとサーバの起動時、接続時、切断時、停止時にログを出力します。
- [PARAM] debug:
- 真を指定するとデバッグログを出力します。
stop(port, host = DEFAULT_HOST) -> ()-
与えられた host と port に対応する GServer オブジェクトを停止します。
- [PARAM] port:
- ポート番号を指定します。
- [PARAM] host:
- ホストを指定します。
インスタンスメソッド
audit -> bool-
真であれば、サーバの起動時、接続時、切断時、停止時にログを出力します。
[SEE_ALSO] GServer#starting, GServer#connecting, GServer#disconnecting, GServer#stopping
audit=(bool)-
真を指定すると、サーバの起動時、接続時、切断時、停止時にログを出力します。
- [PARAM] bool:
- 真偽値を指定します。
[SEE_ALSO] GServer#starting, GServer#connecting, GServer#disconnecting, GServer#stopping
connecting(client) -> true-
GServer#audit が真ならば、クライアント接続時に呼ばれます。
サブクラスでオーバーライドします。
- [PARAM] client:
- クライアントと接続している TCPSocket です。
connections() -> Fixnum-
現在接続しているクライアントの数を返します。
debug -> bool-
デバッグモードなら真、そうでないなら偽を返します。
debug=(bool)-
真を指定するとデバッグモードが有効になります。 偽を指定するとデバッグモードが無効になります。
- [PARAM] bool:
- 真偽値を指定します。
disconnecting(clientPort) -> ()-
GServer#audit が真ならば、クライアントとの接続終了時に呼ばれます。
サブクラスでオーバーライドします。
- [PARAM] clientPort:
- 接続していたクライアントのポートです。
error(detail) -> ()-
GServer#debug が真の場合、例外が発生すると呼ばれます。
- [PARAM] detail:
- 例外オブジェクトです。
host -> String-
ホストを文字列で返します。
join-
サーバのサービスを実行しているスレッドを Thread#join します。
[SEE_ALSO] Thread#join
log(msg) -> ()-
与えられた文字列をログに記録します。
- [PARAM] msg:
- ログとして記録する文字列を指定します。
maxConnections -> Fixnum-
受け付ける最大接続数を返します。
port -> Fixnum-
ポートを数で返します。
serve(io) -> nil-
何もしません。サブクラスでオーバーライドします。
- [PARAM] io:
- クライアントと接続している TCPSocket を指定します。
shutdown -> true-
自身を停止します。
start(maxConnections = -1) -> self-
自身を起動します。
- [PARAM] maxConnections:
- 0 より大きい数値を指定すると、最大接続数として設定されます。
starting -> ()-
GServer#audit が真ならば、サーバ起動時に呼ばれます。 サブクラスでオーバーライドします。
stdlog -> IOstdlog=(io)-
ログを出力する先の IO オブジェクトを設定します。
- [PARAM] io:
- ログを出力する先の IO オブジェクトを設定します。
stop -> ()-
自身をすぐに停止します。
stopped? -> bool-
自身が停止しているなら真を返します。
stopping -> ()-
GServer#audit が真ならば、サーバ停止時に呼ばれます。 サブクラスでオーバーライドします。
定数
DEFAULT_HOST -> String-
"127.0.0.1" です。