From ca84959c836b731f55ae10ed3d949419befabff5 Mon Sep 17 00:00:00 2001 From: ScarletRedMan Date: Mon, 20 Nov 2023 08:45:22 +0700 Subject: [PATCH] Added locking bucket in registering --- .../loadbalancer/web/component/RegisterBucket.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/LoadBalancerWeb/src/main/java/ru/dragonestia/loadbalancer/web/component/RegisterBucket.java b/LoadBalancerWeb/src/main/java/ru/dragonestia/loadbalancer/web/component/RegisterBucket.java index ee82053..1c118e4 100644 --- a/LoadBalancerWeb/src/main/java/ru/dragonestia/loadbalancer/web/component/RegisterBucket.java +++ b/LoadBalancerWeb/src/main/java/ru/dragonestia/loadbalancer/web/component/RegisterBucket.java @@ -3,6 +3,7 @@ package ru.dragonestia.loadbalancer.web.component; import com.vaadin.flow.component.Unit; import com.vaadin.flow.component.button.Button; import com.vaadin.flow.component.button.ButtonVariant; +import com.vaadin.flow.component.checkbox.Checkbox; import com.vaadin.flow.component.details.Details; import com.vaadin.flow.component.html.H2; import com.vaadin.flow.component.notification.Notification; @@ -24,6 +25,7 @@ public class RegisterBucket extends Details { private final Function onSubmit; private final TextField identifierField; private final TextArea payloadField; + private final Checkbox lockedField; public RegisterBucket(Node node, Function onSubmit) { super(new H2("Register bucket")); @@ -34,6 +36,7 @@ public class RegisterBucket extends Details { layout.add(createNodeIdentifierField()); layout.add(identifierField = createBucketIdentifierField()); layout.add(payloadField = createPayloadField()); + layout.add(lockedField = createLockedField()); layout.add(createSubmitButton()); add(layout); @@ -67,6 +70,12 @@ public class RegisterBucket extends Details { return field; } + private Checkbox createLockedField() { + var field = new Checkbox("Locked"); + field.setValue(false); + return field; + } + private Button createSubmitButton() { var button = new Button("Register"); button.addThemeVariants(ButtonVariant.LUMO_PRIMARY); @@ -77,6 +86,7 @@ public class RegisterBucket extends Details { public void clear() { identifierField.clear(); payloadField.clear(); + lockedField.setValue(false); } private @Nullable String validateForm(String identifier) { @@ -102,6 +112,7 @@ public class RegisterBucket extends Details { } var bucket = Bucket.create(nodeIdentifier, node, SlotLimit.unlimited(), payloadField.getValue()); + bucket.setLocked(lockedField.getValue()); var response = onSubmit.apply(bucket); clear(); if (response.error()) {