eventLog.postEvent(new BucketChangeEvent(user, experiment, changeBucketList.getBuckets().get(i), bucketAuditInfo.getAttributeName(), bucketAuditInfo.getOldValue(), bucketAuditInfo.getNewValue()));
/** * {@inheritDoc} */ @Override public BucketList adjustAllocationPercentages(Experiment experiment, Bucket newBucket) { double remainingAlloc = 1. - newBucket.getAllocationPercent(); BucketList bucketList = buckets.getBuckets(experiment.getID(), false /* don't check experiment again */); BucketList newBuckets = new BucketList(); for (Bucket bucket : bucketList.getBuckets()) { if (bucket.getLabel().equals(newBucket.getLabel())) { continue; } double newAlloc = roundToTwo(remainingAlloc * bucket.getAllocationPercent()); LOGGER.debug("Add Bucket: setting allocation percentage for bucket " + bucket.getLabel() + " in experiment " + experiment.getID() + " to: " + newAlloc); Bucket.Builder builder = Bucket.from(bucket).withAllocationPercent(newAlloc); Bucket updatedBucket = builder.build(); newBuckets.addBucket(updatedBucket); if (!Experiment.State.DRAFT.equals(experiment.getState()) && Double.compare(bucket.getAllocationPercent(), updatedBucket.getAllocationPercent()) != 0) { // this is a system event, so no user needed eventLog.postEvent(new BucketChangeEvent(experiment, updatedBucket, "allocation", String.valueOf(bucket.getAllocationPercent()), String.valueOf(updatedBucket.getAllocationPercent()))); } } return newBuckets; }
eventLog.postEvent(new BucketChangeEvent(user, experiment, bucket, bucketAuditInfo.getAttributeName(), bucketAuditInfo.getOldValue(), bucketAuditInfo.getNewValue()));
if (!Experiment.State.DRAFT.equals(experiment.getState()) && !(Objects.equals(bucketAuditInfo.getOldValue(), bucketAuditInfo.getNewValue()))) { EventLogEvent event = new BucketChangeEvent(user, experiment, bucketList.getBuckets().get(i), bucketAuditInfo.getAttributeName(), bucketAuditInfo.getOldValue(), bucketAuditInfo.getNewValue());