/// <summary> /// Creates the instance. /// </summary> /// <param name="type">The type.</param> /// <param name="activationData">The activation data.</param> /// <returns>A new instance of the specified type.</returns> public IEntity CreateInstance(Type type, IActivationData activationData) { return(( IEntity )Activator.CreateInstance(type, BindingFlags.Instance | BindingFlags.NonPublic, null, new object [] { activationData }, null)); }
internal static IGrainTimer FromTaskCallback( Func<object, Task> asyncCallback, object state, TimeSpan dueTime, TimeSpan period, string name = null, IActivationData activationData = null) { return new GrainTimer(activationData, asyncCallback, state, dueTime, period, name); }
internal static IGrainTimer FromTaskCallback( Func <object, Task> asyncCallback, object state, TimeSpan dueTime, TimeSpan period, string name = null, IActivationData activationData = null) { return(new GrainTimer(activationData, asyncCallback, state, dueTime, period, name)); }
internal static IGrainTimer FromTaskCallback( OrleansTaskScheduler scheduler, ILogger logger, Func <object, Task> asyncCallback, object state, TimeSpan dueTime, TimeSpan period, string name = null, IActivationData activationData = null) { return(new GrainTimer(scheduler, activationData, logger, asyncCallback, state, dueTime, period, name)); }
private GrainTimer(IActivationData activationData, Func<object, Task> asyncCallback, object state, TimeSpan dueTime, TimeSpan period, string name) { var ctxt = RuntimeContext.CurrentActivationContext; InsideRuntimeClient.Current.Scheduler.CheckSchedulingContextValidity(ctxt); this.activationData = activationData; this.Name = name; this.asyncCallback = asyncCallback; timer = new AsyncTaskSafeTimer( stateObj => TimerTick(stateObj, ctxt), state); this.dueTime = dueTime; timerFrequency = period; previousTickTime = DateTime.UtcNow; totalNumTicks = 0; }
private GrainTimer(IActivationData activationData, Func <object, Task> asyncCallback, object state, TimeSpan dueTime, TimeSpan period, string name) { var ctxt = RuntimeContext.CurrentActivationContext; InsideRuntimeClient.Current.Scheduler.CheckSchedulingContextValidity(ctxt); this.activationData = activationData; this.Name = name; this.asyncCallback = asyncCallback; timer = new AsyncTaskSafeTimer( stateObj => TimerTick(stateObj, ctxt), state); this.dueTime = dueTime; timerFrequency = period; previousTickTime = DateTime.UtcNow; totalNumTicks = 0; }
/// <summary> /// This constructor should never be invoked. We expose it so that client code (subclasses of Grain) do not have to add a constructor. /// Client code should use the GrainFactory property to get a reference to a Grain. /// </summary> protected Grain() { var context = RuntimeContext.Current; if (context is null) { return; } if (!(context is IActivationData data)) { ThrowInvalidContext(); return; } this.Data = data; this.Runtime = data.GrainRuntime; }
/// <summary> /// Initializes a new instance of the <see cref="PlatformFrontEnd" /> class. /// </summary> /// <param name="activationData">The activation data.</param> internal PlatformFrontEnd(IActivationData activationData) : base(activationData) { }
/// <summary> /// Initializes a new instance of the <see cref="ManagedRole" /> class. /// </summary> /// <param name="activationData">The activation data.</param> internal ManagedRole(IActivationData activationData) : base(activationData) { }
/// <summary> /// Initializes a new instance of the <see cref="VerificationLink" /> class. /// </summary> /// <param name="activationData">The activation data.</param> internal VerificationLink(IActivationData activationData) : base(activationData) { }
/// <summary> /// Initializes a new instance of the <see cref="ManagedCustomer" /> class. /// </summary> /// <param name="activationData">The activation data.</param> internal ManagedCustomer(IActivationData activationData) : base(activationData) { }
/// <summary> /// Creates the instance. /// </summary> /// <param name="activationData">The activation data.</param> /// <returns> /// A new instance of the specified type. /// </returns> public T CreateInstance <T>(IActivationData activationData) where T : class, IEntity { return(( T )CreateInstance(typeof(T), activationData)); }
/// <summary> /// Initializes a new instance of the <see cref="ManagedTenant" /> class. /// </summary> /// <param name="activationData">The activation data.</param> internal ManagedTenant(IActivationData activationData) : base(activationData) { }
/// <summary> /// Initializes a new instance of the <see cref="MarketplaceProduct" /> class. /// </summary> /// <param name="activationData">The activation data.</param> internal MarketplaceProduct(IActivationData activationData) : base(activationData) { }
/// <summary> /// Initializes a new instance of the <see cref="MarketplacePayment" /> class. /// </summary> /// <param name="activationData">The activation data.</param> internal MarketplacePayment(IActivationData activationData) : base(activationData) { }
/// <summary> /// Activate using the specified activation data. /// </summary> /// <param name="activationData">Activation data.</param> internal StrongEntity(IActivationData activationData) { _entity = activationData.CreateEntity( ); _entityInternal = _entity as IEntityInternal; }
/// <summary> /// Initializes a new instance of the <see cref="ManagedApp" /> class. /// </summary> /// <param name="activationData">The activation data.</param> internal ManagedApp(IActivationData activationData) : base(activationData) { }
/// <summary> /// Initializes a new instance of the <see cref="ManagedPlatform" /> class. /// </summary> /// <param name="activationData">The activation data.</param> internal ManagedPlatform(IActivationData activationData) : base(activationData) { }
/// <summary> /// Initializes a new instance of the <see cref="PlatformDatabase" /> class. /// </summary> /// <param name="activationData">The activation data.</param> internal PlatformDatabase(IActivationData activationData) : base(activationData) { }
/// <summary> /// Initializes a new instance of the <see cref="MarketplaceOrderHistory" /> class. /// </summary> /// <param name="activationData">The activation data.</param> internal MarketplaceOrderHistory(IActivationData activationData) : base(activationData) { }
/// <summary> /// Initializes a new instance of the <see cref="ManagedUserStatus" /> class. /// </summary> /// <param name="activationData">The activation data.</param> internal ManagedUserStatus(IActivationData activationData) : base(activationData) { }
/// <summary> /// Initializes a new instance of the <see cref="MarketplaceLicence" /> class. /// </summary> /// <param name="activationData">The activation data.</param> internal MarketplaceLicence(IActivationData activationData) : base(activationData) { }