fuchsia.component.runtime

Added: HEAD

PROTOCOLS

CapabilityFactory

Defined in fuchsia.component.runtime/factory.fidl

The CapabilityFactory can be used to create new runtime capabilities.

Added: HEAD

CreateConnector

Request

NameType
receiver_client_end client_end:Receiver
connector_server_end server_end:Connector

CreateConnectorRouter

Request

NameType
router_client_end client_end:ConnectorRouter
router_server_end server_end:ConnectorRouter

CreateDataRouter

Request

NameType
router_client_end client_end:DataRouter
router_server_end server_end:DataRouter

CreateDictionary

Request

NameType
dictionary_server_end server_end:Dictionary

CreateDictionaryRouter

Request

NameType
router_client_end client_end:DictionaryRouter
router_server_end server_end:DictionaryRouter

CreateDirConnector

Request

NameType
dir_receiver_client_end client_end:DirReceiver
dir_connector_server_end server_end:DirConnector

CreateDirConnectorRouter

Request

NameType
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.

Added: HEAD

Clone

Added: 26

Request

NameType
request server_end:fuchsia.unknown/Cloneable

Connect

Sends a channel to the Receiver associated with this Connector.

Request

NameType
channel handle<channel>

ConnectorRouter

Defined in fuchsia.component.runtime/factory.fidl

A factory for Connector capabilities.

Added: HEAD

Clone

Added: 26

Request

NameType
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

NameType
request RouteRequest
connector_server_end server_end:Connector

Response

NameType
payload ConnectorRouter_Route_Result

DataRouter

Defined in fuchsia.component.runtime/factory.fidl

A factory for Data capabilities.

Added: HEAD

Clone

Added: 26

Request

NameType
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

NameType
request RouteRequest

Response

NameType
payload DataRouter_Route_Result

Dictionary

Defined in fuchsia.component.runtime/factory.fidl

A Dictionary is a bundle of named runtime capabilities.

Added: HEAD

Clone

Added: 26

Request

NameType
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

NameType
key fuchsia.component.decl/name

Response

NameType
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

NameType
key fuchsia.component.decl/name
capability Capability

IterateKeys

Opens an iterator which can be used to iterate over the keys of this dictionary.

Request

NameType
key_iterator server_end:DictionaryKeyIterator

LegacyExport

Exports this dictionary for use in a fuchsia.component.Realm/CreateChild call.

Request

<EMPTY>

Response

NameType
payload Dictionary_LegacyExport_Result

Remove

Removes the Capability named key from this dictionary and returns it, if that capability exists.

Request

NameType
key fuchsia.component.decl/name

Response

NameType
payload Dictionary_Remove_Result

DictionaryKeyIterator

Defined in fuchsia.component.runtime/factory.fidl

Added: HEAD

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

NameType
payload DictionaryKeyIterator_GetNext_Result

DictionaryRouter

Defined in fuchsia.component.runtime/factory.fidl

A factory for Dictionary capabilities.

Added: HEAD

Clone

Added: 26

Request

NameType
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

NameType
request RouteRequest
dictionary_server_end server_end:Dictionary

Response

NameType
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.

Added: HEAD

Clone

Added: 26

Request

NameType
request server_end:fuchsia.unknown/Cloneable

Connect

Sends a channel to the DirReceiver associated with this DirConnector.

Request

NameType
channel server_end:fuchsia.io/Directory

DirConnectorRouter

Defined in fuchsia.component.runtime/factory.fidl

A factory for DirConnector capabilities.

Added: HEAD

Clone

Added: 26

Request

NameType
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

NameType
request RouteRequest
dir_connector_server_end server_end:DirConnector

Response

NameType
payload DirConnectorRouter_Route_Result

DirReceiver

Defined in fuchsia.component.runtime/factory.fidl

A DirReceiver represents the receiving end of a connection to a capability.

Added: HEAD

Receive

Receive will be called by component manager whenever a new handle has been given to any DirConnector associated with this DirReceiver.

Request

NameType
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.

Added: HEAD

Receive

Receive will be called by component manager whenever an new handle has been given to any Connector associated with this Receiver.

Request

NameType
channel handle<channel>

STRUCTS

ConnectorRouter_Route_Response resource

Defined in fuchsia.component.runtime/factory.fidl

FieldTypeDescriptionDefault
response RouterResponse No default

DataRouter_Route_Response resource

Defined in fuchsia.component.runtime/factory.fidl

FieldTypeDescriptionDefault
response RouterResponse No default
data Data? No default

DictionaryKeyIterator_GetNext_Response

Defined in fuchsia.component.runtime/factory.fidl

FieldTypeDescriptionDefault
keys vector<fuchsia.component.decl/name> No default

DictionaryRouter_Route_Response resource

Defined in fuchsia.component.runtime/factory.fidl

FieldTypeDescriptionDefault
response RouterResponse No default

Dictionary_Get_Response resource

Defined in fuchsia.component.runtime/factory.fidl

FieldTypeDescriptionDefault
capability Capability? No default

Dictionary_LegacyExport_Response resource

Defined in fuchsia.component.runtime/factory.fidl

FieldTypeDescriptionDefault
dictionary_ref fuchsia.component.sandbox/DictionaryRef No default

Dictionary_Remove_Response resource

Defined in fuchsia.component.runtime/factory.fidl

FieldTypeDescriptionDefault
capability Capability? No default

DirConnectorRouter_Route_Response resource

Defined in fuchsia.component.runtime/factory.fidl

FieldTypeDescriptionDefault
response RouterResponse No default

WeakInstanceToken resource

Defined in fuchsia.component.runtime/factory.fidl

A token representing a component instance.

Added: HEAD

FieldTypeDescriptionDefault
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.

Added: HEAD

NameValueDescription
1

The router failed to find the capability.

2

The arguments provided to the function are invalid.

3

The operation is not supported.

4

An internal error occurred.

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.

Added: HEAD

NameValueDescription
1

The server end has been connected to a valid object.

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.

Added: HEAD

OrdinalFieldTypeDescription
target WeakInstanceToken
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.

Added: HEAD
OrdinalVariantTypeDescription
connector client_end:Connector
dir_connector client_end:DirConnector
dictionary client_end:Dictionary
data Data
connector_router client_end:ConnectorRouter
dir_connector_router client_end:DirConnectorRouter
dictionary_router client_end:DictionaryRouter
data_router client_end:DataRouter

ConnectorRouter_Route_Result strict resource

Defined in fuchsia.component.runtime/factory.fidl

OrdinalVariantTypeDescription
response ConnectorRouter_Route_Response
err RouterError
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.

Added: HEAD
OrdinalVariantTypeDescription
bytes vector<uint8>:8192
string string:8192
int64 int64
uint64 uint64

DataRouter_Route_Result strict resource

Defined in fuchsia.component.runtime/factory.fidl

OrdinalVariantTypeDescription
response DataRouter_Route_Response
err RouterError
framework_err internal

DictionaryKeyIterator_GetNext_Result strict

Defined in fuchsia.component.runtime/factory.fidl

OrdinalVariantTypeDescription
response DictionaryKeyIterator_GetNext_Response
framework_err internal

DictionaryRouter_Route_Result strict resource

Defined in fuchsia.component.runtime/factory.fidl

OrdinalVariantTypeDescription
response DictionaryRouter_Route_Response
err RouterError
framework_err internal

Dictionary_Get_Result strict resource

Defined in fuchsia.component.runtime/factory.fidl

OrdinalVariantTypeDescription
response Dictionary_Get_Response
framework_err internal

Dictionary_LegacyExport_Result strict resource

Defined in fuchsia.component.runtime/factory.fidl

OrdinalVariantTypeDescription
response Dictionary_LegacyExport_Response
framework_err internal

Dictionary_Remove_Result strict resource

Defined in fuchsia.component.runtime/factory.fidl

OrdinalVariantTypeDescription
response Dictionary_Remove_Response
framework_err internal

DirConnectorRouter_Route_Result strict resource

Defined in fuchsia.component.runtime/factory.fidl

OrdinalVariantTypeDescription
response DirConnectorRouter_Route_Response
err RouterError
framework_err internal

CONSTANTS

NameValueTypeDescription
MAX_DATA_LENGTH 8192 uint32
Added: HEAD