}
}
public static void registerActivityType(AmazonSimpleWorkflow service, String domain, ActivityType activityType,
ActivityTypeRegistrationOptions registrationOptions, String taskListToPoll) throws AmazonServiceException {
RegisterActivityTypeRequest registerActivity = new RegisterActivityTypeRequest();
registerActivity.setDomain(domain);
String taskList = registrationOptions.getDefaultTaskList();
if (taskList == null) {
taskList = taskListToPoll;
}
else if (taskList.equals(FlowConstants.NO_DEFAULT_TASK_LIST)) {
taskList = null;
}
if (taskList != null && !taskList.isEmpty()) {
registerActivity.setDefaultTaskList(new TaskList().withName(taskList));
}
registerActivity.setName(activityType.getName());
registerActivity.setVersion(activityType.getVersion());
registerActivity.setDefaultTaskStartToCloseTimeout(FlowHelpers.secondsToDuration(registrationOptions.getDefaultTaskStartToCloseTimeoutSeconds()));
registerActivity.setDefaultTaskScheduleToCloseTimeout(FlowHelpers.secondsToDuration(registrationOptions.getDefaultTaskScheduleToCloseTimeoutSeconds()));
registerActivity.setDefaultTaskHeartbeatTimeout(FlowHelpers.secondsToDuration(registrationOptions.getDefaultTaskHeartbeatTimeoutSeconds()));
registerActivity.setDefaultTaskScheduleToStartTimeout(FlowHelpers.secondsToDuration(registrationOptions.getDefaultTaskScheduleToStartTimeoutSeconds()));
if (registrationOptions.getDescription() != null) {
registerActivity.setDescription(registrationOptions.getDescription());
}
service.registerActivityType(registerActivity);
if (log.isInfoEnabled()) {
log.info("regisered activity type: " + activityType);
}