/// <summary>
        /// Setups the activity data.
        /// </summary>
        /// <param name="activity">The activity.</param>
        public void SetupActivityData(IWebActivity activity)
        {
            if (activity != null)
            {
                SavedInputMapping  = activity.SavedInputMapping;
                SavedOutputMapping = activity.SavedOutputMapping;
                ActivityType       = activity.UnderlyingWebActivityObjectType;
                _complexObjects    = new List <ComplexObjectItemModel>();
                if (activity.ResourceModel != null)
                {
                    string inputs;
                    string outputs;

                    // handle workflows differently ;)

                    if (activity.IsNotAvailable())
                    {
                        inputs  = activity.ResourceModel.Inputs;
                        outputs = activity.ResourceModel.Outputs;
                    }
                    else
                    {
                        var datalist = activity.ResourceModel.DataList;
                        AddComplexObjects(datalist);
                        inputs = DataListUtil.GenerateSerializableDefsFromDataList(datalist,
                                                                                   enDev2ColumnArgumentDirection.Input);
                        outputs = DataListUtil.GenerateSerializableDefsFromDataList(datalist,
                                                                                    enDev2ColumnArgumentDirection.Output);
                    }

                    ActivityInputDefinitions  = inputs;
                    ActivityOutputDefinitions = outputs;
                }
            }
        }
Esempio n. 2
0
        /// <summary>
        /// Setups the activity data.
        /// </summary>
        /// <param name="activity">The activity.</param>
        public void SetupActivityData(IWebActivity activity)
        {
            if (activity != null)
            {
                SavedInputMapping  = activity.SavedInputMapping;
                SavedOutputMapping = activity.SavedOutputMapping;
                ActivityType       = activity.UnderlyingWebActivityObjectType;

                if (activity.ResourceModel != null)
                {
                    IsWorkflow = activity.ResourceModel.ResourceType == Studio.Core.AppResources.Enums.ResourceType.WorkflowService;

                    string inputs;
                    string outputs;

                    // handle workflows differently ;)
                    if (IsWorkflow)
                    {
                        //if (!activity.ResourceModel.Environment.IsLocalHost && !activity.ResourceModel.Environment.HasLoadedResources)
                        if (activity.IsNotAvailable())
                        {
                            inputs  = activity.ResourceModel.Inputs;
                            outputs = activity.ResourceModel.Outputs;
                        }
                        else
                        {
                            var datalist = activity.ResourceModel.DataList;
                            var compiler = DataListFactory.CreateDataListCompiler();

                            inputs = compiler.GenerateSerializableDefsFromDataList(datalist,
                                                                                   enDev2ColumnArgumentDirection.Input);
                            outputs = compiler.GenerateSerializableDefsFromDataList(datalist,
                                                                                    enDev2ColumnArgumentDirection.Output);
                        }
                    }
                    else
                    {
                        // handle services ;)
                        inputs  = activity.ResourceModel.Inputs;
                        outputs = activity.ResourceModel.Outputs;
                    }

                    ActivityInputDefinitions  = inputs;
                    ActivityOutputDefinitions = outputs;
                }
            }
        }
        public void WebActivity_IsConnected_PassThrough(bool retConnected, bool retLoaded, bool expected)
        {
            DsfActivity Act = new DsfActivity();

            Act.ServiceName   = "testResource";
            Act.InputMapping  = @"<Inputs><Input Name=""Host"" Source=""Host"" DefaultValue=""mail.bellevuenet.co.za""><Validator Type=""Required"" /></Input><Input Name=""Port"" Source=""Port"" DefaultValue=""25""><Validator Type=""Required"" /></Input><Input Name=""From"" Source=""From"" DefaultValue=""*****@*****.**""><Validator Type=""Required"" /></Input><Input Name=""To"" Source=""To""><Validator Type=""Required"" /></Input><Input Name=""Subject"" Source=""Subject""><Validator Type=""Required"" /></Input><Input Name=""BodyType"" Source=""Bodytype"" DefaultValue=""html""><Validator Type=""Required"" /></Input><Input Name=""Body"" Source=""Body""><Validator Type=""Required"" /></Input><Input Name=""Attachment"" Source=""Attachment"" DefaultValue=""NONE""><Validator Type=""Required"" /></Input></Inputs>";
            Act.OutputMapping = @"<Outputs><Output Name=""FailureMessage"" MapsTo=""FailureMessage"" Value=""[[FailureMessage]]"" /><Output Name=""Message"" MapsTo=""Message"" Value=""[[Message]]"" /></Outputs>";
            ModelItem testItem = TestModelItemFactory.CreateModelItem(Act);
            var       resource = new Mock <IContextualResourceModel>();
            var       env      = new Mock <IEnvironmentModel>();

            resource.Setup(a => a.Environment).Returns(env.Object);
            env.Setup(a => a.IsConnected).Returns(retConnected);
            env.Setup(a => a.HasLoadedResources).Returns(retLoaded);
            string serviceName = "cake";

            IWebActivity webActivity = WebActivityFactory.CreateWebActivity(testItem, resource.Object, serviceName);

            Assert.AreEqual(expected, webActivity.IsNotAvailable());
        }
        /// <summary>
        /// Setups the activity data.
        /// </summary>
        /// <param name="activity">The activity.</param>
        public void SetupActivityData(IWebActivity activity)
        {
            if(activity != null)
            {
                SavedInputMapping = activity.SavedInputMapping;
                SavedOutputMapping = activity.SavedOutputMapping;
                ActivityType = activity.UnderlyingWebActivityObjectType;

                if(activity.ResourceModel != null)
                {
                    IsWorkflow = activity.ResourceModel.ResourceType == Studio.Core.AppResources.Enums.ResourceType.WorkflowService;

                    string inputs;
                    string outputs;

                    // handle workflows differently ;)
                    if(IsWorkflow)
                    {
                        //if (!activity.ResourceModel.Environment.IsLocalHost && !activity.ResourceModel.Environment.HasLoadedResources)
                        if(activity.IsNotAvailable())
                        {
                            inputs = activity.ResourceModel.Inputs;
                            outputs = activity.ResourceModel.Outputs;

                        }
                        else
                        {
                            var datalist = activity.ResourceModel.DataList;

                            inputs = DataListUtil.GenerateSerializableDefsFromDataList(datalist,
                                                                                   enDev2ColumnArgumentDirection.Input);
                            outputs = DataListUtil.GenerateSerializableDefsFromDataList(datalist,
                                                                                    enDev2ColumnArgumentDirection.Output);
                        }
                    }
                    else
                    {
                        // handle services ;)
                        inputs = activity.ResourceModel.Inputs;
                        outputs = activity.ResourceModel.Outputs;
                    }

                    ActivityInputDefinitions = inputs;
                    ActivityOutputDefinitions = outputs;
                }

            }
        }