コード例 #1
0
 /// <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));
 }
コード例 #2
0
ファイル: GrainTimer.cs プロジェクト: Carlm-MS/orleans
 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);
 }
コード例 #3
0
ファイル: GrainTimer.cs プロジェクト: gecambridge/src
 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));
 }
コード例 #4
0
ファイル: GrainTimer.cs プロジェクト: zoeforever/orleans
 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));
 }
コード例 #5
0
ファイル: GrainTimer.cs プロジェクト: Carlm-MS/orleans
        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;
        }
コード例 #6
0
ファイル: GrainTimer.cs プロジェクト: gecambridge/src
        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;
        }
コード例 #7
0
ファイル: Grain.cs プロジェクト: sun293529884/orleans
        /// <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;
        }
コード例 #8
0
 /// <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)
 {
 }
コード例 #9
0
 /// <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)
 {
 }
コード例 #10
0
 /// <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)
 {
 }
コード例 #11
0
 /// <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)
 {
 }
コード例 #12
0
 /// <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));
 }
コード例 #13
0
 /// <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)
 {
 }
コード例 #14
0
 /// <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)
 {
 }
コード例 #15
0
 /// <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)
 {
 }
コード例 #16
0
ファイル: StrongEntity.cs プロジェクト: hardin253874/Platform
 /// <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;
 }
コード例 #17
0
ファイル: ManagedApp.cs プロジェクト: hardin253874/Platform
 /// <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)
 {
 }
コード例 #18
0
 /// <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)
 {
 }
コード例 #19
0
 /// <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)
 {
 }
コード例 #20
0
 /// <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)
 {
 }
コード例 #21
0
 /// <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)
 {
 }
コード例 #22
0
 /// <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)
 {
 }