Table of Contents

Interface IMetadata

Namespace
MarymoorStudios.Core.Rpc
Assembly
MarymoorStudios.Core.Rpc.dll

A general mechanism for publishing late-bound eventual capabilities.

[Eventual]
public interface IMetadata

Remarks

IMetadata is a general Eventual interface for exposing a set of late-bound capabilities. Exactly which capabilities are published can be defined at runtime. IMetadata makes for a useful root capability from any Sip that may:

  • Expose different capabilities to different clients (e.g. IMyService and IYourService).
  • Expose different capabilities at different times (e.g. IStateState and IFinalState ).
  • Expose multiple version-specific interfaces of the same service (e.g. IMyServiceV1 and IMyServiceV2).

Methods

GetCapabilities()

Promise<IMetadata.Descriptor[]> GetCapabilities()

Returns

Promise<IMetadata.Descriptor[]>