Ejemplo n.º 1
0
        public static void CreateAutomation(SoapClient soapClient,
                                            string iEmailSendDefinitionName,
                                            string iEmailSendDefinitionCustomerKey,
                                            string iEmailSendDefinitionObjectID)
        {
            Automation automation = new Automation();

            automation.Name = "SOAPAPI Test2_" + Guid.NewGuid().ToString();
            // CustomerKey can be any string value, GUID is only used for example purposes
            automation.CustomerKey    = Guid.NewGuid().ToString();
            automation.Description    = "SOAP API Created Example";
            automation.AutomationType = "scheduled";

            AutomationActivity activityOne = new AutomationActivity();

            activityOne = new AutomationActivity();
            // This is the ObjectID of the Definition Object
            activityOne.ObjectID = iEmailSendDefinitionObjectID;
            // This is the Name of the Definition Object
            activityOne.Name       = iEmailSendDefinitionName;
            activityOne.Definition = new APIObject();
            EmailSendDefinition activityOneDefinition = new EmailSendDefinition();

            // Again this is the ObjectID of the Definition Object
            activityOneDefinition.ObjectID = iEmailSendDefinitionObjectID;
            // Again this is the Name of the Definition Object
            activityOneDefinition.Name        = iEmailSendDefinitionName;
            activityOneDefinition.CustomerKey = iEmailSendDefinitionCustomerKey;

            activityOne.ActivityObject = activityOneDefinition;
            AutomationTask taskOne = new AutomationTask();

            taskOne.Name               = "Task 1";
            taskOne.Activities         = new AutomationActivity[] { activityOne };
            automation.AutomationTasks = new AutomationTask[] { taskOne };

            string RequestID     = String.Empty;
            string OverallStatus = String.Empty;

            CreateResult[] createResults = soapClient.Create(new CreateOptions(), new APIObject[] { automation }, out RequestID, out OverallStatus);

            Console.WriteLine("Status: " + OverallStatus);
            foreach (CreateResult cr in createResults)
            {
                Console.WriteLine("NewObjectID: " + cr.NewObjectID);
                Console.WriteLine("StatusCode: " + cr.StatusCode);
                Console.WriteLine("ErrorCode: " + cr.ErrorCode);
                Console.WriteLine("StatusMessage: " + cr.StatusMessage);
            }
        }
Ejemplo n.º 2
0
        public static WorkflowApplication GetWorkflowApplication(AutomationActivity activity)
        {
            var workflowApplication = new WorkflowApplication(activity)
            {
                Completed = delegate(WorkflowApplicationCompletedEventArgs e)
                {
                    switch (e.CompletionState)
                    {
                    case ActivityInstanceState.Faulted:

                        //Logger.GetInstance().Log().Error("workflow " +
                        //                                 scriptGuid +
                        //                                 " stopped! Error Message:\n"
                        //                                 +
                        //                                 e.TerminationException.
                        //                                     GetType().FullName +
                        //                                 "\n"
                        //                                 +
                        //                                 e.TerminationException.
                        //                                     Message);
                        //Status = "Terminated";
                        break;

                    case ActivityInstanceState.Canceled:

                        //Logger.GetInstance().Log().Warn("workflow " + scriptGuid +
                        //                                " Cancel.");
                        //Status = "Canceled";
                        break;

                        //Logger.GetInstance().Log().Info("workflow " + scriptGuid +
                        //                                " Completed.");
                        //Status = "Completed";
                    }
                },
                Aborted = delegate
                {
                    //Logger.GetInstance().Log().Error("workflow " +
                    //                                 scriptGuid
                    //                                 + " aborted! Error Message:\n"
                    //                                 + e.Reason.GetType().FullName + "\n" +
                    //                                 e.Reason.Message);
                    //Status = "Aborted";
                }
            };

            return(workflowApplication);
        }
        public static void CreateAutomation(SoapClient soapClient,
            string iEmailSendDefinitionName,
            string iEmailSendDefinitionCustomerKey,
            string iEmailSendDefinitionObjectID)
        {
            Automation automation = new Automation();
            automation.Name = "SOAPAPI Test2_" + Guid.NewGuid().ToString();
            // CustomerKey can be any string value, GUID is only used for example purposes
            automation.CustomerKey = Guid.NewGuid().ToString();
            automation.Description = "SOAP API Created Example";
            automation.AutomationType = "scheduled";

            AutomationActivity activityOne = new AutomationActivity();
            activityOne = new AutomationActivity();
            // This is the ObjectID of the Definition Object
            activityOne.ObjectID = iEmailSendDefinitionObjectID;
            // This is the Name of the Definition Object
            activityOne.Name = iEmailSendDefinitionName;
            activityOne.Definition = new APIObject();
            EmailSendDefinition activityOneDefinition = new EmailSendDefinition();

            // Again this is the ObjectID of the Definition Object
            activityOneDefinition.ObjectID = iEmailSendDefinitionObjectID;
            // Again this is the Name of the Definition Object
            activityOneDefinition.Name = iEmailSendDefinitionName;
            activityOneDefinition.CustomerKey = iEmailSendDefinitionCustomerKey;

            activityOne.ActivityObject = activityOneDefinition;
            AutomationTask taskOne = new AutomationTask();
            taskOne.Name = "Task 1";
            taskOne.Activities = new AutomationActivity[] { activityOne };
            automation.AutomationTasks = new AutomationTask[] { taskOne };

            string RequestID = String.Empty;
            string OverallStatus = String.Empty;

            CreateResult[] createResults = soapClient.Create(new CreateOptions(), new APIObject[] { automation }, out RequestID, out OverallStatus);

            Console.WriteLine("Status: " + OverallStatus);
            foreach (CreateResult cr in createResults)
            {
                Console.WriteLine("NewObjectID: " + cr.NewObjectID);
                Console.WriteLine("StatusCode: " + cr.StatusCode);
                Console.WriteLine("ErrorCode: " + cr.ErrorCode);
                Console.WriteLine("StatusMessage: " + cr.StatusMessage);
            }
        }
Ejemplo n.º 4
0
        public WorkflowApplication GetWorkflowApplication(AutomationActivity activity)
        {
            var workflowApplication = new WorkflowApplication(activity)
            {
                Completed = delegate(WorkflowApplicationCompletedEventArgs e)
                {
                    switch (e.CompletionState)
                    {
                    case ActivityInstanceState.Faulted:
                        Log.Error("workflow [" + activity.Id + "] " + activity.DisplayName +
                                  " stopped! Error Message:\n" + e.TerminationException.GetType().FullName + "\n" +
                                  e.TerminationException.Message + "\n" + e.TerminationException.StackTrace);
                        Status = "Terminated";
                        ClientInstancesManager.GetInstance().GetComputer(ClientId).Status = "Ready";
                        break;

                    case ActivityInstanceState.Canceled:
                        Log.Error("workflow [" + activity.Id + "] " + activity.DisplayName + " Cancel.");
                        Status = "Canceled";
                        ClientInstancesManager.GetInstance().GetComputer(ClientId).Status = "Ready";
                        break;

                    default:
                        Log.Info("workflow [" + activity.Id + "] " + activity.DisplayName + " Completed.");
                        Status = "Completed";
                        ClientInstancesManager.GetInstance().GetComputer(ClientId).Status = "Ready";
                        break;
                    }
                },
                Aborted = delegate(WorkflowApplicationAbortedEventArgs e)
                {
                    Log.Error(" aborted! Error Message:\n" + e.Reason.GetType().FullName + "\n" + e.Reason.Message);
                    Status = "Aborted";
                    ClientInstancesManager.GetInstance().GetComputer(ClientId).Status = "Ready";
                }
            };

            return(workflowApplication);
        }