Skip to content

Microsoft.Orleans.Core.Abstractions

10.0.0 · net10.0

Orleans

ErrorCode

enum
The set of error codes used by the Orleans runtime libraries for logging errors.

Grain

class
The abstract base class for all grain classes.

GrainFactoryExtensions

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

GrainTypeAttribute

class
Specifies the grain type of the grain class which it is attached to.

IConfigurationValidator

interface
Describes a configuration validator which is called during client and silo initialization.

IGrain

interface
Marker interface for grains

IGrainBase

interface
Interface for grain implementations

IGrainCallContext

interface
Represents a method invocation as well as the result of invocation.

IGrainFactory

interface
Functionality for creating references to grains.

IGrainObserver

interface
A marker interface for grain observers. Observers are used to receive notifications from grains; that is, they represent the subscriber side of a publisher/subscriber interface.

ILifecycleObservable

interface
Observable lifecycle. Each stage of the lifecycle is observable. All observers will be notified when the stage is reached when starting, and stopping. Stages are started in ascending order, and stopped in descending order.

ILifecycleObserver

interface
Lifecycle observer used to handle start and stop notification.

ISystemTarget

interface
This is a markup interface for system targets. System target are internal runtime objects that share some behavior with grains, but also impose certain restrictions. In particular: System target are asynchronously addressable actors. Proxy class is being generated for ISystemTarget, just like for IGrain System target are scheduled by the runtime scheduler and follow turn based concurrency.

IVersionManager

interface
Functionality for managing how grain interface versions are negotiated.

StableHash

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Orleans.CodeGeneration

VersionAttribute

class
The VersionAttribute allows to specify the version number of the interface

Orleans.Concurrency

AlwaysInterleaveAttribute

class
The AlwaysInterleaveAttribute attribute is used to mark methods that can interleave with any method, including write (non ReadOnly) requests.

Immutable<T>

struct
Wrapper class for carrying immutable data.

MayInterleaveAttribute

class
The MayInterleaveAttribute attribute is used to mark classes that want to control request interleaving via supplied method callback.

OneWayAttribute

class
Indicates that a method on a grain interface is one-way and that no response message will be sent to the caller.

ReadOnlyAttribute

class
The ReadOnly attribute is used to mark methods that do not modify the state of a grain.

Marking methods as ReadOnly allows the run-time system to perform a number of optimizations that may significantly improve the performance of your application.

ReentrantAttribute

class
The Reentrant attribute is used to mark grain implementation classes that allow request interleaving within a task.

This is an advanced feature and should not be used unless the implications are fully understood. That said, allowing request interleaving allows the run-time system to perform a number of optimizations that may significantly improve the performance of your application.

StatelessWorkerAttribute

class
The StatelessWorker attribute is used to mark grain class in which there is no expectation of preservation of grain state between requests and where multiple activations of the same grain are allowed to be created by the runtime.

UnorderedAttribute

class
The Unordered attribute is used to mark grain interface in which the delivery order of messages is not significant.

Orleans.Core

IStorage

interface
Provides method for operating on grain storage.

Orleans.Core.Internal

Orleans.Diagnostics

ActivitySources

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Orleans.GrainDirectory

GrainDirectoryAttribute

class
Specifies the name of the grain directory provider to use for the grain class which this attribute is applied to.

Orleans.Metadata

ClusterManifest

class
Information about types which are available in the cluster.

DefaultGrainTypeAttribute

class
Specifies the default grain type to use when constructing a grain reference for this interface without specifying a grain type.

IGrainTypeProviderAttribute

interface
Functionality which can be implemented by a custom System.Attribute which implements this specifies the GrainType of the type which it is attached to.

MajorMinorVersion

struct
Represents a version with two components, a major (most-significant) component, and a minor (least-significant) component.

Orleans.Placement

ImmovableAttribute

class
Ensures that activations of this grain type will not be migrated automatically.

ImmovableKind

enum
Emphasizes that immovability is restricted to certain components.

Orleans.Providers

LogConsistencyProviderAttribute

class
The [Orleans.Providers.LogConsistencyProvider] attribute is used to define which consistency provider to use for grains using the log-view state abstraction.

Specifying [Orleans.Providers.LogConsistencyProvider] property is recommended for all grains that derive from LogConsistentGrain, such as JournaledGrain. If no [Orleans.Providers.LogConsistencyProvider] attribute is specified, then the runtime tries to locate one as follows. First, it looks for a "Default" provider in the configuration file, then it checks if the grain type defines a default. If a consistency provider cannot be located for this grain, then the grain will fail to load into the Silo.

StorageProviderAttribute

class
The [Orleans.Providers.StorageProvider] attribute is used to define which storage provider to use for persistence of grain state.

Specifying [Orleans.Providers.StorageProvider] property is recommended for all grains which extend Grain<T>. If no [Orleans.Providers.StorageProvider] attribute is specified, then a "Default" storage provider will be used. If a suitable storage provider cannot be located for this grain, then the grain will fail to load into the Silo.

Orleans.Runtime

ActivationCountBasedPlacement

class
A placement strategy which attempts to achieve approximately even load based upon the number of recently-active grains on each server.

AsyncEnumerableExtensions

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Category

enum
Type id values encoded into UniqueKeys

GatewayTooBusyException

class
Signifies that a gateway silo is currently in overloaded / load shedding state and is unable to currently accept this message being sent.

GrainLifecycleStage

class
Stages of a grains lifecycle. TODO: Add more later, see ActivationInitializationStage Full grain lifecycle, including register, state setup, and stream cleanup should all eventually be triggered by the grain lifecycle.

GrainType

struct
Represents the type of a grain.

HashBasedPlacement

class
Places activations on compatible silos by hashing the grain identifier using a stable hash and selecting a silo from a sorted set using a modulo operation.

IAddressable

interface
Marker interface for addressable endpoints, such as grains, observers, and other system-internal addressable endpoints

IAsyncEnumerableGrainExtension

interface
Grain extension interface for grains which return System.Collections.Generic.IAsyncEnumerable from grain methods.

IDehydrationContext

interface
Records the state of a grain activation which is in the process of being dehydrated for migration to another location.

IdSpan

struct
Primitive type for identities, representing a sequence of bytes.

IGrainContext

interface
Represents a grain from the perspective of the runtime.

IGrainExtension

interface
Marker interface for grain extensions, used by internal runtime extension endpoints.

IGrainRuntime

interface
The gateway of the Grain to the Orleans runtime. The Grain should only interact with the runtime through this interface.

IGrainTimer

interface
Represents a timer belonging to a grain.

IRehydrationContext

interface
Contains the state of a grain activation which is in the process of being rehydrated after moving from another location.

IRequest

interface
Represents a request to invoke a method on a grain.

LegacyGrainId

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

LimitExceededException

class
Signifies that a grain is in an overloaded state where some runtime limit setting is currently being exceeded, and so that grain is unable to currently accept the message being sent.

MembershipVersion

struct
Identifies the version of a cluster membership configuration.

OrleansException

class
An exception class used by the Orleans runtime for reporting errors.

PreferLocalPlacement

class
The prefer local placement strategy indicates that a grain should always be placed on the local host if the grain is not already active elsewhere in the cluster and the local host is compatible with it.

RandomPlacement

class
The random placement strategy specifies that new activations of a grain should be placed on a random, compatible server.

Request

class
Base class for requests for methods which return System.Threading.Tasks.ValueTask.

Request<TResult>

class
Base class for requests for methods which return System.Threading.Tasks.ValueTask.

RequestContext

class
This class holds information regarding the request currently being processed. It is explicitly intended to be available to application code.

SiloAddress

class
Data class encapsulating the details of silo addresses.

SiloRoleBasedPlacement

class
The silo role placement strategy specifies that a grain should be placed on a compatible silo which has the role specified by the strategy's placement attribute.

TaskRequest

class
Base class for requests for methods which return System.Threading.Tasks.ValueTask.

TaskRequest<TResult>

class
Base class for requests for methods which return System.Threading.Tasks.Task.

UniqueKey

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Utils

class
The Utils class contains a variety of utility methods for use in application and grain code.

VoidRequest

class
Base class for requests for void-returning methods.

WrappedException

class
An exception class used by the Orleans runtime for reporting errors.

Orleans.Runtime.Serialization

Orleans.Serialization

DeserializationContext

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

IOnDeserialized

interface
Indicates that a class is to be notified when it has been deserialized.

Orleans.Services

Orleans.Statistics

EnvironmentStatistics

struct
Contains statistics about the current process and its execution environment.

Orleans.Timers

Orleans.Versions

IVersionStore

interface
Functionality for accessing runtime-modifiable grain interface version strategies.

Orleans.Versions.Compatibility

AllVersionsCompatible

class
A grain interface version compatibility strategy which treats all versions of an interface compatible with any requested version.

BackwardCompatible

class
A grain interface version compatibility strategy which treats all versions of an interface compatible only with equal and lower requested versions.

StrictVersionCompatible

class
A grain interface version compatibility strategy which treats all versions of an interface compatible only with equal requested versions.

Orleans.Versions.Selector

AllCompatibleVersions

class
Grain interface version selector which allows any compatible version to be chosen.

IVersionSelector

interface
Functionality for selecting which versions of a grain interface should be preferred when performing grain placement.

LatestVersion

class
Grain interface version selector which always selects the highest compatible version.

MinimumVersion

class
Grain interface version selector which always selects the lowest compatible version.

OrleansCodeGen.Orleans

Codec_DeactivationReasonCode

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

OrleansCodeGen.Orleans.CodeGeneration

Codec_InvokeMethodOptions

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

OrleansCodeGen.Orleans.Concurrency

Codec_Immutable<T>

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Copier_Immutable<T>

class
Base type for deep copiers of types that are actually shallow-copyable.

OrleansCodeGen.Orleans.Core.Internal

OrleansCodeGen.Orleans.Metadata

Codec_ClusterManifest

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_GrainInterfaceProperties

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_GrainManifest

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_GrainProperties

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_MajorMinorVersion

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

OrleansCodeGen.Orleans.Runtime

Codec_ActivationCountBasedPlacement

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_ActivationId

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_AsyncEnumerableRequest<T>

class
Serializer for types which are abstract and therefore cannot be instantiated themselves, such as abstract classes and interface types.

Codec_ClientNotAvailableException

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_EnumerationAbortedException

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_EnumerationResult

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_GatewayTooBusyException

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_GrainAddress

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_GrainAddressCacheUpdate

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_GrainExtensionNotInstalledException

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_GrainId

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_GrainInterfaceType

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_GrainReferenceNotBoundException

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_GrainType

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_GuidId

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_HashBasedPlacement

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_IdSpan

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_LegacyGrainId

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_LimitExceededException

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_MembershipVersion

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_OrleansConfigurationException

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_OrleansException

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_OrleansLifecycleCanceledException

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_OrleansMessageRejectionException

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_PreferLocalPlacement

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_RandomPlacement

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_ResourceOptimizedPlacement

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_SiloRoleBasedPlacement

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_SiloUnavailableException

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_SystemTargetPlacementStrategy

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_UniqueKey

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_WrappedException

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Copier_AsyncEnumerableRequest<T>

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Copier_SiloRoleBasedPlacement

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

OrleansCodeGen.Orleans.Statistics

Codec_EnvironmentStatistics

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

OrleansCodeGen.Orleans.Versions.Compatibility

Codec_AllVersionsCompatible

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_BackwardCompatible

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_StrictVersionCompatible

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

OrleansCodeGen.Orleans.Versions.Selector

Codec_AllCompatibleVersions

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_LatestVersion

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

Codec_MinimumVersion

class
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.