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
|