コード例 #1
0
        public void RegisterActivity(string name, string taskListName)
        {
            var listActivityRequest = new ListActivityTypesRequest()
            {
                Domain             = domainName,
                Name               = name,
                RegistrationStatus = RegistrationStatus.REGISTERED
            };
            var results = swfClient.ListActivityTypesAsync(listActivityRequest).Result;

            if (results.ActivityTypeInfos.TypeInfos.FirstOrDefault(x => x.ActivityType.Name == name) == null)
            {
                RegisterActivityTypeRequest request = new RegisterActivityTypeRequest()
                {
                    Name            = name,
                    Domain          = domainName,
                    Description     = "Custom Description Here",
                    Version         = "1.0",
                    DefaultTaskList = new TaskList()
                    {
                        Name = taskListName
                    },                                                       //Worker poll based on this
                    DefaultTaskScheduleToStartTimeout = "150",
                    DefaultTaskStartToCloseTimeout    = "450",
                    DefaultTaskHeartbeatTimeout       = "NONE",
                    DefaultTaskScheduleToCloseTimeout = "350"
                };
                swfClient.RegisterActivityTypeAsync(request);
                Console.WriteLine("Created Activity: " + request.Name);
            }
        }