JournaledGrain<TGrainState,TEventBase> Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Clase base para granos coherentes con el registro mediante la terminología estándar de aprovisionamiento de eventos. Todas las operaciones son seguras para la reentrada.
public abstract class JournaledGrain<TGrainState,TEventBase> : Orleans.LogConsistency.LogConsistentGrainBase<TGrainState>, Orleans.LogConsistency.ILogConsistentGrain, Orleans.LogConsistency.ILogViewAdaptorHost<TGrainState,TEventBase>, Orleans.MultiCluster.ILogConsistencyProtocolParticipant where TGrainState : class, new() where TEventBase : class
public abstract class JournaledGrain<TGrainState,TEventBase> : Orleans.LogConsistency.LogConsistentGrain<TGrainState>, Orleans.IGrain, Orleans.LogConsistency.ILogViewAdaptorHost<TGrainState,TEventBase>, Orleans.MultiCluster.ILogConsistencyProtocolParticipant where TGrainState : class, new() where TEventBase : class
public abstract class JournaledGrain<TGrainState,TEventBase> : Orleans.EventSourcing.LogConsistentGrain<TGrainState>, Orleans.EventSourcing.ILogConsistencyProtocolParticipant, Orleans.EventSourcing.ILogViewAdaptorHost<TGrainState,TEventBase>, Orleans.IGrain where TGrainState : class, new() where TEventBase : class
type JournaledGrain<'GrainState, 'EventBase (requires 'GrainState : null and 'GrainState : (new : unit -> 'GrainState) and 'EventBase : null)> = class
inherit LogConsistentGrainBase<'GrainState (requires 'GrainState : null and 'GrainState : (new : unit -> 'GrainState))>
interface ILogConsistentGrain
interface ILogConsistencyProtocolParticipant
interface IGrain
interface IAddressable
interface ILogViewAdaptorHost<'GrainState, 'EventBase (requires 'GrainState : null and 'GrainState : (new : unit -> 'GrainState) and 'EventBase : null)>
interface IConnectionIssueListener
type JournaledGrain<'GrainState, 'EventBase (requires 'GrainState : null and 'GrainState : (new : unit -> 'GrainState) and 'EventBase : null)> = class
inherit LogConsistentGrain<'GrainState (requires 'GrainState : null and 'GrainState : (new : unit -> 'GrainState))>
interface ILogConsistencyProtocolParticipant
interface IGrain
interface IAddressable
interface ILogViewAdaptorHost<'GrainState, 'EventBase (requires 'GrainState : null and 'GrainState : (new : unit -> 'GrainState) and 'EventBase : null)>
interface IConnectionIssueListener
Public MustInherit Class JournaledGrain(Of TGrainState, TEventBase)
Inherits LogConsistentGrainBase(Of TGrainState)
Implements ILogConsistencyProtocolParticipant, ILogConsistentGrain, ILogViewAdaptorHost(Of TGrainState, TEventBase)
Public MustInherit Class JournaledGrain(Of TGrainState, TEventBase)
Inherits LogConsistentGrain(Of TGrainState)
Implements IGrain, ILogConsistencyProtocolParticipant, ILogViewAdaptorHost(Of TGrainState, TEventBase)
Parámetros de tipo
- TGrainState
Tipo para el estado de grano, es decir, la vista de agregado del registro de eventos.
- TEventBase
La clase base común para los eventos
- Herencia
- Herencia
- Herencia
- Derivado
- Implementaciones
-
IGrain IConnectionIssueListener ILogConsistentGrain ILogViewAdaptorHost<TGrainState,TEventBase> ILogConsistencyProtocolParticipant IAddressable IConnectionIssueListener ILogConsistencyProtocolParticipant ILogViewAdaptorHost<TGrainState,TEventBase>
Constructores
JournaledGrain<TGrainState,TEventBase>() |
Inicializa una nueva instancia de la clase JournaledGrain<TGrainState,TEventBase>. |
JournaledGrain<TGrainState,TEventBase>(IGrainIdentity, IGrainRuntime) |
Este constructor es especialmente útil para las pruebas unitarias en las que el código de prueba puede crear un elemento Grain y reemplazar IGrainIdentity, IGrainRuntime y State por dobles de prueba (mocks/stubs). |
Propiedades
DefaultAdaptorFactory |
Si no se especifica ningún proveedor de coherencia de registro, almacene el estado con versiones mediante el proveedor de almacenamiento predeterminado. |
GrainContext |
Clase base para granos coherentes con el registro mediante la terminología estándar de aprovisionamiento de eventos. Todas las operaciones son seguras para la reentrada. (Heredado de Grain) |
GrainFactory |
Obtiene un objeto que se puede usar para tener acceso a otros granos. Null si este grano no está asociado a un runtime, como cuando se crea directamente para las pruebas unitarias. (Heredado de Grain) |
GrainReference |
Clase base para granos coherentes con el registro mediante la terminología estándar de aprovisionamiento de eventos. Todas las operaciones son seguras para la reentrada. (Heredado de Grain) |
IdentityString |
Representación de cadena de siloIdentity del grano, incluido el tipo y la clave principal. (Heredado de Grain) |
RuntimeIdentity |
Identificador único del silo actual. No hay contenido semántico en esta cadena, pero puede resultar útil para el registro. (Heredado de Grain) |
ServiceProvider |
Obtiene el IServiceProvider administrado por el tiempo de ejecución. Null si este grano no está asociado a un runtime, como cuando se crea directamente para las pruebas unitarias. (Heredado de Grain) |
State |
Obtiene el estado confirmado actual. Incluye solo eventos confirmados. |
TentativeState |
Obtiene el estado provisional actual. Incluye eventos confirmados y no confirmados. |
UnconfirmedEvents |
Devuelve la cola actual de eventos no confirmados. |
UnresolvedConnectionIssues |
Obtiene una lista de todos los problemas de conexión no resueltos actualmente. |
Version |
Obtiene la versión del estado confirmado actual. Es igual al número total de eventos confirmados. |
Métodos
ConfirmEvents() |
Espera hasta que se hayan confirmado todos los eventos generados anteriormente. espere esto después de generar uno o varios eventos, para asegurarse de que los eventos se conservan antes de continuar, o para garantizar una coherencia fuerte (linealización) incluso si hay varias instancias de este grano |
DeactivateOnIdle() |
Desactive esta activación del grano una vez completada la llamada al método de grano actual. Esta llamada marcará esta activación del grano actual que se va a desactivar y quitar al final del método actual. La siguiente llamada a este grano dará lugar a una activación diferente que se usará, lo que significa que el tiempo de ejecución creará automáticamente una nueva activación. (Heredado de Grain) |
DelayDeactivation(TimeSpan) |
Retrasar la desactivación de esta activación al menos durante el tiempo especificado.
Un valor de |
DisableStatsCollection() |
Clase base para granos coherentes con el registro mediante la terminología estándar de aprovisionamiento de eventos. Todas las operaciones son seguras para la reentrada. |
EnableStatsCollection() |
Clase base para granos coherentes con el registro mediante la terminología estándar de aprovisionamiento de eventos. Todas las operaciones son seguras para la reentrada. |
GetLogger() |
Devuelve un objeto registrador que el código de este grano puede usar para el seguimiento. El nombre del registrador se derivará del nombre de la clase de grano. (Heredado de Grain) |
GetLogger(String) |
Devuelve un objeto registrador que el código de este grano puede usar para el seguimiento. (Heredado de Grain) |
GetReminder(String) |
Devuelve un aviso registrado anteriormente. (Heredado de Grain) |
GetReminders() |
Devuelve una lista de todos los recordatorios registrados por el grano. (Heredado de Grain) |
GetStats() |
Clase base para granos coherentes con el registro mediante la terminología estándar de aprovisionamiento de eventos. Todas las operaciones son seguras para la reentrada. |
GetStreamProvider(String) |
Clase base para granos coherentes con el registro mediante la terminología estándar de aprovisionamiento de eventos. Todas las operaciones son seguras para la reentrada. (Heredado de Grain) |
GetStreamProviders() |
Clase base para granos coherentes con el registro mediante la terminología estándar de aprovisionamiento de eventos. Todas las operaciones son seguras para la reentrada. (Heredado de Grain) |
InstallAdaptor(ILogViewAdaptorFactory, Object, String, IGrainStorage, ILogConsistencyProtocolServices) |
Se llama justo después de construir el grano para instalar el adaptador. El proveedor de coherencia de registros contiene un método de fábrica que construye el adaptador con tipos elegidos para este grano. |
InstallAdaptor(ILogViewAdaptorFactory, Object, String, IGrainStorage, ILogConsistencyProtocolServices) |
Se llama justo después de construir el grano para instalar el adaptador. El proveedor de coherencia de registros contiene un método de fábrica que construye el adaptador con tipos elegidos para este grano. |
MigrateOnIdle() |
Inicia un intento de migrar esta instancia a otra ubicación. La migración captura el RequestContextactual, lo que hace que esté disponible para el director de selección de ubicación de la activación para que pueda considerarlo al seleccionar una nueva ubicación. La migración se producirá de forma asincrónica, cuando no se ejecute ninguna solicitud y no se producirá si el director de selección de ubicación de la activación no selecciona una ubicación alternativa. (Heredado de Grain) |
OnActivateAsync() |
De forma predeterminada, tras la activación, el grano en diario espera hasta que haya cargado la vista más reciente desde el almacenamiento. Las subclases pueden invalidar este comportamiento y omitir la espera si lo desea. |
OnActivateAsync() |
Este método se llama al final del proceso de activación de un grano. Se llama antes de que se hayan enviado mensajes al grano. En el caso de los granos con estado persistente declarado, se llama a este método después de rellenar la propiedad State. (Heredado de Grain) |
OnActivateAsync(CancellationToken) |
De forma predeterminada, tras la activación, el grano en diario espera hasta que haya cargado la vista más reciente desde el almacenamiento. Las subclases pueden invalidar este comportamiento y omitir la espera si lo desea. |
OnActivateAsync(CancellationToken) |
Este método se llama al final del proceso de activación de un grano. Se llama antes de que se hayan enviado mensajes al grano. En el caso de los granos con estado persistente declarado, se llama a este método después de rellenar la propiedad State. (Heredado de Grain) |
OnConnectionIssue(ConnectionIssue) |
Se llama cuando la persistencia subyacente o el protocolo de replicación se encuentra en algún tipo de problema de conexión. Invalide esta opción para supervisar el estado del protocolo de coherencia del registro o para personalizar los retrasos de reintento. Los ILogViewAdaptorFactorydetectan y registran las excepciones iniciadas. |
OnConnectionIssue(ConnectionIssue) |
Se llama cuando la persistencia subyacente o el protocolo de replicación se encuentra en algún tipo de problema de conexión. Invalide esta opción para supervisar el estado del protocolo de coherencia del registro o para personalizar los retrasos de reintento. Los ILogConsistencyProviderdetectan y registran las excepciones iniciadas. |
OnConnectionIssueResolved(ConnectionIssue) |
Se llama cuando se ha resuelto un problema de conexión notificado anteriormente. Invalide esta opción para supervisar el estado del protocolo de coherencia del registro. Los ILogConsistencyProviderdetectan y registran las excepciones iniciadas. |
OnConnectionIssueResolved(ConnectionIssue) |
Se llama cuando se ha resuelto un problema de conexión notificado anteriormente. Invalide esta opción para supervisar el estado del protocolo de coherencia del registro. Los ILogViewAdaptorFactorydetectan y registran las excepciones iniciadas. |
OnDeactivateAsync() |
Este método se llama al principio del proceso de desactivación de un grano. (Heredado de Grain) |
OnDeactivateAsync(DeactivationReason, CancellationToken) |
Este método se llama al principio del proceso de desactivación de un grano. (Heredado de Grain) |
OnStateChanged() |
Se llama después de que el estado confirmado haya cambiado (es decir, el número de versión confirmado es mayor). Invalide esto para reaccionar a los cambios del estado confirmado. |
OnTentativeStateChanged() |
Se llama cada vez que el estado provisional puede haber cambiado debido a eventos locales o remotos. Invalide esto para reaccionar a los cambios del estado. |
Participate(IGrainLifecycle) |
Clase base para granos coherentes con el registro mediante la terminología estándar de aprovisionamiento de eventos. Todas las operaciones son seguras para la reentrada. (Heredado de Grain) |
Participate(IGrainLifecycle) |
Clase base para granos coherentes con el registro mediante la terminología estándar de aprovisionamiento de eventos. Todas las operaciones son seguras para la reentrada. (Heredado de LogConsistentGrain<TView>) |
Participate(IGrainLifecycle) |
Clase base para granos coherentes con el registro mediante la terminología estándar de aprovisionamiento de eventos. Todas las operaciones son seguras para la reentrada. (Heredado de LogConsistentGrain<TView>) |
RaiseConditionalEvent<TEvent>(TEvent) |
Genere un evento condicionalmente. Solo se realiza correctamente si no hay ningún conflicto, es decir, no se generaron otros eventos mientras tanto. |
RaiseConditionalEvents<TEvent>(IEnumerable<TEvent>) |
Genere varios eventos, como una secuencia atómica, condicionalmente. Solo se realiza correctamente si no hay ningún conflicto, es decir, no se generaron otros eventos mientras tanto. |
RaiseEvent<TEvent>(TEvent) |
Genera un evento. |
RaiseEvents<TEvent>(IEnumerable<TEvent>) |
Genera varios eventos, como una secuencia atómica. |
RefreshNow() |
Recupera el estado más reciente ahora y confirma todos los eventos generados anteriormente. De hecho, esto aplica la sincronización con el estado global. Espere esto antes de leer el estado para garantizar una coherencia fuerte (linealización) incluso si hay varias instancias de este grano. |
RegisterOrUpdateReminder(String, TimeSpan, TimeSpan) |
Registra un recordatorio persistente y confiable para enviar notificaciones normales (recordatorios) al grano.
El grano debe implementar la interfaz |
RegisterTimer(Func<Object,Task>, Object, TimeSpan, TimeSpan) |
Obsoletos.
Registra un temporizador para enviar devoluciones de llamada periódicas a este detalle. (Heredado de Grain) |
RetrieveConfirmedEvents(Int32, Int32) |
Recupera un segmento de la secuencia de eventos confirmada, posiblemente del almacenamiento. Produce NotSupportedException si los eventos no están disponibles para leerse. Si los eventos están disponibles y durante cuánto tiempo dependen de los proveedores usados y de cómo se configuran. |
TransitionState(TGrainState, TEventBase) |
Define cómo aplicar eventos al estado. A menos que se invalide en la subclase, llama a una función dinámica "Apply" en el estado, con el evento como parámetro. El proveedor de vistas de registro detecta y registra todas las excepciones producidas por este método. Invalide esta opción para personalizar cómo realizar la transición del estado de un evento determinado. |
UnregisterReminder(IGrainReminder) |
Anula el registro de un aviso registrado anteriormente. (Heredado de Grain) |
Implementaciones de interfaz explícitas
IConnectionIssueListener.OnConnectionIssue(ConnectionIssue) |
llamado por el adaptador en problemas de conexión. |
IConnectionIssueListener.OnConnectionIssue(ConnectionIssue) |
llamado por el adaptador en problemas de conexión. |
IConnectionIssueListener.OnConnectionIssueResolved(ConnectionIssue) |
Lo llama el adaptador cuando se resuelve un problema de conexión. |
IConnectionIssueListener.OnConnectionIssueResolved(ConnectionIssue) |
lo llama el adaptador cuando se resuelve un problema de conexión. |
IGrainBase.GrainContext |
Clase base para granos coherentes con el registro mediante la terminología estándar de aprovisionamiento de eventos. Todas las operaciones son seguras para la reentrada. (Heredado de Grain) |
ILogConsistencyProtocolParticipant.DeactivateProtocolParticipant() |
Notificar al adaptador de la vista de registro de desactivación |
ILogConsistencyProtocolParticipant.DeactivateProtocolParticipant() |
Notificar al adaptador de la vista de registro de desactivación |
ILogConsistencyProtocolParticipant.OnMultiClusterConfigurationChange(MultiClusterConfiguration) |
Reciba un cambio de configuración y pase al adaptador de la vista de registro. |
ILogConsistencyProtocolParticipant.OnProtocolMessageReceived(ILogConsistencyProtocolMessage) |
Reciba un mensaje de protocolo de otros clústeres, pasado al adaptador de la vista de registro. |
ILogConsistencyProtocolParticipant.PostActivateProtocolParticipant() |
Notificar al adaptador de la vista de registro de activación (llamado después del nivel de usuario OnActivate) |
ILogConsistencyProtocolParticipant.PostActivateProtocolParticipant() |
Notificar al adaptador de la vista de registro de activación (llamado después del nivel de usuario OnActivate) |
ILogConsistencyProtocolParticipant.PreActivateProtocolParticipant() |
Notificar al adaptador de la vista de registro de activación (llamado antes del nivel de usuario OnActivate) |
ILogConsistencyProtocolParticipant.PreActivateProtocolParticipant() |
Notificar al adaptador de la vista de registro de activación (llamado antes del nivel de usuario OnActivate) |
ILogConsistentGrain.DefaultAdaptorFactory |
Si no se especifica ningún proveedor de coherencia de registro, almacene el estado con versiones mediante el proveedor de almacenamiento predeterminado. |
ILogConsistentGrain.InstallAdaptor(ILogViewAdaptorFactory, Object, String, IStorageProvider, ILogConsistencyProtocolServices) |
Se llama justo después de construir el grano para instalar el adaptador. El proveedor de coherencia de registros contiene un método de fábrica que construye el adaptador con tipos elegidos para este grano. |
ILogViewAdaptorHost<TGrainState,TEventBase>.OnViewChanged(Boolean, Boolean) |
Llamado por adaptador en el cambio de estado. |
ILogViewAdaptorHost<TGrainState,TEventBase>.OnViewChanged(Boolean, Boolean) |
llamado por el adaptador en el cambio de estado. |
ILogViewAdaptorHost<TGrainState,TEventBase>.UpdateView(TGrainState, TEventBase) |
Lo llama el adaptador para actualizar la vista cuando se anexan las entradas. |
ILogViewAdaptorHost<TGrainState,TEventBase>.UpdateView(TGrainState, TEventBase) |
lo llama el adaptador para actualizar la vista cuando se anexan las entradas. |
Métodos de extensión
DeactivateOnIdle(IGrainBase) |
Desactive esta activación de grano una vez completada la llamada al método de grano actual. Esta llamada marcará esta activación del grano actual que se va a desactivar y quitar al final del método actual. La siguiente llamada a este grano dará lugar a una activación diferente que se usará, lo que significa que el tiempo de ejecución creará automáticamente una nueva activación. |
MigrateOnIdle(IGrainBase) |
Inicia un intento de migrar esta instancia a otra ubicación. La migración captura el RequestContextactual, lo que hace que esté disponible para el director de selección de ubicación de la activación para que pueda considerarlo al seleccionar una nueva ubicación. La migración se producirá de forma asincrónica, cuando no se ejecute ninguna solicitud y no se producirá si el director de selección de ubicación de la activación no selecciona una ubicación alternativa. |
RegisterGrainTimer(IGrainBase, Func<CancellationToken,Task>, GrainTimerCreationOptions) |
Crea un temporizador específico. |
RegisterGrainTimer(IGrainBase, Func<CancellationToken,Task>, TimeSpan, TimeSpan) |
Crea un temporizador específico. |
RegisterGrainTimer(IGrainBase, Func<Task>, GrainTimerCreationOptions) |
Clase base para granos coherentes con el registro mediante la terminología estándar de aprovisionamiento de eventos. Todas las operaciones son seguras para la reentrada. |
RegisterGrainTimer(IGrainBase, Func<Task>, TimeSpan, TimeSpan) |
Crea un temporizador específico. |
RegisterGrainTimer<TState>(IGrainBase, Func<TState,CancellationToken,Task>, TState, GrainTimerCreationOptions) |
Crea un temporizador específico. |
RegisterGrainTimer<TState>(IGrainBase, Func<TState,CancellationToken,Task>, TState, TimeSpan, TimeSpan) |
Crea un temporizador específico. |
RegisterGrainTimer<TState>(IGrainBase, Func<TState,Task>, TState, GrainTimerCreationOptions) |
Clase base para granos coherentes con el registro mediante la terminología estándar de aprovisionamiento de eventos. Todas las operaciones son seguras para la reentrada. |
RegisterGrainTimer<TState>(IGrainBase, Func<TState,Task>, TState, TimeSpan, TimeSpan) |
Crea un temporizador específico. |
AsReference(IAddressable, Type) |
Devuelve una referencia con tipo al grano proporcionado. |
AsReference<TGrainInterface>(IAddressable) |
Devuelve una referencia con tipo al grano proporcionado. |
BindGrainReference(IAddressable, IGrainFactory) |
Enlaza la referencia de grano a la IGrainFactoryproporcionada. |
Cast(IAddressable, Type) |
Devuelve una referencia con tipo al grano proporcionado. |
Cast<TGrainInterface>(IAddressable) |
Devuelve una referencia con tipo al grano proporcionado. |
GetGrainId(IAddressable) |
Devuelve el identificador de grano correspondiente al grano proporcionado. |
GetGrainIdentity(IGrain) |
Clase base para granos coherentes con el registro mediante la terminología estándar de aprovisionamiento de eventos. Todas las operaciones son seguras para la reentrada. |
GetPrimaryKey(IGrain) |
Clase base para granos coherentes con el registro mediante la terminología estándar de aprovisionamiento de eventos. Todas las operaciones son seguras para la reentrada. |
GetPrimaryKey(IGrain, String) |
Clase base para granos coherentes con el registro mediante la terminología estándar de aprovisionamiento de eventos. Todas las operaciones son seguras para la reentrada. |
GetPrimaryKey(IAddressable) |
Devuelve la representación Guid de una clave principal de grano. |
GetPrimaryKey(IAddressable, String) |
Devuelve la representación Guid de una clave principal de grano. |
GetPrimaryKeyLong(IGrain) |
Clase base para granos coherentes con el registro mediante la terminología estándar de aprovisionamiento de eventos. Todas las operaciones son seguras para la reentrada. |
GetPrimaryKeyLong(IGrain, String) |
Clase base para granos coherentes con el registro mediante la terminología estándar de aprovisionamiento de eventos. Todas las operaciones son seguras para la reentrada. |
GetPrimaryKeyLong(IAddressable) |
Devuelve la representación |
GetPrimaryKeyLong(IAddressable, String) |
Devuelve la representación |
GetPrimaryKeyString(IAddressable) |
Devuelve el |
IsPrimaryKeyBasedOnLong(IAddressable) |
Devuelve si parte de la clave principal es de tipo |
GetReminder(Grain, String) |
Devuelve un aviso registrado anteriormente. |
GetReminder(IGrainBase, String) |
Devuelve un aviso registrado anteriormente. |
GetReminders(Grain) |
Devuelve una lista de todos los recordatorios registrados por el grano. |
GetReminders(IGrainBase) |
Devuelve una lista de todos los recordatorios registrados por el grano. |
RegisterOrUpdateReminder(Grain, String, TimeSpan, TimeSpan) |
Registra un recordatorio persistente y confiable para enviar notificaciones normales (recordatorios) al grano.
El grano debe implementar la interfaz |
RegisterOrUpdateReminder(IGrainBase, String, TimeSpan, TimeSpan) |
Registra un recordatorio persistente y confiable para enviar notificaciones normales (recordatorios) al grano.
El grano debe implementar la interfaz |
UnregisterReminder(Grain, IGrainReminder) |
Anula el registro de un aviso registrado anteriormente. |
UnregisterReminder(IGrainBase, IGrainReminder) |
Anula el registro de un aviso registrado anteriormente. |
GetStreamProvider(Grain, String) |
Obtiene el proveedor de flujos con el |
GetStreamProvider(IGrainBase, String) |
Obtiene el proveedor de flujos con el |
GetLogger(Grain) |
Devuelve un objeto registrador que el código de este grano puede usar para el seguimiento. El nombre del registrador se derivará del nombre de la clase de grano. |
GetLogger(Grain, String) |
Devuelve un objeto registrador que el código de este grano puede usar para el seguimiento. |
GetGrainStorage(Grain, IServiceProvider) |
Adquiera el proveedor de almacenamiento asociado al tipo de grano. |