PROTOCOLS
CapabilityFactory
Defined in fuchsia.component.runtime/factory.fidl
The CapabilityFactory
can be used to create new runtime capabilities.
CreateConnector
Request
Name | Type |
---|---|
receiver_client_end | client_end:Receiver |
connector_server_end | server_end:Connector |
CreateConnectorRouter
Request
Name | Type |
---|---|
router_client_end | client_end:ConnectorRouter |
router_server_end | server_end:ConnectorRouter |
CreateDataRouter
Request
Name | Type |
---|---|
router_client_end | client_end:DataRouter |
router_server_end | server_end:DataRouter |
CreateDictionary
Request
Name | Type |
---|---|
dictionary_server_end | server_end:Dictionary |
CreateDictionaryRouter
Request
Name | Type |
---|---|
router_client_end | client_end:DictionaryRouter |
router_server_end | server_end:DictionaryRouter |
CreateDirConnector
Request
Name | Type |
---|---|
dir_receiver_client_end | client_end:DirReceiver |
dir_connector_server_end | server_end:DirConnector |
CreateDirConnectorRouter
Request
Name | Type |
---|---|
router_client_end | client_end:DirConnectorRouter |
router_server_end | server_end:DirConnectorRouter |
Connector
Defined in fuchsia.component.runtime/factory.fidl
A Connector
represents the sending end of a connection to a capability. A Connector
presents as a service node when inserted into a fuchsia.io.Directory
.
Clone
Request
Name | Type |
---|---|
request | server_end:fuchsia.unknown/Cloneable |
Connect
Sends a channel to the Receiver
associated with this Connector
.
Request
Name | Type |
---|---|
channel | handle<channel> |
ConnectorRouter
Defined in fuchsia.component.runtime/factory.fidl
A factory for Connector
capabilities.
Clone
Request
Name | Type |
---|---|
request | server_end:fuchsia.unknown/Cloneable |
Route
Attempts to produce a Connector
capability from this ConnectorRouter
. This will return:
- A
Connector
if the operation is successful. - An empty value if there is no issue found but the capability is not being provided (for example, an optional route ended in an offer from void).
- An error, if the operation failed.
Request
Name | Type |
---|---|
request | RouteRequest |
connector_server_end | server_end:Connector |
Response
Name | Type |
---|---|
payload | ConnectorRouter_Route_Result |
DataRouter
Defined in fuchsia.component.runtime/factory.fidl
A factory for Data
capabilities.
Clone
Request
Name | Type |
---|---|
request | server_end:fuchsia.unknown/Cloneable |
Route
Attempts to produce a Data
capability from this DataRouter
. This will return:
- A
Data
value if the operation is successful. - An empty value if there is no issue found but the capability is not being provided (for example, an optional route ended in an offer from void).
- An error, if the operation failed.
Request
Name | Type |
---|---|
request | RouteRequest |
Response
Name | Type |
---|---|
payload | DataRouter_Route_Result |
Dictionary
Defined in fuchsia.component.runtime/factory.fidl
A Dictionary
is a bundle of named runtime capabilities.
Clone
Request
Name | Type |
---|---|
request | server_end:fuchsia.unknown/Cloneable |
Get
Returns a clone of the Capability
named key
in this dictionary, if that capability both exists and can be cloned.
Request
Name | Type |
---|---|
key | fuchsia.component.decl/name |
Response
Name | Type |
---|---|
payload | Dictionary_Get_Result |
Insert
Inserts a new Capability
into this Dictionary
under the name key
. Overwrites any existing entry.
The server end associated with the provided client end must be owned by component manager.
Request
Name | Type |
---|---|
key | fuchsia.component.decl/name |
capability | Capability |
IterateKeys
Opens an iterator which can be used to iterate over the keys of this dictionary.
Request
Name | Type |
---|---|
key_iterator | server_end:DictionaryKeyIterator |
LegacyExport
Exports this dictionary for use in a fuchsia.component.Realm/CreateChild
call.
Request
<EMPTY>
Response
Name | Type |
---|---|
payload | Dictionary_LegacyExport_Result |
Remove
Removes the Capability
named key
from this dictionary and returns it, if that capability exists.
Request
Name | Type |
---|---|
key | fuchsia.component.decl/name |
Response
Name | Type |
---|---|
payload | Dictionary_Remove_Result |
DictionaryKeyIterator
Defined in fuchsia.component.runtime/factory.fidl
GetNext
Returns the next set of keys in this dictionary. Returns an empty vector when there are no more keys to iterate.
Request
<EMPTY>
Response
Name | Type |
---|---|
payload | DictionaryKeyIterator_GetNext_Result |
DictionaryRouter
Defined in fuchsia.component.runtime/factory.fidl
A factory for Dictionary
capabilities.
Clone
Request
Name | Type |
---|---|
request | server_end:fuchsia.unknown/Cloneable |
Route
Attempts to produce a Dictionary
capability from this DictionaryRouter
. This will return:
- A
Dictionary
if the operation is successful. - An empty value if there is no issue found but the capability is not being provided (for example, an optional route ended in an offer from void).
- An error, if the operation failed.
Request
Name | Type |
---|---|
request | RouteRequest |
dictionary_server_end | server_end:Dictionary |
Response
Name | Type |
---|---|
payload | DictionaryRouter_Route_Result |
DirConnector
Defined in fuchsia.component.runtime/factory.fidl
A DirConnector
represents the sending end of a connection to a capability. A DirConnector
presents as a directory node when inserted into a fuchsia.io.Directory
.
Clone
Request
Name | Type |
---|---|
request | server_end:fuchsia.unknown/Cloneable |
Connect
Sends a channel to the DirReceiver
associated with this DirConnector
.
Request
Name | Type |
---|---|
channel | server_end:fuchsia.io/Directory |
DirConnectorRouter
Defined in fuchsia.component.runtime/factory.fidl
A factory for DirConnector
capabilities.
Clone
Request
Name | Type |
---|---|
request | server_end:fuchsia.unknown/Cloneable |
Route
Attempts to produce a DirConnector
capability from this DirConnectorRouter
. This will return:
- A
DirConnector
if the operation is successful. - An empty value if there is no issue found but the capability is not being provided (for example, an optional route ended in an offer from void).
- An error, if the operation failed.
Request
Name | Type |
---|---|
request | RouteRequest |
dir_connector_server_end | server_end:DirConnector |
Response
Name | Type |
---|---|
payload | DirConnectorRouter_Route_Result |
DirReceiver
Defined in fuchsia.component.runtime/factory.fidl
A DirReceiver
represents the receiving end of a connection to a capability.
Receive
Receive
will be called by component manager whenever a new handle has been given to any DirConnector
associated with this DirReceiver
.
Request
Name | Type |
---|---|
channel | server_end:fuchsia.io/Directory |
Receiver
Defined in fuchsia.component.runtime/factory.fidl
A Receiver
represents the receiving end of a connection to a capability.
Receive
Receive
will be called by component manager whenever an new handle has been given to any Connector
associated with this Receiver
.
Request
Name | Type |
---|---|
channel | handle<channel> |
STRUCTS
ConnectorRouter_Route_Response resource
Defined in fuchsia.component.runtime/factory.fidl
Field | Type | Description | Default |
---|---|---|---|
response | RouterResponse | No default |
DataRouter_Route_Response resource
Defined in fuchsia.component.runtime/factory.fidl
Field | Type | Description | Default |
---|---|---|---|
response | RouterResponse | No default | |
data | Data? | No default |
DictionaryKeyIterator_GetNext_Response
Defined in fuchsia.component.runtime/factory.fidl
Field | Type | Description | Default |
---|---|---|---|
keys | vector<fuchsia.component.decl/name> | No default |
DictionaryRouter_Route_Response resource
Defined in fuchsia.component.runtime/factory.fidl
Field | Type | Description | Default |
---|---|---|---|
response | RouterResponse | No default |
Dictionary_Get_Response resource
Defined in fuchsia.component.runtime/factory.fidl
Field | Type | Description | Default |
---|---|---|---|
capability | Capability? | No default |
Dictionary_LegacyExport_Response resource
Defined in fuchsia.component.runtime/factory.fidl
Field | Type | Description | Default |
---|---|---|---|
dictionary_ref | fuchsia.component.sandbox/DictionaryRef | No default |
Dictionary_Remove_Response resource
Defined in fuchsia.component.runtime/factory.fidl
Field | Type | Description | Default |
---|---|---|---|
capability | Capability? | No default |
DirConnectorRouter_Route_Response resource
Defined in fuchsia.component.runtime/factory.fidl
Field | Type | Description | Default |
---|---|---|---|
response | RouterResponse | No default |
WeakInstanceToken resource
Defined in fuchsia.component.runtime/factory.fidl
A token representing a component instance.
Field | Type | Description | Default |
---|---|---|---|
token | handle<eventpair> | No default |
ENUMS
RouterError flexible
Type: uint32
Defined in fuchsia.component.runtime/factory.fidl
The error values returned when a route operation fails.
Name | Value | Description |
---|---|---|
NOT_FOUND | 1 | The router failed to find the capability. |
INVALID_ARGS | 2 | The arguments provided to the function are invalid. |
NOT_SUPPORTED | 3 | The operation is not supported. |
INTERNAL | 4 | An internal error occurred. |
UNKNOWN | 5 | An unknown error occurred. |
RouterResponse flexible
Type: uint32
Defined in fuchsia.component.runtime/factory.fidl
The error values returned when a route operation succeeds.
Name | Value | Description |
---|---|---|
SUCCESS | 1 | The server end has been connected to a valid object. |
UNAVAILABLE | 2 | The capability was marked as unavailable. |
TABLES
RouteRequest resource
Defined in fuchsia.component.runtime/factory.fidl
Contains metadata on how to route a capability, and a token representing the component that started the route.
Either both fields must be set, or neither.
Ordinal | Field | Type | Description |
---|---|---|---|
1 | target | WeakInstanceToken | |
2 | metadata | client_end:Dictionary |
UNIONS
Capability flexible resource
Defined in fuchsia.component.runtime/factory.fidl
A runtime capability in the component framework. These are the fundamental types used by component manager to implement capability routing and access control.
Each of these client ends is a reference to an object owned by component manager.
Ordinal | Variant | Type | Description |
---|---|---|---|
1 | connector | client_end:Connector | |
2 | dir_connector | client_end:DirConnector | |
3 | dictionary | client_end:Dictionary | |
4 | data | Data | |
5 | connector_router | client_end:ConnectorRouter | |
6 | dir_connector_router | client_end:DirConnectorRouter | |
7 | dictionary_router | client_end:DictionaryRouter | |
8 | data_router | client_end:DataRouter |
ConnectorRouter_Route_Result strict resource
Defined in fuchsia.component.runtime/factory.fidl
Ordinal | Variant | Type | Description |
---|---|---|---|
1 | response | ConnectorRouter_Route_Response | |
2 | err | RouterError | |
3 | framework_err | internal |
Data flexible
Defined in fuchsia.component.runtime/factory.fidl
Static data which may be put in a dictionary. This is useful for setting values in the metadata of a RouteRequest
.
Ordinal | Variant | Type | Description |
---|---|---|---|
1 | bytes | vector<uint8>:8192 | |
2 | string | string:8192 | |
3 | int64 | int64 | |
4 | uint64 | uint64 |
DataRouter_Route_Result strict resource
Defined in fuchsia.component.runtime/factory.fidl
Ordinal | Variant | Type | Description |
---|---|---|---|
1 | response | DataRouter_Route_Response | |
2 | err | RouterError | |
3 | framework_err | internal |
DictionaryKeyIterator_GetNext_Result strict
Defined in fuchsia.component.runtime/factory.fidl
Ordinal | Variant | Type | Description |
---|---|---|---|
1 | response | DictionaryKeyIterator_GetNext_Response | |
3 | framework_err | internal |
DictionaryRouter_Route_Result strict resource
Defined in fuchsia.component.runtime/factory.fidl
Ordinal | Variant | Type | Description |
---|---|---|---|
1 | response | DictionaryRouter_Route_Response | |
2 | err | RouterError | |
3 | framework_err | internal |
Dictionary_Get_Result strict resource
Defined in fuchsia.component.runtime/factory.fidl
Ordinal | Variant | Type | Description |
---|---|---|---|
1 | response | Dictionary_Get_Response | |
3 | framework_err | internal |
Dictionary_LegacyExport_Result strict resource
Defined in fuchsia.component.runtime/factory.fidl
Ordinal | Variant | Type | Description |
---|---|---|---|
1 | response | Dictionary_LegacyExport_Response | |
3 | framework_err | internal |
Dictionary_Remove_Result strict resource
Defined in fuchsia.component.runtime/factory.fidl
Ordinal | Variant | Type | Description |
---|---|---|---|
1 | response | Dictionary_Remove_Response | |
3 | framework_err | internal |
DirConnectorRouter_Route_Result strict resource
Defined in fuchsia.component.runtime/factory.fidl
Ordinal | Variant | Type | Description |
---|---|---|---|
1 | response | DirConnectorRouter_Route_Response | |
2 | err | RouterError | |
3 | framework_err | internal |
CONSTANTS
Name | Value | Type | Description |
---|---|---|---|
MAX_DATA_LENGTH | 8192 | uint32 | Added: HEAD |