通訊協定
CapabilityStore
在 fuchsia.component.sandbox/sandbox.fidl 定義
表示能力儲存庫」(存放區) 概念的通訊協定 ,且元件必須保留給元件架構執行階段的 [功能]。
[CapabilityStore] 是元件執行階段與用戶端之間的主要橋樑 讓他們能夠在「能力」上進行作業並交換 [功能]。[CapabilityStore] 執行個體 包含一組 [功能],每個功能都有一個由用戶端指派的 [CapabilityId]。
一般來說,程式不會與其他程式交換 [CapabilityStore] 或 [CapabilityId] 程式 -- [CapabilityStore] 連線及其封閉功能的目的在於 當地名稱加入計畫相反地,若程式想要與其他一個 [Capability] 交換。 應該在商店外 [Export] [Capability],將 [Capability] 傳送到 目標計畫,以便將能力 [匯入] 自家商店。
[CapabilityStore] 也可用來管理能力生命週期。能力的生命週期為 範圍限定在其所在的 [CapabilityStore];意即捨棄 [CapabilityStore] 以釋出功能。此外,[CapabilityStore] 也支援 [Drop] API 可捨棄個別 [Capability] 參照。(請注意,即使 有些功能 (例如 [DictionaryRef]) 擁有多個參照 之後才能釋出基礎資源)。
語意相關注意事項:[CapabilityStore] API 不會傳回 [CapabilityId],因為 [CapabilityId]是由用戶端指派。相反地 能力,是以目的地 [CapabilityId] 做為輸出參數表示。
ConnectorCreate
從 [Receiver] 建立 [連接器]。連線至 [Connector] 的連線將 分派給此 [接收端]。
錯誤:
- 如果這個儲存庫中已有具有 id的能力,則為ID_ALREADY_EXISTS。
要求
| 名稱 | 類型 | 
|---|---|
| id | NewCapabilityId | 
| receiver | Receiver | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | CapabilityStore_ConnectorCreate_Result | 
ConnectorOpen
從提供的 [Connector] 能力開啟連線,並將該功能分派給 另一端的 [接收端]
如果出現錯誤,系統會在 server_end將錯誤回報為 zx.Status epitaph。
錯誤:
- 如果 id在這個儲存庫中並非有效的能力 ID,則為ID_NOT_FOUND。
- 如果 id不是連接器能力,則為WRONG_TYPE。
要求
| 名稱 | 類型 | 
|---|---|
| id | CapabilityId | 
| server_end | handle<channel> | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | CapabilityStore_ConnectorOpen_Result | 
DictionaryCopy
建立新的字典,並在其中加入與下列所有項目相同的項目:
使用 id 建立字典,將 dest_id 指派給新的字典。
這個方法的執行階段在頂層項目數中屬於線性項目
。
舉例來說,如果字典包含巢狀字典,則系統會將 建立的字典將包含那些同巢狀結構的參照 因為系統會複製這些項目,而非深度複製。
錯誤:
- 如果 id在這個儲存庫中並非有效的能力 ID,則為ID_NOT_FOUND。
- 如果這個儲存庫中已有具有 dest_id的能力,則為ID_ALREADY_EXISTS。
- 如果 id不是字典,則為WRONG_TYPE。
- 如果無法複製 id中的其中一項功能,則為NOT_DUPLICATABLE。
要求
| 名稱 | 類型 | 
|---|---|
| id | CapabilityId | 
| dest_id | NewCapabilityId | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | CapabilityStore_DictionaryCopy_Result | 
DictionaryCreate
以用戶端指派的 id 在此 CapabilityStore 中建立新的空白字典。
錯誤:
- 如果這個儲存庫中已有具有 id的能力,則為ID_ALREADY_EXISTS。
要求
| 名稱 | 類型 | 
|---|---|
| id | CapabilityId | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | CapabilityStore_DictionaryCreate_Result | 
DictionaryDrain
移除這個字典中的所有項目,並在 contents 中傳回這些項目 (如有)。
如未提供 contents,系統會捨棄所有項目,而不列舉項目。
錯誤:
- 如果 id在這個儲存庫中並非有效的能力 ID,則為ID_NOT_FOUND。
- 如果 id不是字典,則為WRONG_TYPE。
要求
| 名稱 | 類型 | 
|---|---|
| id | CapabilityId | 
| iterator | server_end<DictionaryDrainIterator>? | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | CapabilityStore_DictionaryDrain_Result | 
DictionaryEnumerate
使用 id 列舉字典中的項目 (鍵和值)。
建立每個值 (能力) 的副本。如果無法複製值 這個值會是空值
錯誤:
- 如果 id在這個儲存庫中並非有效的能力 ID,則為ID_NOT_FOUND。
- 如果 id不是字典,則為WRONG_TYPE。
要求
| 名稱 | 類型 | 
|---|---|
| id | CapabilityId | 
| iterator | server_end<DictionaryEnumerateIterator> | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | CapabilityStore_DictionaryEnumerate_Result | 
DictionaryGet
使用 id 從字典中取得能力副本,
已載入到 dest_id。
錯誤:
- 如果 id在這個儲存庫中無法辨識能力 ID,則為ID_NOT_FOUND。
- 如果這個儲存庫中已有具有 dest_id的能力,則為ID_ALREADY_EXISTS。
- 如果 id不是字典,則為WRONG_TYPE。
- 如果 item.key無效,則為INVALID_KEY。
- 如果字典不包含 key,則為ITEM_NOT_FOUND。
- NOT_DUPLICATABLE表示無法複製能力。
要求
| 名稱 | 類型 | 
|---|---|
| id | CapabilityId | 
| key | DictionaryKey | 
| dest_id | NewCapabilityId | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | CapabilityStore_DictionaryGet_Result | 
DictionaryInsert
使用 id 將 item 插入字典。將「item.value」移至字典中,
如果這項呼叫成功,系統就會釋出其 ID。
錯誤:
- 如果 id在這個儲存庫中並非有效的能力 ID,則為ID_NOT_FOUND。
- 如果 id不是字典,則為WRONG_TYPE。
- 如果 item.key無效,則為INVALID_KEY。
- 如果字典中已包含具有 item.key的項目,則為ITEM_ALREADY_EXISTS。
要求
| 名稱 | 類型 | 
|---|---|
| id | CapabilityId | 
| item | DictionaryItem | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | CapabilityStore_DictionaryInsert_Result | 
DictionaryKeys
使用 id 列舉字典中的鍵。
錯誤:
- 如果 id在這個儲存庫中並非有效的能力 ID,則為ID_NOT_FOUND。
- 如果 id不是字典,則為WRONG_TYPE。
要求
| 名稱 | 類型 | 
|---|---|
| id | CapabilityId | 
| iterator | server_end<DictionaryKeysIterator> | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | CapabilityStore_DictionaryKeys_Result | 
DictionaryLegacyExport
使用 id 將管道繫結至字典。管道可以
使用 [DictionaryImportLegacy] 重新匯入 [CapabilityStore]。
這個舊版 API 可支援與採用 [Dictionary] 的 API 回溯相容性 頻道。
錯誤:
- 如果 id在這個儲存庫中並非有效的能力 ID,則為ID_NOT_FOUND。
要求
| 名稱 | 類型 | 
|---|---|
| id | CapabilityId | 
| server_end | handle<channel> | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | CapabilityStore_DictionaryLegacyExport_Result | 
DictionaryLegacyImport
以管道的形式匯入字典。
這個舊版 API 可支援與採用 [Dictionary] 的 API 回溯相容性 頻道。
錯誤:
- 如果這個儲存庫中已有具有 id的能力,則為ID_ALREADY_EXISTS。
- 如果 client_end不是有效的字典管道,則為BAD_CAPABILITY。
要求
| 名稱 | 類型 | 
|---|---|
| id | NewCapabilityId | 
| client_end | handle<channel> | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | CapabilityStore_DictionaryLegacyImport_Result | 
DictionaryRemove
使用 id 從字典中移除鍵。如果 dest_id 存在,則載入該值
否則就會捨棄該值
錯誤:
- 如果 id在這個儲存庫中並非有效的能力 ID,則為ID_NOT_FOUND。
- 如果這個儲存庫中已有具有 dest_id的能力,則為ID_ALREADY_EXISTS。
- 如果 id不是字典,則為WRONG_TYPE。
- 如果 key無效,則為INVALID_KEY。
- 如果字典不包含索引鍵,則為 ITEM_NOT_FOUND。
要求
| 名稱 | 類型 | 
|---|---|
| id | CapabilityId | 
| key | DictionaryKey | 
| dest_id | WrappedCapabilityId? | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | CapabilityStore_DictionaryRemove_Result | 
拖放
從此 CapabilityStore 中捨棄具有 id 的能力。
錯誤:
- 如果 id在這個儲存庫中並非有效的能力 ID,則為ID_NOT_FOUND。
要求
| 名稱 | 類型 | 
|---|---|
| id | CapabilityId | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | CapabilityStore_Drop_Result | 
複製
將 id 的能力複製到 dest_id。
錯誤:
- 如果 id在這個儲存庫中並非有效的能力 ID,則為ID_NOT_FOUND。
- 如果這個儲存庫中已有具有 dest_id的能力,則為ID_ALREADY_EXISTS。
- 如果無法複製 id,則為NOT_DUPLICATABLE。
要求
| 名稱 | 類型 | 
|---|---|
| id | CapabilityId | 
| dest_id | NewCapabilityId | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | CapabilityStore_Duplicate_Result | 
匯出
將含有用戶端指派 ID id 的能力匯出到
capability。這項作業會從儲存庫中移除能力。如果
這並不是所需的資源,就必須先 [複製] 能力。
錯誤:
- 如果 id在這個儲存庫中並非有效的能力 ID,則為ID_NOT_FOUND。
要求
| 名稱 | 類型 | 
|---|---|
| id | CapabilityId | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | CapabilityStore_Export_Result | 
匯入
使用客戶指派的 id 將 capability 匯入這個儲存庫。
錯誤:
- 如果這個儲存庫中已有具有 id的能力,則為ID_ALREADY_EXISTS。
- 如果 capability不是有效的 [Capability],傳回BAD_CAPABILITY。
要求
| 名稱 | 類型 | 
|---|---|
| id | NewCapabilityId | 
| capability | Capability | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | CapabilityStore_Import_Result | 
字典
在 fuchsia.component.sandbox/sandbox.fidl 定義
DictionaryDrainIterator
在 fuchsia.component.sandbox/sandbox.fidl 定義
GetNext
傳回 [Dictionary.Drain] 呼叫的下一批結果,且最多傳回
有 limit 筆搜尋結果。limit 的大小不得超過 [MAX_DICTIONARY_ITERATOR_CHUNK]。
每個傳回的能力都會獲派單調遞增 [CapabilityId]
start_id起。
除了 items 之外,還會傳回 end_id,此值比保留的最高 ID 值高 1
。end_id 可做為下次呼叫 [GetNext] 的 start_id。
如果 [GetNext] 傳回錯誤,伺服器也會關閉管道。
錯誤:
- 如果範圍 [start_id, limit)中已有其他 ID,則為ID_ALREADY_EXISTS也就是經過處理且會導入模型的資料 接著再透過特徵儲存庫與他人分享
- 如果 limit是0或大於MAX_DICTIONARY_ITERATOR_CHUNK,則為INVALID_ARGS。
要求
| 名稱 | 類型 | 
|---|---|
| start_id | CapabilityId | 
| limit | uint32 | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | DictionaryDrainIterator_GetNext_Result | 
DictionaryEnumerateIterator
在 fuchsia.component.sandbox/sandbox.fidl 定義
GetNext
傳回 [Dictionary.Enumerate] 呼叫的下一批結果,且最多傳回
有 limit 筆搜尋結果。limit 的大小不得超過 [MAX_DICTIONARY_ITERATOR_CHUNK]。
items 的每個值與原始能力的值重複
([CapabilityStore.Duplicate]),除非不得重複,否則在這種情況下,
為空值。
每個傳回的能力都會獲派單調遞增 [CapabilityId]
start_id起。
除了 items 之外,還會傳回 end_id,此值比保留的最高 ID 值高 1
。end_id 可做為下次呼叫 [GetNext] 的 start_id。
如果 [GetNext] 傳回錯誤,伺服器也會關閉管道。
錯誤:
- 如果範圍 [start_id, limit)中已有其他 ID,則為ID_ALREADY_EXISTS也就是經過處理且會導入模型的資料 接著再透過特徵儲存庫與他人分享
- 如果 limit是0或大於MAX_DICTIONARY_ITERATOR_CHUNK,則為INVALID_ARGS。
要求
| 名稱 | 類型 | 
|---|---|
| start_id | CapabilityId | 
| limit | uint32 | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | DictionaryEnumerateIterator_GetNext_Result | 
DictionaryKeysIterator
在 fuchsia.component.sandbox/sandbox.fidl 定義
GetNext
要求
<空白>
回應
| 名稱 | 類型 | 
|---|---|
| payload | DictionaryKeysIterator_GetNext_Result | 
接收器
在 fuchsia.component.sandbox/sandbox.fidl 定義
接收器由元件提供並允許接收頻道 從架構中學習
接收
將管道傳送給這位接收器。
要求
| 名稱 | 類型 | 
|---|---|
| channel | handle<channel> | 
路由器
在 fuchsia.component.sandbox/sandbox.fidl 定義
路由器允許用戶端要求能力。
路徑
要求
| 名稱 | 類型 | 
|---|---|
| payload | RouteRequest | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | Router_Route_Result | 
結構
CapabilityStore_ConnectorCreate_Response
在 fuchsia.component.sandbox/sandbox.fidl 定義
<空白>
CapabilityStore_ConnectorOpen_Response
在 fuchsia.component.sandbox/sandbox.fidl 定義
<空白>
CapabilityStore_DictionaryCopy_Response
在 fuchsia.component.sandbox/sandbox.fidl 定義
<空白>
CapabilityStore_DictionaryCreate_Response
在 fuchsia.component.sandbox/sandbox.fidl 定義
<空白>
CapabilityStore_DictionaryDrain_Response
在 fuchsia.component.sandbox/sandbox.fidl 定義
<空白>
CapabilityStore_DictionaryEnumerate_Response
在 fuchsia.component.sandbox/sandbox.fidl 定義
<空白>
CapabilityStore_DictionaryGet_Response
在 fuchsia.component.sandbox/sandbox.fidl 定義
<空白>
CapabilityStore_DictionaryInsert_Response
在 fuchsia.component.sandbox/sandbox.fidl 定義
<空白>
CapabilityStore_DictionaryKeys_Response
在 fuchsia.component.sandbox/sandbox.fidl 定義
<空白>
CapabilityStore_DictionaryLegacyExport_Response
在 fuchsia.component.sandbox/sandbox.fidl 定義
<空白>
CapabilityStore_DictionaryLegacyImport_Response
在 fuchsia.component.sandbox/sandbox.fidl 定義
<空白>
CapabilityStore_DictionaryRemove_Response
在 fuchsia.component.sandbox/sandbox.fidl 定義
<空白>
CapabilityStore_Drop_Response
在 fuchsia.component.sandbox/sandbox.fidl 定義
<空白>
CapabilityStore_Duplicate_Response
在 fuchsia.component.sandbox/sandbox.fidl 定義
<空白>
CapabilityStore_Export_Response 資源
在 fuchsia.component.sandbox/sandbox.fidl 定義
| 欄位 | 類型 | 說明 | 預設 | 
|---|---|---|---|
| capability | Capability | 無預設 | 
CapabilityStore_Import_Response
在 fuchsia.component.sandbox/sandbox.fidl 定義
<空白>
連接器資源
在 fuchsia.component.sandbox/sandbox.fidl 定義
| 欄位 | 類型 | 說明 | 預設 | 
|---|---|---|---|
| token | Token | 無預設 | 
DictionaryDrainIterator_GetNext_Response 資源
在 fuchsia.component.sandbox/sandbox.fidl 定義
| 欄位 | 類型 | 說明 | 預設 | 
|---|---|---|---|
| items | vector<DictionaryItem>[128] | 無預設 | |
| end_id | CapabilityId | 無預設 | 
DictionaryEnumerateIterator_GetNext_Response 資源
在 fuchsia.component.sandbox/sandbox.fidl 定義
| 欄位 | 類型 | 說明 | 預設 | 
|---|---|---|---|
| items | vector<DictionaryOptionalItem>[128] | 無預設 | |
| end_id | CapabilityId | 無預設 | 
DictionaryItem
在 fuchsia.component.sandbox/sandbox.fidl 定義
DictionaryRef 中的鍵/值組合。
| 欄位 | 類型 | 說明 | 預設 | 
|---|---|---|---|
| key | DictionaryKey | 無預設 | |
| value | CapabilityId | 無預設 | 
DictionaryKeysIterator_GetNext_Response 資源
在 fuchsia.component.sandbox/sandbox.fidl 定義
| 欄位 | 類型 | 說明 | 預設 | 
|---|---|---|---|
| keys | vector<string>[128] | 無預設 | 
DictionaryOptionalItem 資源
在 fuchsia.component.sandbox/sandbox.fidl 定義
DictionaryRef 中的鍵/值組合,這些值可能會被省略。 這對於想要省略此值的 API 很有用,例如無法這麼做時 已複製。
| 欄位 | 類型 | 說明 | 預設 | 
|---|---|---|---|
| key | DictionaryKey | 無預設 | |
| value | WrappedCapabilityId? | 無預設 | 
DictionaryRef 資源
在 fuchsia.component.sandbox/sandbox.fidl 定義
| 欄位 | 類型 | 說明 | 預設 | 
|---|---|---|---|
| token | Token | 無預設 | 
DirEntry 資源
在 fuchsia.component.sandbox/sandbox.fidl 定義
| 欄位 | 類型 | 說明 | 預設 | 
|---|---|---|---|
| token | Token | 無預設 | 
InstanceToken 資源
在 fuchsia.component.sandbox/sandbox.fidl 定義
代表元件樹狀結構 (是元件) 中的執行個體 執行個體或元件管理員的執行個體
| 欄位 | 類型 | 說明 | 預設 | 
|---|---|---|---|
| token | Token | 無預設 | 
ProtocolPayload 資源
在 fuchsia.component.sandbox/sandbox.fidl 定義
包含通訊協定公開要求。
| 欄位 | 類型 | 說明 | 預設 | 
|---|---|---|---|
| channel | handle<channel> | 無預設 | 
Router_Route_Response 資源
在 fuchsia.component.sandbox/sandbox.fidl 定義
| 欄位 | 類型 | 說明 | 預設 | 
|---|---|---|---|
| capability | Capability | 無預設 | 
單位
在 fuchsia.component.sandbox/sandbox.fidl 定義
<空白>
WrappedCapabilityId
在 fuchsia.component.sandbox/sandbox.fidl 定義
在結構中包裝的 [CapabilityId]。如要在 box<> 中加入 [CapabilityId],這項功能就非常實用。
FIDL 不允許純積分類型。
| 欄位 | 類型 | 說明 | 預設 | 
|---|---|---|---|
| id | CapabilityId | 無預設 | 
ENUMS
供應情形嚴格
類型:uint32
在 fuchsia.component.sandbox/availability.fidl 定義
說明能力的預期可用性。
某些功能可能不會在所有系統設定上提供。在這些情境下
情況下,供應情形會連同 OPTIONAL 的鏈結中的
公開/優惠資訊,且能力會從 void 轉送
這類系統設定
特定能力 (例如無頭系統上的圖形功能)。
| 名稱 | 值 | 說明 | 
|---|---|---|
| 是否必要 | 1 | 功能必須可供使用。「無法轉送」功能 錯誤。 | 
| 選用 | 2 | 在使用宣告中:如果元件無法執行 取得能力 優惠/公開聲明中:能力可能無法使用 某些系統設定中的 Pod做為彙整作業,目標元件必須 但不需要能力上的必要依附元件 | 
| SAME_AS_TARGET | 3 | 如果相應優惠或公開宣告的目標 能力,則行為就等於需要如果 目標具有可選的能力依附元件 相當於選用參數這對於容器元件而言相當實用 我想根據內部 Pod 的供應情形變更其他路徑供應情形。 使用宣告表單中不得包含這個值。 | 
| 切換 | 4 | 來源可能會在沒有路徑的情況下完全省略路線
 TRANSITIONAL 用於自然轉換, 即便沒有技術背景,也能因這些工具的功能而受益 | 
CapabilityStoreError 彈性
類型:uint32
在 fuchsia.component.sandbox/sandbox.fidl 定義
[CapabilityStore] 中的方法傳回錯誤。
| 名稱 | 值 | 說明 | 
|---|---|---|
| ID_NOT_FOUND | 1 | 找不到與指定鍵或 [CapabilityId] 相符的功能。 | 
| ID_ALREADY_EXISTS | 2 | 已有與指定鍵或 [CapabilityId] 相符的功能。 | 
| BAD_CAPABILITY | 3 | [Capability] 無效。例如  | 
| WRONG_TYPE | 4 | [CapabilityId] 中要求的作業類型有誤。 | 
| NOT_DUPLICATABLE | 5 | 需要複製才能執行這項作業所需的功能 並非如此 | 
| ITEM_NOT_FOUND | 6 | 在字典中找不到與指定鍵相符的項目。 | 
| ITEM_ALREADY_EXISTS | 7 | 字典中已有相同的項目使用指定的索引鍵。 | 
| INVALID_KEY | 8 | 金鑰無效。有效金鑰的限制記載於 https://fuchsia.dev/reference/cml#names. | 
| INVALID_ARGS | 9 | 一或多個引數無效。 | 
DictionaryError 彈性
類型:uint32
在 fuchsia.component.sandbox/sandbox.fidl 定義
[CapabilityStore/Dictionary*] 方法傳回的錯誤。
| 名稱 | 值 | 說明 | 
|---|---|---|
| NOT_FOUND | 1 | 字典中不含具有指定鍵的項目。 | 
| ALREADY_EXISTS | 2 | 字典中已有具有指定鍵的項目。 | 
| BAD_CAPABILITY | 3 | 「功能」無效。 功能必須由沙箱建立,使用
 | 
| INVALID_KEY | 4 | 金鑰無效。有效金鑰的限制記載於 https://fuchsia.dev/reference/cml#names. | 
| NOT_CLONEABLE | 5 | 需要複製才能執行這項作業 要求複製。 | 
RouterError 彈性
類型:uint32
在 fuchsia.component.sandbox/sandbox.fidl 定義
| 名稱 | 值 | 說明 | 
|---|---|---|
| NOT_FOUND | 1 | 路由器無法找到這項能力。 | 
| INVALID_ARGS | 2 | 提供給函式的引數無效。 | 
資料表
RouteRequest resource
在 fuchsia.component.sandbox/sandbox.fidl 定義
路線的要求。
| Ordinal | 欄位 | 類型 | 說明 | 
|---|---|---|---|
| 1 | requesting | InstanceToken | 要求能力的元件。 | 
| 2 | metadata | DictionaryRef | 與這項能力要求相關聯的中繼資料。 | 
聯合國
能力彈性 資源
在 fuchsia.component.sandbox/sandbox.fidl 定義
| Ordinal | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | unit | Unit | |
| 2 | handle | handle<handle> | |
| 3 | data | Data | |
| 4 | dictionary | DictionaryRef | |
| 5 | connector | Connector | |
| 6 | directory | fuchsia.io/Directory | |
| 7 | router | Router | |
| 8 | dir_entry | DirEntry | 
CapabilityStore_ConnectorCreate_Result 嚴格
在 fuchsia.component.sandbox/sandbox.fidl 定義
| Ordinal | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | CapabilityStore_ConnectorCreate_Response | |
| 2 | err | CapabilityStoreError | |
| 3 | framework_err | internal | 
CapabilityStore_ConnectorOpen_Result 嚴格
在 fuchsia.component.sandbox/sandbox.fidl 定義
| Ordinal | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | CapabilityStore_ConnectorOpen_Response | |
| 2 | err | CapabilityStoreError | |
| 3 | framework_err | internal | 
CapabilityStore_DictionaryCopy_Result 嚴格
在 fuchsia.component.sandbox/sandbox.fidl 定義
| Ordinal | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | CapabilityStore_DictionaryCopy_Response | |
| 2 | err | CapabilityStoreError | |
| 3 | framework_err | internal | 
CapabilityStore_DictionaryCreate_Result 嚴格
在 fuchsia.component.sandbox/sandbox.fidl 定義
| Ordinal | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | CapabilityStore_DictionaryCreate_Response | |
| 2 | err | CapabilityStoreError | |
| 3 | framework_err | internal | 
CapabilityStore_DictionaryDrain_Result 嚴格
在 fuchsia.component.sandbox/sandbox.fidl 定義
| Ordinal | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | CapabilityStore_DictionaryDrain_Response | |
| 2 | err | CapabilityStoreError | |
| 3 | framework_err | internal | 
CapabilityStore_DictionaryEnumerate_Result 嚴格
在 fuchsia.component.sandbox/sandbox.fidl 定義
| Ordinal | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | CapabilityStore_DictionaryEnumerate_Response | |
| 2 | err | CapabilityStoreError | |
| 3 | framework_err | internal | 
CapabilityStore_DictionaryGet_Result 嚴格
在 fuchsia.component.sandbox/sandbox.fidl 定義
| Ordinal | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | CapabilityStore_DictionaryGet_Response | |
| 2 | err | CapabilityStoreError | |
| 3 | framework_err | internal | 
CapabilityStore_DictionaryInsert_Result 嚴格
在 fuchsia.component.sandbox/sandbox.fidl 定義
| Ordinal | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | CapabilityStore_DictionaryInsert_Response | |
| 2 | err | CapabilityStoreError | |
| 3 | framework_err | internal | 
CapabilityStore_DictionaryKeys_Result 嚴格
在 fuchsia.component.sandbox/sandbox.fidl 定義
| Ordinal | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | CapabilityStore_DictionaryKeys_Response | |
| 2 | err | CapabilityStoreError | |
| 3 | framework_err | internal | 
CapabilityStore_DictionaryLegacyExport_Result 嚴格
在 fuchsia.component.sandbox/sandbox.fidl 定義
| Ordinal | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | CapabilityStore_DictionaryLegacyExport_Response | |
| 2 | err | CapabilityStoreError | |
| 3 | framework_err | internal | 
CapabilityStore_DictionaryLegacyImport_Result 嚴格
在 fuchsia.component.sandbox/sandbox.fidl 定義
| Ordinal | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | CapabilityStore_DictionaryLegacyImport_Response | |
| 2 | err | CapabilityStoreError | |
| 3 | framework_err | internal | 
CapabilityStore_DictionaryRemove_Result 嚴格
在 fuchsia.component.sandbox/sandbox.fidl 定義
| Ordinal | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | CapabilityStore_DictionaryRemove_Response | |
| 2 | err | CapabilityStoreError | |
| 3 | framework_err | internal | 
CapabilityStore_Drop_Result 嚴格
在 fuchsia.component.sandbox/sandbox.fidl 定義
| Ordinal | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | CapabilityStore_Drop_Response | |
| 2 | err | CapabilityStoreError | |
| 3 | framework_err | internal | 
CapabilityStore_Duplicate_Result 嚴格
在 fuchsia.component.sandbox/sandbox.fidl 定義
| Ordinal | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | CapabilityStore_Duplicate_Response | |
| 2 | err | CapabilityStoreError | |
| 3 | framework_err | internal | 
CapabilityStore_Export_Result 嚴格 資源
在 fuchsia.component.sandbox/sandbox.fidl 定義
| Ordinal | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | CapabilityStore_Export_Response | |
| 2 | err | CapabilityStoreError | |
| 3 | framework_err | internal | 
CapabilityStore_Import_Result 嚴格
在 fuchsia.component.sandbox/sandbox.fidl 定義
| Ordinal | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | CapabilityStore_Import_Response | |
| 2 | err | CapabilityStoreError | |
| 3 | framework_err | internal | 
資料彈性
在 fuchsia.component.sandbox/sandbox.fidl 定義
| Ordinal | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | bytes | vector<uint8>[8192] | |
| 2 | string | string[8192] | |
| 3 | int64 | int64 | |
| 4 | uint64 | uint64 | 
DictionaryDrainIterator_GetNext_Result 嚴格 資源
在 fuchsia.component.sandbox/sandbox.fidl 定義
| Ordinal | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | DictionaryDrainIterator_GetNext_Response | |
| 2 | err | CapabilityStoreError | |
| 3 | framework_err | internal | 
DictionaryEnumerateIterator_GetNext_Result 嚴格 資源
在 fuchsia.component.sandbox/sandbox.fidl 定義
| Ordinal | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | DictionaryEnumerateIterator_GetNext_Response | |
| 2 | err | CapabilityStoreError | |
| 3 | framework_err | internal | 
DictionaryKeysIterator_GetNext_Result 嚴格 資源
在 fuchsia.component.sandbox/sandbox.fidl 定義
| Ordinal | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | DictionaryKeysIterator_GetNext_Response | |
| 3 | framework_err | internal | 
Router_Route_Result 嚴格 資源
在 fuchsia.component.sandbox/sandbox.fidl 定義
| Ordinal | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | Router_Route_Response | |
| 2 | err | RouterError | |
| 3 | framework_err | internal | 
觀測站
| 名稱 | 值 | 類型 | 說明 | 
|---|---|---|---|
| MAX_DATA_LENGTH | 8192 | uint32 | [資料] 中的位元組數量上限。 新增時間:HEAD | 
| MAX_DICTIONARY_ITERATOR_CHUNK | 128 | uint32 | 字典疊代器傳回的項目數量上限。 新增時間:HEAD | 
| MAX_NAME_LENGTH | fuchsia.io/MAX_NAME_LENGTH | uint64 | 字典金鑰的長度上限。這應該與 fuchsia.component.MAX_NAME_LENGTH。 新增時間:HEAD | 
ALIASES
| 名稱 | 值 | 說明 | 
|---|---|---|
| CapabilityId | uint64 | 在 [CapabilityStore] 中指派一個 [Capability] 的客戶 ID。 ID 與 [CapabilityStore] 相關聯。如果有兩個 [CapabilityStore]具有 / 指派到相同 ID 的能力,但 沒有關聯 新增時間:HEAD | 
| DictionaryKey | string[MAX_NAME_LENGTH] | DictionaryItem 的鍵。有效金鑰的限制記載於 https://fuchsia.dev/reference/cml#names. 新增時間:HEAD | 
| NewCapabilityId | uint64 | 客戶在 [CapabilityStore] 中指派新 [Capability] 的 ID。與 [CapabilityId] 相同, 但用於區分 [CapabilityStore] 方法中的輸出參數。 新增時間:HEAD | 
| 符記 | zx/Handle | 符記代表 BDock 物件。符記會計算為參照項目,捨棄 符記的所有計數都會移除該物件。 新增時間:HEAD | 
| WrappedNewCapabilityId | fuchsia.component.sandbox/WrappedCapabilityId | 新增時間:HEAD |