public PipelineBase(string message, FakeStages stage, Entity target, IOrganizationService service = null)
            : this(service)
        {
            // Set pipeline properties
            A.CallTo(() => PluginExecutionContext.Stage).Returns((int)stage);
            A.CallTo(() => PluginExecutionContext.MessageName).Returns(message);

            if (target != null)
            {
                // Check that the entity target is populated with at least the logical name
                if (target.LogicalName == null)
                {
                    throw new ArgumentNullException("target", "You must supply at least the target entity with a logical name");
                }
                A.CallTo(() => PluginExecutionContext.PrimaryEntityName).ReturnsLazily(() => target.LogicalName);
                A.CallTo(() => PluginExecutionContext.PrimaryEntityId).ReturnsLazily(() => target.Id);
                A.CallTo(() => PluginExecutionContext.UserId).ReturnsLazily(() => this.UserId);
                A.CallTo(() => PluginExecutionContext.InitiatingUserId).ReturnsLazily(() => this.InitiatingUserId);
                A.CallTo(() => PluginExecutionContext.CorrelationId).ReturnsLazily(() => this.CorrelationId);
                A.CallTo(() => PluginExecutionContext.OrganizationId).ReturnsLazily(() => this.OrganizationId);
                A.CallTo(() => PluginExecutionContext.OrganizationName).ReturnsLazily(() => this.OrganizationName);
                A.CallTo(() => PluginExecutionContext.BusinessUnitId).ReturnsLazily(() => this.BusinessUnitId);
                A.CallTo(() => PluginExecutionContext.RequestId).ReturnsLazily(() => this.RequestId);
                A.CallTo(() => PluginExecutionContext.OperationId).ReturnsLazily(() => this.OperationId);
                A.CallTo(() => PluginExecutionContext.OperationCreatedOn).ReturnsLazily(() => this.OperationCreatedOn);
                A.CallTo(() => PluginExecutionContext.IsolationMode).ReturnsLazily(() => (int)this.IsolationMode);
                A.CallTo(() => PluginExecutionContext.IsExecutingOffline).ReturnsLazily(() => this.IsExecutingOffline);
                A.CallTo(() => PluginExecutionContext.IsInTransaction).ReturnsLazily(() => this.IsInTransaction);
                A.CallTo(() => PluginExecutionContext.Mode).ReturnsLazily(() => (int)this.Mode);
                A.CallTo(() => PluginExecutionContext.Depth).ReturnsLazily(() => this.Depth);
                InputParameters["Target"] = target;
            }
        }
Esempio n. 2
0
        public PipelineBase(string message, FakeStages stage, Entity target, IOrganizationService service = null)
            : this(service)
        {
            // Set pipeline properties
            PluginExecutionContext.StageGet       = () => { return((int)stage); };
            PluginExecutionContext.MessageNameGet = () => { return(message); };

            if (target != null)
            {
                // Check that the entity target is populated with at least the logical name
                if (target.LogicalName == null)
                {
                    throw new ArgumentNullException("target", "You must supply at least the target entity with a logical name");
                }

                PluginExecutionContext.PrimaryEntityNameGet = () => { return(target.LogicalName); };
                PluginExecutionContext.PrimaryEntityIdGet   = () => { return(target.Id); };
                InputParameters["Target"] = target;
            }
        }
Esempio n. 3
0
 public PipelineBase(FakeMessageNames message, FakeStages stage, Entity target, IOrganizationService service = null)
     : this(message.ToString(), stage, target, service)
 {
 }
Esempio n. 4
0
 public PluginPipeline(FakeMessageNames message, FakeStages stage, Entity target)
     : this(message.ToString(), stage, target, null)
 {
 }
Esempio n. 5
0
 public PluginPipeline(string message, FakeStages stage, Entity target, IOrganizationService service)
     : base(message, stage, target, service)
 {
 }
Esempio n. 6
0
 public PluginPipeline(string message, FakeStages stage, Entity target)
     : this(message, stage, target, null)
 {
 }