|
|
tpadvertise(3c)
名前
tpadvertise()-サービス名の宣言を行うルーチン
形式
#include <atmi.h>
int tpadvertise(char *svcname, void (*func)(TPSVCINFO *))
機能説明
tpadvertise() 使用するとサーバは提供するサービスを宣言することができます。デフォルトの設定では、サーバのサービスは、サーバのブート時に宣言され、サーバのシャットダウン時にその宣言が解除されます。
複数サーバ単一キュー (MSSQ) セットに属するすべてのサーバは、同じサービス・セットを提供しなければなりません。これらのルーチンは、MSSQ セットを共有する全サーバを宣言することによってこの規則を適用します。
tpadvertise() は、サーバ (あるいは、呼び出し元の MSSQ セットを共有するサーバのセット) の svcname を宣言します。svcname に NULL あるいは NULL 文字列 ("") を指定することはできません。また、長さは 15 文字までとしてください(UBBCONFIG(5) の SERVICES セクションを参照)。func は BEA Tuxedo ATMI システムのサービス関数のアドレスです。この関数は、svcname に対する要求をサーバが受け取ったときに起動されます。func に NULL を指定することはできません。明示的に指定された関数名 (servopts(5) 参照) は、128 文字までの長さを指定できます。15 文字を超える名前は受け入れられますが、15 文字に短縮されます。短縮された名前が他のサービス名と一致しないように確認する必要があります。
svcname がすでにサーバに対して宣言されていて、func がその現在の関数と一致する (すでに宣言されている名前に一致する切り捨てられた名前も含まれます) 場合、tpadvertise() は正常に終了します。ただし、svcname がすでにサーバに対して宣言されていても、func が現在の関数と一致しない場合には (切り捨てられた名前がすでに宣言されている名前と同じ場合にも)、エラーが返されます。
'.' で始まるサービス名は、管理用サービスのために予約されています。アプリケーションがこれらのサービスの一つを宣言しようとするとエラーが返されます。
戻り値
異常終了すると、tpadvertise() は -1 を返し、tperrno() を設定してエラー条件を示します。
エラー
異常終了時には、tpadvertise() は tperrno() を次のいずれかの値にセットします
関連項目
tpservice(3c)、 tpunadvertise(3c)
|
Copyright © 2001 BEA Systems, Inc. All rights reserved.
|