final int groupSize, final String filterQuery, final DistributionSet distributionSet, final String successCondition, final String errorCondition) { final RolloutGroupConditions conditions = new RolloutGroupConditionBuilder().withDefaults() .successCondition(RolloutGroupSuccessCondition.THRESHOLD, successCondition) .errorCondition(RolloutGroupErrorCondition.THRESHOLD, errorCondition)
final int groupSize, final String filterQuery, final DistributionSet distributionSet, final String successCondition, final String errorCondition) { final RolloutGroupConditions conditions = new RolloutGroupConditionBuilder().withDefaults() .successCondition(RolloutGroupSuccessCondition.THRESHOLD, successCondition) .errorCondition(RolloutGroupErrorCondition.THRESHOLD, errorCondition)
@SuppressWarnings("squid:S00107") AddUpdateRolloutWindowLayout(final RolloutManagement rolloutManagement, final TargetManagement targetManagement, final UINotification uiNotification, final UiProperties uiProperties, final EntityFactory entityFactory, final VaadinMessageSource i18n, final UIEventBus eventBus, final TargetFilterQueryManagement targetFilterQueryManagement, final RolloutGroupManagement rolloutGroupManagement, final QuotaManagement quotaManagement) { actionTypeOptionGroupLayout = new ActionTypeOptionGroupLayout(i18n); autoStartOptionGroupLayout = new AutoStartOptionGroupLayout(i18n); this.rolloutManagement = rolloutManagement; this.rolloutGroupManagement = rolloutGroupManagement; this.quotaManagement = quotaManagement; this.targetManagement = targetManagement; this.uiNotification = uiNotification; this.uiProperties = uiProperties; this.entityFactory = entityFactory; this.i18n = i18n; this.eventBus = eventBus; this.targetFilterQueryManagement = targetFilterQueryManagement; defineGroupsLayout = new DefineGroupsLayout(i18n, entityFactory, rolloutManagement, targetFilterQueryManagement, rolloutGroupManagement, quotaManagement); defaultRolloutGroupConditions = new RolloutGroupConditionBuilder().withDefaults().build(); setSizeUndefined(); createRequiredComponents(); buildLayout(); defineGroupsLayout.setValidationListener(this::displayValidationStatus); defineGroupsLayout.setDefaultErrorThreshold(defaultRolloutGroupConditions.getErrorConditionExp()); defineGroupsLayout.setDefaultTriggerThreshold(defaultRolloutGroupConditions.getSuccessConditionExp()); }
@SuppressWarnings("squid:S00107") AddUpdateRolloutWindowLayout(final RolloutManagement rolloutManagement, final TargetManagement targetManagement, final UINotification uiNotification, final UiProperties uiProperties, final EntityFactory entityFactory, final VaadinMessageSource i18n, final UIEventBus eventBus, final TargetFilterQueryManagement targetFilterQueryManagement, final RolloutGroupManagement rolloutGroupManagement, final QuotaManagement quotaManagement) { actionTypeOptionGroupLayout = new ActionTypeOptionGroupLayout(i18n); autoStartOptionGroupLayout = new AutoStartOptionGroupLayout(i18n); this.rolloutManagement = rolloutManagement; this.rolloutGroupManagement = rolloutGroupManagement; this.quotaManagement = quotaManagement; this.targetManagement = targetManagement; this.uiNotification = uiNotification; this.uiProperties = uiProperties; this.entityFactory = entityFactory; this.i18n = i18n; this.eventBus = eventBus; this.targetFilterQueryManagement = targetFilterQueryManagement; defineGroupsLayout = new DefineGroupsLayout(i18n, entityFactory, rolloutManagement, targetFilterQueryManagement, rolloutGroupManagement, quotaManagement); defaultRolloutGroupConditions = new RolloutGroupConditionBuilder().withDefaults().build(); setSizeUndefined(); createRequiredComponents(); buildLayout(); defineGroupsLayout.setValidationListener(this::displayValidationStatus); defineGroupsLayout.setDefaultErrorThreshold(defaultRolloutGroupConditions.getErrorConditionExp()); defineGroupsLayout.setDefaultTriggerThreshold(defaultRolloutGroupConditions.getSuccessConditionExp()); }
private Rollout createRolloutEntity() { testdataFactory.createTargets(20, "exampleTarget"); final Rollout rollout = rolloutManagement.create( entityFactory.rollout().create().name("exampleRollout") .targetFilterQuery("controllerId==exampleTarget*").set(testdataFactory.createDistributionSet()), 10, new RolloutGroupConditionBuilder().withDefaults() .successCondition(RolloutGroupSuccessCondition.THRESHOLD, "10").build()); // Run here, because Scheduler is disabled during tests rolloutManagement.handleRollouts(); return rolloutManagement .update(entityFactory.rollout().update(rollout.getId()).description("exampleDescription")); }
static RolloutGroupConditions fromRequest(final AbstractMgmtRolloutConditionsEntity restRequest, final boolean withDefaults) { final RolloutGroupConditionBuilder conditions = new RolloutGroupConditionBuilder(); if (withDefaults) { conditions.withDefaults(); } if (restRequest.getSuccessCondition() != null) { conditions.successCondition(mapFinishCondition(restRequest.getSuccessCondition().getCondition()), restRequest.getSuccessCondition().getExpression()); } if (restRequest.getSuccessAction() != null) { conditions.successAction(map(restRequest.getSuccessAction().getAction()), restRequest.getSuccessAction().getExpression()); } if (restRequest.getErrorCondition() != null) { conditions.errorCondition(mapErrorCondition(restRequest.getErrorCondition().getCondition()), restRequest.getErrorCondition().getExpression()); } if (restRequest.getErrorAction() != null) { conditions.errorAction(map(restRequest.getErrorAction().getAction()), restRequest.getErrorAction().getExpression()); } return conditions.build(); }