前へ     目次     索引     DocHome     次へ     
iPlanet Calendar Server プログラマリファレンス



第 3 章   CSAPI リファレンス


ここでは、それぞれが API である 9 つの CSAPI インタフェースについて詳しく説明します。API は、クライアント側とサーバ側に分けられます。

表 3-1 および表 3-2 に一覧表示した API を使用して、iPlanet Calendar Server のデフォルトの動作を拡張または置き換えます。

表 3-1 クライアント API

csIAccessControl  

デフォルトのアクセスコントロールメカニズムを拡張または置き換え 

csIAuthentication  

ログイン認証メカニズムを拡張または置き換え 

csICalendarLookup  

デフォルトのカレンダー検索メカニズムを拡張または置き換え 

csIDataTranslator  

着信データおよび発信データの形式変換を拡張または置き換え 

csIPlugin  

モジュールのバージョン管理情報と内容に関する情報を提供する  

csIUserAttributes  

ユーザ属性の格納および検索メカニズムを拡張または置き換え 

csIQualifiedCalidLookup  

指定された完全修飾の URL のカレンダー ID を検索する  


表 3-2 サーバ API

csICalendarServer  

バージョン番号などの全般的なサーバ情報を提供する  

csIMalloc  

サーバのメモリ割り当てメカニズムへアクセスする  



csIAccessControl

iPlanet Calendar Server のデフォルトのアクセスコントロール動作を拡張または置き換えるには、このインタフェースのメソッドを実装します。


メソッド
csIAccessControl インタフェースは、次の 2 つのメソッドを実装します。



CheckAccess  

ユーザに対するアクセスコントロール基準を設定する  

Init  

インタフェースが見つかって登録されたことを確認する  


説明
許可されるアクセスのタイプを定義します。デフォルトのアクセスコントロールを使用するか、デフォルトを置き換えるかを指定するリターンコードを設定する必要があります。

[第 3 章の先頭に戻る]


CheckAccess


目的
ユーザのカレンダーアクセスを設定します。


構文
PRUint32 CheckAccess (char * aUser,
                      char * aCalid,
                      PRInt32 * aAccessRequest,
                      PRInt32 * aAccessAllowed,
                      PRInt32 * aReturnCode) = 0;


パラメータ
このメソッドには、次の 5 つのパラメータがあります。



aUser  

要求を発行する認証済みユーザ。匿名 (anonymous) アクセスの場合、pUserID は「anonymous」  

aCalid  

アクセス対象のカレンダーの calid  

aAccessRequest  

要求されたアクセスタイプを表すビットフラグのセット  

aAccessAllowed  

出力パラメータ。許可したアクセスを表すビットフラグのセット。このメソッドは、aAccessRequest で指定されたビットだけをチェックする  

aReturnCode  

リターン時に、サーバがデフォルトの認証手順を引き続き行うべきかどうかを決める定数を含める

次の定数のどちらか

  • NS_CONTINUE_DEFAULT_PROCESSING

  • NS_OVERRIDE_DEFAULT_PROCESSING

 


戻り値
成功した場合は、NS_OK。失敗した場合は、ゼロ以外のエラーコード。


説明
ユーザのアクセスタイプを要求するには、このメソッドを使用します。ユーザの名前を aUser パラメータに、要求するアクセスタイプを aAccessRequest パラメータ (ビットマスク) に指定して送ります。システムは、aAccessRequest ビットマスクに指定されたアクセスタイプだけをチェックします。返されるビットマスク aAccessAllowed は、要求したタイプに対してユーザに許可されたアクセスを表します。

anonymous アクセスの場合、ユーザ ID は「anonymous」です。

次に、利用できるアクセスタイプを定義する ICS_ACCESSTYPE 定数 (ビットマップ) を示します。

表 3-3 ICS_ACCESSTYPE 定数

アクセスタイプ

ビットマップ

ICS_ACCESSTYPE_NONE  

0x00000000  

ICS_ACCESSTYPE_READCOMPONENT  

0x00000001  

ICS_ACCESSTYPE_WRITECOMPONENT  

0x00000002  

ICS_ACCESSTYPE_CREATECOMPONENT  

0x00000008  

ICS_ACCESSTYPE_DELETECOMPONENT  

0x00000010  

ICS_ACCESSTYPE_READCALENDAR  

0x00000020  

ICS_ACCESSTYPE_WRITECALENDAR  

0x00000040  

ICS_ACCESSTYPE_CREATECALENDAR  

0x00000080  

ICS_ACCESSTYPE_DELETECALENDAR  

0x00000100  

ICS_ACCESSTYPE_SCHEDULE  

0x00000200  

ICS_ACCESSTYPE_FREEBUSY  

0x00000400  

ICS_ACCESSTYPE_SELF_ADMIN  

0x00000800  

ICS_ACCESSTYPE_ALL  

0xFFFFFFFF  

独自のアクセスコントロール手順を設定するには、このメソッドを使用します。元からある (ネイティブの) アクセスコントロールメカニズムを拡張して独自の処理を先に実行してからデフォルトの処理を続けて実行するか、あるいは、ネイティブのアクセスコントロールメカニズムを完全に置き換えることができます。

[csIAccessControl」に戻る]

[第 3 章の先頭に戻る]


Init


目的
インタフェースが登録されていることを確認し、サーバへの参照を提供します。


構文
PRUint32 Init (nsISupports * aServer) = 0;


パラメータ
このメソッドには、次のパラメータがあります。



aServer  

リターン時に、このモジュールが登録されたサーバへの参照を含む  


戻り値
成功した場合は、NS_OK。失敗した場合は、ゼロ以外のエラーコード。


説明
サーバは、モジュールの読み込み時にインタフェースを見つけて登録したあと、このメソッドを呼び出して、その操作が成功したことを確認します。aServer で渡されたポインタを使用して、サーバへの呼び出しを行うことができます。

[csIAccessControl」に戻る]

[第 3 章の先頭に戻る]



csIAuthentication

Calendar Server のデフォルトの認証動作を拡張または置き換えるすべてのプラグインは、このインタフェースを実装する必要があります。


メソッド
csIAuthentication インタフェースは、次の 5 つのメソッドを実装します。



ChangePassword  

ユーザのパスワードを変更する  

Init  

インタフェースが見つかって登録されたことを確認する  

Logon  

ユーザをログインする  

Logout  

ユーザをログアウトする  

VerifyUserExists  

ユーザの存在を確認する  


説明
選択した認証手法を実装しているログオン、ログオフ、確認、およびパスワードのメソッドを定義できます。1 つのメソッドを置き換えたあとも、その他のメソッドに対してデフォルトの動作を引き続き使用できます。各メソッドは、リターンコードのパラメータ (aReturnCode) を使用して、自分自身 (メソッド) の実行後にデフォルトのアクセスコントロール処理を続けるかどうかをサーバに指示します。リターンコードの値は、次の定数のどちらかである必要があります。

NS_CONTINUE_DEFAULT_PROCESSING

サーバがデフォルトのアクセスコントロール処理を続けることを示す

NS_OVERRIDE_DEFAULT_PROCESSING

このメソッドがサーバのネイティブのアクセスコントロールメカニズムを置き換えることを示す

[第 3 章の先頭に戻る]


ChangePassword


目的
指定されたユーザのパスワードを変更します。


構文
PRUint32 ChangePassword (char * aUser,
               char * aOldPassword,
               char * aNewPassword,
               PRInt32 * aReturnCode) = 0;


パラメータ
このメソッドには、次の 4 つのパラメータがあります。



aUser  

ユーザの名前  

aOldPassword  

古いパスワード  

aNewPassword  

新しいパスワード  

aReturnCode  

リターン時に、サーバがデフォルトの認証手順を引き続き行うべきかどうかを決める定数を含める

次の定数のどちらかを含める

  • NS_CONTINUE_DEFAULT_PROCESSING

  • NS_OVERRIDE_DEFAULT_PROCESSING

 


戻り値
成功した場合は、NS_AUTHENTICATION_CHANGEPASSWORD_SUCCESS。失敗した場合は、NS_AUTHENTICATION_CHANGEPASSWORD_FAILURE


説明
指定されたユーザのパスワードを変更します。

[csIAuthentication」に戻る]

[第 3 章の先頭に戻る]


Init


目的
インタフェースが登録されていることを確認し、サーバへの参照を提供します。


構文
PRUint32 Init (nsISupports * aServer) = 0;


パラメータ
このメソッドには、次のパラメータがあります。



aServer  

リターン時に、このモジュールが登録されたサーバへの参照を含む  


戻り値
成功した場合は、NS_OK。失敗した場合は、ゼロ以外のコード。


説明
サーバは、モジュールの読み込み時にインタフェースを見つけて登録したあと、このメソッドを呼び出して、その操作が成功したことを確認します。aServer で渡されたポインタを使用して、サーバへの呼び出しを行うことができます。

[csIAuthentication」に戻る]

[第 3 章の先頭に戻る]


Logon


目的
プレーンテキストによるログインのための認証手順を拡張または置き換えます。


構文
PRUint32 Logon (char * aUser,
                      char * aPassword,
                      PRInt32 * aReturnCode) = 0;


パラメータ
このメソッドには、次の 3 つのパラメータがあります。



aUser  

ユーザのログイン名  

aPassword  

プレーンテキストのパスワード  

aReturnCode  

リターン時に、サーバがデフォルトの認証手順を引き続き行うべきかどうかを決める定数を含める

次の定数のどちらかを含める

  • NS_CONTINUE_DEFAULT_PROCESSING

  • NS_OVERRIDE_DEFAULT_PROCESSING

 


戻り値
成功した場合は、NS_AUTHENTICATION_LOGON_SUCCESS。失敗した場合は、
NS_AUTHENTICATION_LOGON_FAILURE


説明
iPlanet Calendar Server へのログインに関する独自の認証手順を指定するために、このメソッドを使用します。ネイティブの認証メカニズムを拡張して独自の処理を先に実行してからデフォルトの処理を続けて実行するか、ネイティブの認証メカニズムを完全に置き換えることができます。

[csIAuthentication」に戻る]

[第 3 章の先頭に戻る]


Logout


目的
ユーザをログアウトします。


構文
PRUint32 Logout (char * aUser,PRInt32 * aReturnCode) = 0;


パラメータ

このメソッドには、次の 2 つのパラメータがあります。



aUser  

ログアウトするユーザのユーザ ID  

aReturnCode  

リターン時に、サーバがデフォルトの認証手順を引き続き行うべきかどうかを決める定数を含める

次の定数のどちらかを含める

  • NS_CONTINUE_DEFAULT_PROCESSING

  • NS_OVERRIDE_DEFAULT_PROCESSING

 


戻り値
成功した場合は、NS_OK。失敗した場合は、ゼロ以外のエラーコード。


説明

[csIAuthentication」に戻る]

[第 3 章の先頭に戻る]


VerifyUserExists


目的
ユーザ ID が LDAP ディレクトリに存在することを確認します。


構文
PRUint32 VerifyUserExists (char * aUser,PRInt32 * aReturnCode) = 0;


パラメータ

このメソッドには、次の 2 つのパラメータがあります。



aUser  

ユーザの名前  

aReturnCode  

リターン時に、サーバがデフォルトの認証手順を引き続き行うべきかどうかを決める定数を含める

次の定数のどちらかを含める

  • NS_CONTINUE_DEFAULT_PROCESSING

  • NS_OVERRIDE_DEFAULT_PROCESSING

 


戻り値
成功した場合は、NS_OK。失敗した場合は、ゼロ以外のエラーコード。


説明

[csIAuthentication」に戻る]

[第 3 章の先頭に戻る]



csICalendarLookup

デフォルトのカレンダー検索 (LDAP) を拡張または置き換えるには、このインタフェースのメソッドを実装します。


メソッド
csICalendarLookup は、次の 5 つのメソッドを実装します。



Init  

インタフェースが見つかって登録されたことを確認する  

QualifyCalid  

相対 calid を修飾する  

FreeCalid  

前に割り当てられた完全修飾 calid のメモリ領域を解放する  

QueryType  

プラグインのタイプを照会する  

FreeType  

前に割り当てられたタイプのメモリ領域を解放する  


説明
1 つ以上のメソッドを実装することにより、カレンダー検索を制御できます。

[第 3 章の先頭に戻る]


Init


目的
インタフェースが登録されていることを確認し、サーバへの参照を提供します。


構文
PRUint32 Init (nsISupports * aServer) = 0;


パラメータ
このメソッドには、次のパラメータがあります。



aServer  

リターン時に、このモジュールが登録されたサーバへの参照を含む  


戻り値
成功した場合は NS_OK、失敗した場合はゼロ以外のエラーコード。


説明
サーバは、モジュールの読み込み時にインタフェースを見つけて登録したあと、このメソッドを呼び出して、その操作が成功したことを確認します。aServer で渡されたポインタを使用して、サーバへの呼び出しを行うことができます。

[csICalendarLookup」に戻る]

[第 3 章の先頭に戻る]


QualifyCalid


目的
相対 calid を修飾します。


構文
PRUint32 QualifyCalid (char * aRelativeCalid,
                       char ** aQualifiedCalid,
                       PRInt32 * aReturnCode) = 0;


パラメータ
このメソッドには、次のパラメータがあります。



aRelativeCalid  

修飾対象の相対 calid  

aQualifiedCalid  

リターン時には、修飾された calid の URL が含まれる  

aReturnCode  

成功した場合は、NS_OK。失敗した場合は、通常の処理を中断する  


戻り値
成功した場合は NS_OK、失敗した場合はゼロ以外のエラーコード。


説明

[csICalendarLookup」に戻る]

[第 3 章の先頭に戻る]


FreeCalid


目的
前に割り当てられた完全修飾カレンダー ID (calid) のメモリ領域を解放します。


構文
PRUint32 FreeCalid (char ** aQualifiedCalid,PRInt32 * aReturnCode) = 0;


パラメータ
このメソッドには、次のパラメータがあります。



aQualifiedCalid  

解放する calid  

aReturnCode  

成功した場合は、NS_OK。失敗した場合は、通常の処理を中断する  


戻り値
成功した場合は NS_OK、失敗した場合はゼロ以外のエラーコード。


説明

[csICalendarLookup」に戻る]

[第 3 章の先頭に戻る]


QueryType


目的
データベースのプラグインのタイプを照会します。


構文
PRUint32 QueryType (char * aType,PRInt32 * aReturnCode) = 0;


パラメータ
このメソッドには、次のパラメータがあります。



aType  

CLD (Calendar Lookup Database、カレンダー検索データベース) のタイプ  

aReturnCode  

成功した場合は、NS_OK。失敗した場合は、通常の処理を中断する  


戻り値
成功した場合は NS_OK、失敗した場合はゼロ以外のエラーコード。


説明
この関数は、プラグインが実装している CLD のタイプを表す文字列を返します。

サポートされている唯一のタイプは「algorithmic」で、これは正規表現をサポートします。

[csICalendarLookup」に戻る]

[第 3 章の先頭に戻る]


FreeType


目的
前に割り当てられたデータベースのプラグインのタイプのメモリ領域を解放します。


構文
PRUint32 FreeType (char * aType,PRInt32 * aReturnCode) = 0;


パラメータ
このメソッドには、次のパラメータがあります。



aType  

解放するデータベースのプラグインのタイプ  

aReturnCode  

成功した場合は、NS_OK。失敗した場合は、通常の処理を中断する  


戻り値
成功した場合は NS_OK、失敗した場合はゼロ以外のエラーコード。


説明
QueryType メソッドで割り当てられた文字列のメモリ領域を解放します。

[csICalendarLookup」に戻る]

[第 3 章の先頭に戻る]



csIDataTranslator

これは、データ変換機能のプラグインのインタフェースです。すべてのパラメータのメモリ領域は、プラグインを使用して割り当ててください。


メソッド
csIDataTranslator インタフェースは、次の 3 つのメソッドを実装します。



GetSupportedContentTypes  

このデータベース変換機能がサポートするコンテントタイプをサーバに通知する  

Init  

インタフェースが見つかって登録されたことを確認する  

Translate  

カレンダーデータを指定された MIME 形式に変換する  


説明
このインタフェースを使って、データベースとの間で、またはさまざまなデータ変換機能間でやり取りされるカレンダーデータの HTML 本文の内容を操作したり変更したりできます。データ変換機能は、WCAP 応答の出力形式 (fmt-out) のコンポーネントを操作します。

iPlanet Calendar Server では、カレンダーデータの変換用として次の MIME タイプをサポートします。

MIME タイプ

説明

text/calendar

iCalendar

text/xml

XML 形式の iCalendar

text/js

ネイティブの JavaScript

CSAPI データ変換モジュールは、GetSupportedContentType メソッドを使用して特定の MIME タイプをサーバに登録します。データ変換機能は、サポートされている任意の MIME タイプで受け取るデータを要求できます。

着信データの MIME タイプがモジュールによって受け入れられる場合、サーバはそのデータをモジュールの Translate メソッドに渡します。データ変換機能はそのデータをサポートされている MIME タイプに変換し、サーバへ戻し、サーバはデータベースを更新します。

[第 3 章の先頭に戻る]


GetSupportedContentTypes


目的
このデータベース変換機能がサポートしているコンテントタイプ (Content-Types) を取得します。


構文
PRUint32 GetSupportedContentTypes (char ** aSupportedInContentTypes,
                                  char ** aSupportedOutContentType,
                                  char ** aPreferredInContentType,
                                  PRInt32 * aReturnCode) = 0;


パラメータ
このメソッドには、次のパラメータがあります。



aSupportedInContentTypes  

サーバが変換機能に入力データとして送ることのできるコンテントタイプのリスト。NULL で終わっている文字列の配列  

aSupportedOutContentType  

このプラグインによるデータ変換後のコンテントタイプ  

aPreferredInContentType  

このプラグインが優先的に受け取るコンテントタイプ。最初のパラメータで渡された、サポートしているコンテントタイプの 1 つを指定する  

aReturnCode  

リターン時に、サーバがデフォルトの認証手順を引き続き行うべきかどうかを決める定数を含める

次の定数のどちらかを含める

  • NS_CONTINUE_DEFAULT_PROCESSING

  • NS_OVERRIDE_DEFAULT_PROCESSING

 


戻り値
成功した場合は、NS_OK。失敗した場合は、ゼロ以外のコード。


説明
このデータベース変換機能がサポートするコンテントタイプを取得します。

[csIDataTranslator」に戻る]

[第 3 章の先頭に戻る]


Init


目的
インタフェースが登録されていることを確認し、サーバへの参照を取得します。


構文
PRUint32 Init (nsISupports * aServer) = 0;


パラメータ
このメソッドには、次のパラメータがあります。



aServer  

リターン時に、このモジュールが登録されたサーバへの参照を含む  


戻り値
成功した場合は NS_OK、失敗した場合はゼロ以外のエラーコード。


説明
サーバは、モジュールの読み込み時にインタフェースを見つけて登録したあと、このメソッドを呼び出して、その操作が成功したことを確認します。aServer で渡されたポインタを使用して、サーバへの呼び出しを行うことができます。

[csIDataTranslator」に戻る]

[第 3 章の先頭に戻る]


Translate


目的
あるコンテントタイプから別のコンテントタイプへ変換する機能を実装します。


構文
PRUint32 Translate (char * aInContentType,
                    char * aOutContentType,
                    char ** aInBuffer,
                    char ** aOutBuffer,
                    PRInt32 * aInSize,
                    PRInt32 * aOutsize,
                    PRInt32 * aReturncode) = 0;


パラメータ
このメソッドには、次のパラメータがあります。



aInContentType  

着信するコンテントタイプ  

aOutContentType  

発信するコンテントタイプ  

aInBuffer  

入力データバッファ  

aOutBuffer  

出力データバッファ  

aInSize  

入力バッファのサイズ  

aOutSize  

出力バッファのサイズ  

aReturnCode  

リターン時に、サーバがデフォルトの認証手順を引き続き行うべきかどうかを決める定数を含める

次の定数のどちらかを含める

  • NS_CONTINUE_DEFAULT_PROCESSING

  • NS_OVERRIDE_DEFAULT_PROCESSING

 


戻り値
成功した場合は NS_OK、失敗した場合はゼロ以外のエラーコード。


説明
このメソッドは、指定されたバッファから指定された入力形式の内容を取り出して、内容を元の形式から出力形式に変換し、変換した内容を指定された出力バッファに書き込んで、出力バッファのサイズを指定された場所に書き込みます。

[csIDataTranslator」に戻る]

[第 3 章の先頭に戻る]



csIPlugin

起動時にプラグインモジュールの情報をサーバに提供するには、このインタフェースのメソッドを実装する必要があります。


メソッド
csIPlugin インタフェースは、次の 4 つのメソッドを実装します。



GetDescription  

プラグインの機能の説明文を取得する  

GetVendorName  

このプラグインを提供しているベンダーの説明文を取得する  

GetVersion  

このプラグインのメジャーおよびマイナーバージョンを取得する。この値は、1.0 以上である必要がある  

Init  

インタフェースが見つかって登録されたことを確認する  


説明
このインタフェースは必須でありません。しかし、サーバがモジュールを読み込むときにバージョン情報を取得できるように、各モジュールでこのインタフェースを実装することを強くお勧めします。これらのメソッドは、プラグインの内容に関する情報をサーバに返します。

[第 3 章の先頭に戻る]


GetDescription


目的
モジュールの説明文を返します。


構文
PRUint32 GetDescription (nsString& aDescription) = 0;


パラメータ
このメソッドには、次のパラメータがあります。



aDescription  

リターン時に、モジュールの説明文を含む  


戻り値
成功した場合は NS_OK、失敗した場合はゼロ以外のエラーコード。


説明
このメソッドを使用して、モジュールの説明文を提供します。

[csIPlugin」に戻る]

[第 3 章の先頭に戻る]


GetVendorName


目的
モジュールを提供しているベンダーの説明文を返します。


構文
PRInt32 GetVendorName (nsString& aVendorName) = 0;


パラメータ
このメソッドには、次のパラメータがあります。



aVendorName  

リターン時に、ベンダーの説明文を含む  


戻り値
成功した場合は NS_OK、失敗した場合はゼロ以外のエラーコード。


説明
モジュールの提供元を特定します。

[csIPlugin」に戻る]

[第 3 章の先頭に戻る]


GetVersion


目的
起動時にサーバにバージョン情報を提供します。


構文
PRUint32 GetVersion (PRUint32& aMajorValue,
                     PRUint32& aMinorValue) = 0;


パラメータ
このメソッドには、次の 2 つのパラメータがあります。



aMajorValue  

リターン時に、メジャーバージョン番号を含む  

aMinorValue  

リターン時に、マイナーバージョン番号を含む  


戻り値
成功した場合は NS_OK、失敗した場合はゼロ以外のエラーコード。


説明
このメソッドを使用して、モジュールのメジャーバージョン番号およびマイナーバージョン番号を特定します。この番号は、1.0 以上である必要があります。

[csIPlugin」に戻る]

[第 3 章の先頭に戻る]


Init


目的
インタフェースが登録されていることを確認し、サーバへの参照を取得します。


構文
PRUint32 Init (nsISupports * aServer) = 0;


パラメータ
このメソッドには、次のパラメータがあります。



aServer  

リターン時に、このモジュールが登録されたサーバへの参照を含む  


戻り値
成功した場合は NS_OK、失敗した場合はゼロ以外のエラーコード。


説明
サーバは、モジュールの読み込み時にインタフェースを見つけて登録したあと、このメソッドを呼び出して、その操作が成功したことを確認します。aServer で渡されたポインタを使用して、サーバへの呼び出しを行うことができます。

[csIPlugin」に戻る]

[第 3 章の先頭に戻る]



csIQualifiedCalidLookup

渡された修飾 URL のカレンダー ID を取得するデフォルトのメソッドを拡張または置き換えるには、このインタフェースのメソッドを実装します。


メソッド
csICalendarLookup は、次の 2 つのメソッドを実装します。



FindCalid  

修飾 URL のカレンダー ID を返す  

Init  

インタフェースが見つかって登録されたことを確認する  


説明
渡された修飾 URL のカレンダー ID を取得します。calid が見つからない場合、このコマンドはエラーを返します。[第 3 章の先頭に戻る]


FindCalid


目的
指定された URL のカレンダー ID を検索します。


構文
PRUint32 FindCalid (char * pQualifiedURL,
                    char ** ppCalidOut,
                    PRInt32 * piCalidSize,
                    PRInt32 * aReturnCode) = 0;


パラメータ
このメソッドには、次のパラメータがあります。



pQualifiedURL  

検索対象の URL  

ppCalidOut  

見つかった calid のアドレスのポインタ  

piCalidSize  

返された calid のサイズ  

aReturnCode  

リターン時に、サーバがデフォルトの認証手順を引き続き行うべきかどうかを決める定数を含める

次の定数のどちらかを含める

  • NS_CONTINUE_DEFAULT_PROCESSING

  • NS_OVERRIDE_DEFAULT_PROCESSING

 


戻り値
渡された修飾 URL の calid


説明
渡された完全修飾の URL を使用して、カレンダー ID データベースの検索を実行します。一致した場合、calid のアドレスのポインタと calid のサイズを示す整数を返します。

[csIQualifiedCalidLookup」に戻る]

[第 3 章の先頭に戻る]


Init


目的
インタフェースが登録されていることを確認し、サーバへの参照を提供します。


構文
PRUint32 Init (nsISupports * aServer) = 0;


パラメータ
このメソッドには、次のパラメータがあります。



aServer  

リターン時に、このモジュールが登録されたサーバへの参照を含む  


戻り値
成功した場合は NS_OK、失敗した場合はゼロ以外のエラーコード。


説明

サーバは、モジュールの読み込み時にインタフェースを見つけて登録したあと、このメソッドを呼び出して、その操作が成功したことを確認します。aServer で渡されたポインタを使用して、サーバへの呼び出しを行うことができます。

[csIQualifiedCalidLookup」に戻る]

[第 3 章の先頭に戻る]



csIUserAttributes

ユーザ属性の設定または取得の手順を置き換えるには、このインタフェースのメソッドを実装します。


メソッド
csIUserAttributes インタフェースは、次の 4 つのメソッドを実装します。



FreeAttribute  

取得した属性を保存するために使用されたメモリを解放する  

GetAttribute  

ユーザの属性値を取得する  

Init  

インタフェースが見つかって登録されたことを確認する  

SetAttribute  

ユーザの属性値を設定する  


説明
このユーザ属性インタフェースによって、CSAPI モジュールは、受け取ったすべての要求を保持または操作してユーザ属性値を設定および取得できるようになります。属性を取得および設定するメソッドは、好みの手法を使用して、自分自身で提供してください。

[第 3 章の先頭に戻る]


FreeAttribute


目的
ローカルの属性記憶域に関連付けられたメモリを解放します。


構文
PRint32 FreeAttribute (char * aValue, PRInt32 * aReturnCode) = 0;


パラメータ
このメソッドには、次の 2 つのパラメータがあります。



aValue  

取得した属性値を保存するために割り当てた場所  

aReturnCode  

リターン時に、サーバがデフォルトの認証手順を引き続き行うべきかどうかを決める定数を含める

次の定数のどちらかを含める

  • NS_CONTINUE_DEFAULT_PROCESSING

  • NS_OVERRIDE_DEFAULT_PROCESSING

 


戻り値
成功した場合は NS_OK、失敗した場合はゼロ以外のエラーコード。


説明
GetAttribute メソッドを使用して属性の値を取得すると、その値は、割り当てた場所に選択したメモリ管理手法を使って保存されます。メモリが不要になったときに同じメモリ管理手法でそのメモリを解放するには、FreeAttribute メソッドを使用してください (csIMalloc を参照)。

[csIUserAttributes」に戻る]

[第 3 章の先頭に戻る]


GetAttribute


目的
ユーザの属性値を検索します。


構文
PRUint32 GetAttribute (char * aUser,
                       char * aKey,
                       char ** aValue,
                       PRInt32 * aReturnCode) = 0;


パラメータ
このメソッドには、次の 4 つのパラメータがあります。



aUser  

ユーザの名前  

aKey  

属性キー  

aValue  

リターン時に、取得された属性値のポインタがここに含まれる  

aReturnCode  

リターン時に、サーバがデフォルトの認証手順を引き続き行うべきかどうかを決める定数を含める

次の定数のどちらかを含める

  • NS_CONTINUE_DEFAULT_PROCESSING

  • NS_OVERRIDE_DEFAULT_PROCESSING

 


戻り値
成功した場合は NS_OK、失敗した場合はゼロ以外のエラーコード。


説明
指定されたユーザの指定された属性の値を取得し、その値を aValue が指す場所に保存します。返された属性の保存場所の割り当てと、不要になったときの解放 (FreeAttribute メソッドを使用) は、開発者の責任で行う必要があります。

[csIUserAttributes」に戻る]

[第 3 章の先頭に戻る]


Init


目的
インタフェースが登録されていることを確認し、サーバへの参照を取得します。


構文
PRUint32 Init (nsISupports * aServer) = 0;


パラメータ
このメソッドには、次のパラメータがあります。



aServer  

リターン時に、このモジュールが登録されたサーバへの参照を含む  


戻り値
成功した場合は NS_OK、失敗した場合はゼロ以外のエラーコード。


説明
サーバは、モジュールの読み込み時にインタフェースを見つけて登録したあと、このメソッドを呼び出して、その操作が成功したことを確認します。aServer で渡されたポインタを使用して、サーバへの呼び出しを行うことができます。

[csIUserAttributes」に戻る]

[第 3 章の先頭に戻る]


SetAttribute


目的
ユーザの属性値を設定します。


構文
RUint32 SetAttribute (char * aUser,
                      char * aKey,
                      char * aValue,
                      PRInt32 * aReturnCode) = 0;


パラメータ
このメソッドには、次のパラメータがあります。



aUser  

ユーザの名前  

aKey  

属性キー  

aValue  

 

aReturnCode  

リターン時に、サーバがデフォルトの認証手順を引き続き行うべきかどうかを決める定数を含める

次の定数のどちらかを含める

  • NS_CONTINUE_DEFAULT_PROCESSING

  • NS_OVERRIDE_DEFAULT_PROCESSING

 


戻り値
成功した場合は NS_OK、失敗した場合はゼロ以外のエラーコード。


説明
指定されたユーザの指定された属性を指定された値に設定します。

[csIUserAttributes」に戻る]

[第 3 章の先頭に戻る]



csICalendarServer

サーバのバージョン情報をプラグインモジュールに提供します。


メソッド

csICalendarServer インタフェースは、次の 2 つのメソッドを実装します。



GetVersion  

カレンダーサーバのバージョン情報を取得する  

Init  

インタフェースが見つかって登録されたことを確認する  


説明
このプラグインモジュールを使用すると、csICalendarServer インタフェースにクエリーを送信して iPlanet Calendar Server の実行中のインスタンスのバージョン情報を取得することができます。このインスタンスはクライアントが存在する間は有効なので、Init はサーバへの参照を返しません。

[第 3 章の先頭に戻る]


GetVersion


目的
プラグインモジュールにサーバのバージョン情報を提供します。


構文
PRUint32 GetVersion (PRUint32& aMajorValue,
                     PRUint32& aMinorValue) = 0;


パラメータ
このメソッドには、次の 2 つのパラメータがあります。



aMajorValue  

リターン時に、メジャーバージョン番号を含む  

aMinorValue  

リターン時に、マイナーバージョン番号を含む  


戻り値
成功した場合は NS_OK、失敗した場合はゼロ以外のエラーコード。


説明
このメソッドを使用して、サーバのメジャー番号およびマイナーバージョン番号を特定します。この番号は、常に 1.0 以上です。

[csICalendarServer」に戻る]

[第 3 章の先頭に戻る]


Init


目的
インタフェースが登録されたことを確認します。


構文
PRUint32 Init () = 0;


パラメータ
このメソッドには、パラメータはありません。


戻り値
成功した場合は NS_OK、失敗した場合はゼロ以外のエラーコード。


説明
サーバは、このメソッドを呼び出して、インタフェースが検出されて正常に登録されたことを確認します。

[csICalendarServer」に戻る]

[第 3 章の先頭に戻る]



csIMalloc

メモリの割り当てと解放を行います。


メソッド
csIMalloc インタフェースは、次の 6 つのメソッドを実装します。



Calloc  

オブジェクト用のメモリを割り当て、初期化する  

Free  

使われなくなったメモリを解放する  

FreeIf  

メモリを解放する。NULL ポインタも受け付ける  

Init  

インタフェースが見つかって登録されたことを確認する  

Malloc  

メモリを割り当てる  

Realloc  

前に割り当てたメモリを割り当て直す  


説明
プラグインモジュールは、このオブジェクトを使用して、サーバの効率的なメモリ割り当て手法を利用できます。このオブジェクトはクライアントが存在する間有効なので、Init は参照を返しません。

[第 3 章の先頭に戻る]


Calloc


目的
複数のオブジェクトにメモリを割り当て、ゼロに初期化します。


構文
void* Calloc (PRUint32 aSize, PPRUint32 aNum) = 0;


パラメータ
このメソッドには、次の 2 つのパラメータがあります。



aSize  

各オブジェクトのバイト単位のサイズ  

nNum  

オブジェクトの数  


戻り値
成功した場合は割り当てたメモリのポインタ、失敗した場合は NULL


説明
このメソッドは、指定されたサイズを持つ指定された数のオブジェクトに必要なメモリを割り当て、そのメモリをゼロに初期化します。

[csIMalloc」に戻る]

[第 3 章の先頭に戻る]


Free


目的
前に Malloc メソッドで割り当てられたメモリを解放します。


構文
PRUint32 Free (void * aPtr) = 0;


パラメータ
このメソッドには、次のパラメータがあります。



aPtr  

解放するメモリへのポインタ  


戻り値
成功した場合は NS_OK、失敗した場合はゼロ以外のエラーコード。


説明
C および C++ の対応するメソッドと同じ方法でこのメソッドを使用して、前に割り当てられたメモリを解放します。

[csIMalloc」に戻る]

[第 3 章の先頭に戻る]


FreeIf


目的
前に Malloc メソッドで割り当てられたメモリを解放します。NULL ポインタも受け付けます。


構文
PRUint32 FreeIf (void * aPtr) = 0;


パラメータ
このメソッドには、次のパラメータがあります。



aPtr  

解放するメモリのポインタ、または NULL  


戻り値
成功した場合は NS_OK、失敗した場合はゼロ以外のエラーコード。


説明
aPtrNULL でない場合は、指定された場所のメモリを解放します。

[csIMalloc」に戻る]

[第 3 章の先頭に戻る]


Init


目的
インタフェースが登録されていることを確認し、サーバへの参照を提供します。


構文
PRUint32 Init (nsISupports * aServer) = 0;


パラメータ
このメソッドには、次のパラメータがあります。



aServer  

リターン時に、このモジュールが登録されたサーバへの参照を含む  


戻り値
成功した場合は、NS_OK。失敗した場合は、ゼロ以外のエラーコード。


説明
サーバは、モジュールの読み込み時にインタフェースを見つけて登録したあと、このメソッドを呼び出して、その操作が成功したことを確認します。aServer で渡されたポインタを使用して、サーバへの呼び出しを行うことができます。

[csIMalloc」に戻る]

[第 3 章の先頭に戻る]


Malloc


目的
指定された量のメモリを割り当てます。


構文
void* Malloc (PRUint32 nBytes) = 0;


パラメータ
このメソッドには、次のパラメータがあります。



nBytes  

割り当てるメモリのバイト単位のサイズ  


戻り値
成功した場合は割り当てられたメモリのポインタ、失敗した場合は NULL


説明
C および C++ の対応するメソッドと同じ方法でこのメソッドを使用します。

[csIMalloc」に戻る]

[第 3 章の先頭に戻る]


Realloc


目的
前に割り当てたメモリを割り当て直します。


構文
void* Realloc (void * aPtr,PRUint32 nBytes) = 0;


パラメータ
このメソッドには、次のパラメータがあります。



aPtr  

前に割り当てたメモリのポインタ  

nBytes  

新たに割り当てるメモリのバイト単位のサイズ  


戻り値
成功した場合は割り当てられたメモリのポインタ、失敗した場合は NULL


説明
C および C++ の対応するメソッドと同じ方法でこのメソッドを使用して、前に割り当てられたメモリを割り当て直します。

[csIMalloc」に戻る]

[第 3 章の先頭に戻る]


前へ     目次     索引     DocHome     次へ     
Copyright © 2000 Sun Microsystems, Inc. Some preexisting portions Copyright © 2000 Netscape Communications Corp. All rights reserved.

Last Updated June 04, 2001