Ruby 1.8.7 リファレンスマニュアル > ライブラリ一覧 > gserverライブラリ > GServerクラス

class GServer

クラスの継承リスト: GServer < Object < Kernel

要約

サーバを実装するためのクラスです。GServer を継承した新しいクラスを定義して使います。 fork ではなくスレッドを使っています。

目次

特異メソッド
in_service? new stop
インスタンスメソッド
audit audit= connecting connections debug debug= disconnecting error host join log maxConnections port serve shutdown start starting stdlog stdlog= stop stopped? stopping
定数
DEFAULT_HOST

特異メソッド

in_service?(port, host = GServer::DEFAULT_HOST) -> bool[permalink][rdoc]

与えられた host と port で GServer オブジェクトが同じプロセス内で サービス中なら真を返します。

[PARAM] port:
ポート番号を指定します。
[PARAM] host:
ホストを指定します。
new(port, host = GServer::DEFAULT_HOST, maxConnections = 4, stdlog = $stderr, audit = false, debug = false)[permalink][rdoc]

GServer オブジェクトを生成します。

[PARAM] port:
サーバがリッスンするポートを指定します。
[PARAM] host:
ホストを指定します。
[PARAM] maxConnections:
最大接続数を指定します。デフォルトは 4 です。
[PARAM] stdlog:
ログの出力先を指定します。デフォルトは標準エラー出力です。
[PARAM] audit:
真を指定するとサーバの起動時、接続時、切断時、停止時にログを出力します。
[PARAM] debug:
真を指定するとデバッグログを出力します。
stop(port, host = DEFAULT_HOST) -> ()[permalink][rdoc]

与えられた host と port に対応する GServer オブジェクトを停止します。

[PARAM] port:
ポート番号を指定します。
[PARAM] host:
ホストを指定します。

インスタンスメソッド

audit -> bool[permalink][rdoc]

真であれば、サーバの起動時、接続時、切断時、停止時にログを出力します。

[SEE_ALSO] GServer#starting, GServer#connecting, GServer#disconnecting, GServer#stopping

audit=(bool)[permalink][rdoc]

真を指定すると、サーバの起動時、接続時、切断時、停止時にログを出力します。

[PARAM] bool:
真偽値を指定します。

[SEE_ALSO] GServer#starting, GServer#connecting, GServer#disconnecting, GServer#stopping

connecting(client) -> true[permalink][rdoc]

GServer#audit が真ならば、クライアント接続時に呼ばれます。

サブクラスでオーバーライドします。

[PARAM] client:
クライアントと接続している TCPSocket です。
connections() -> Fixnum[permalink][rdoc]

現在接続しているクライアントの数を返します。

debug -> bool[permalink][rdoc]

デバッグモードなら真、そうでないなら偽を返します。

debug=(bool)[permalink][rdoc]

真を指定するとデバッグモードが有効になります。 偽を指定するとデバッグモードが無効になります。

[PARAM] bool:
真偽値を指定します。
disconnecting(clientPort) -> ()[permalink][rdoc]

GServer#audit が真ならば、クライアントとの接続終了時に呼ばれます。

サブクラスでオーバーライドします。

[PARAM] clientPort:
接続していたクライアントのポートです。
error(detail) -> ()[permalink][rdoc]

GServer#debug が真の場合、例外が発生すると呼ばれます。

[PARAM] detail:
例外オブジェクトです。
host -> String[permalink][rdoc]

ホストを文字列で返します。

join[permalink][rdoc]

サーバのサービスを実行しているスレッドを Thread#join します。

[SEE_ALSO] Thread#join

log(msg) -> ()[permalink][rdoc]

与えられた文字列をログに記録します。

[PARAM] msg:
ログとして記録する文字列を指定します。
maxConnections -> Fixnum[permalink][rdoc]

受け付ける最大接続数を返します。

port -> Fixnum[permalink][rdoc]

ポートを数で返します。

serve(io) -> nil[permalink][rdoc]

何もしません。サブクラスでオーバーライドします。

[PARAM] io:
クライアントと接続している TCPSocket を指定します。
shutdown -> true[permalink][rdoc]

自身を停止します。

start(maxConnections = -1) -> self[permalink][rdoc]

自身を起動します。

[PARAM] maxConnections:
0 より大きい数値を指定すると、最大接続数として設定されます。
starting -> ()[permalink][rdoc]

GServer#audit が真ならば、サーバ起動時に呼ばれます。 サブクラスでオーバーライドします。

stdlog -> IO[permalink][rdoc]

ログを出力する先の IO オブジェクトを返します。デフォルトは $stderr です。

stdlog=(io)[permalink][rdoc]

ログを出力する先の IO オブジェクトを設定します。

[PARAM] io:
ログを出力する先の IO オブジェクトを設定します。
stop -> ()[permalink][rdoc]

自身をすぐに停止します。

stopped? -> bool[permalink][rdoc]

自身が停止しているなら真を返します。

stopping -> ()[permalink][rdoc]

GServer#audit が真ならば、サーバ停止時に呼ばれます。 サブクラスでオーバーライドします。

定数

DEFAULT_HOST -> String[permalink][rdoc]

"127.0.0.1" です。