Sun Java System Calendar Server 包括以下內部子系統:
以下圖形顯示經由這些子系統的邏輯流程。
用戶端透過使用 HTTP 協定層提交請求來擷取行事曆資料。這是最小的 HTTP 伺服器實作,可有效支援行事曆請求。這透過將 Web 行事曆存取協定 (WCAP) 指令附加至 URL 來完成。
WCAP 是一種開放協定,允許您將自己的介面寫入 Calendar Server。使用 WCAP 指令 (副檔名為 .wcap),您可以執行大多數伺服器指令,但某些管理指令除外。您可以使用 WCAP 指令請求以包含在 HTML 中的 XML 或 iCalendar 格式輸出。
如需有關 WCAP 指令的資訊,請參閱「Sun Java System Calendar Server 6.3 WCAP Developer’s Guide」。
核心子系統包括存取控制元件、WCAP 指令解譯元件以及將來自行事曆資料庫元件的資料格式化的資料轉譯器。核心子系統會處理行事曆請求並產生 XML 和 iCalendar 輸出。核心子系統也可以處理使用者認證。
資料庫子系統使用 Sleepycat Software 的 Berkeley DB (資料庫 API 不是公用的)。資料庫子系統可向資料庫儲存行事曆資料,也可從資料庫中擷取行事曆資料,其中包括事件、待辦事項 (工作) 和警示。行事曆資料以 iCalendar 格式為基礎,而用於 Calendar Server 資料的模式是 iCalendar 標準的超集合。
資料庫子系統會傳回低階格式的資料,然後核心 UI 產生器會轉譯低階資料並透過 WCAP 傳送它。
對於分散式行事曆資料庫,Calendar Server 使用分散式連線協定 (DWP) 以提供網路功能。如需更多資訊,請參閱1.10.5 分散式資料庫服務:Calendar Server 版本 6.3 中的 csdwpd。
如需有關行事曆資料庫的資訊,請參閱第 16 章, 使用 csdb 公用程式管理 Calendar Server 資料庫。