From 0abe59c74aa448d41645ca2b3dca393473a1681a Mon Sep 17 00:00:00 2001 From: ScarletRedMan Date: Fri, 17 Nov 2023 14:15:59 +0700 Subject: [PATCH] Added node details --- .../web/page/NodeDetailsPage.java | 34 +++++++++++++++---- 1 file changed, 28 insertions(+), 6 deletions(-) diff --git a/LoadBalancerWeb/src/main/java/ru/dragonestia/loadbalancer/web/page/NodeDetailsPage.java b/LoadBalancerWeb/src/main/java/ru/dragonestia/loadbalancer/web/page/NodeDetailsPage.java index e850e6a..7d39632 100644 --- a/LoadBalancerWeb/src/main/java/ru/dragonestia/loadbalancer/web/page/NodeDetailsPage.java +++ b/LoadBalancerWeb/src/main/java/ru/dragonestia/loadbalancer/web/page/NodeDetailsPage.java @@ -1,5 +1,12 @@ package ru.dragonestia.loadbalancer.web.page; +import com.vaadin.flow.component.Html; +import com.vaadin.flow.component.HtmlComponent; +import com.vaadin.flow.component.HtmlContainer; +import com.vaadin.flow.component.Text; +import com.vaadin.flow.component.html.H2; +import com.vaadin.flow.component.html.Hr; +import com.vaadin.flow.component.html.Span; import com.vaadin.flow.component.orderedlayout.VerticalLayout; import com.vaadin.flow.router.BeforeEnterEvent; import com.vaadin.flow.router.BeforeEnterObserver; @@ -32,16 +39,31 @@ public class NodeDetailsPage extends VerticalLayout implements BeforeEnterObserv } node = new Node(nodeIdOpt.get(), LoadBalancingMethod.ROUND_ROBIN); // TODO: getting node - add(new NavPath(new NavPath.Point("Nodes", "/nodes"), - new NavPath.Point(node.identifier(), "/nodes/" + node.identifier()))); - // TODO: getting buckets - add(bucketList = new BucketList(List.of( + initComponents(node, List.of( Bucket.create("test-1", node, SlotLimit.unlimited(), "Hello world!"), Bucket.create("test-2", node, SlotLimit.of(12), "Hello world!"), Bucket.create("test-3", node, SlotLimit.unlimited(), "Hello world!"), Bucket.create("test-4", node, SlotLimit.of(32), "Hello world!"), - Bucket.create("test-5", node, SlotLimit.of(54), "Hello world!") - ))); + Bucket.create("test-5", node, SlotLimit.of(54), "Hello world!"))); + } + + private void initComponents(Node node, List buckets) { + add(new NavPath(new NavPath.Point("Nodes", "/nodes"), + new NavPath.Point(node.identifier(), "/nodes/" + node.identifier()))); + + printNodeDetails(node); + add(bucketList = new BucketList(buckets)); + } + + private void printNodeDetails(Node node) { + add(new H2("Node details")); + + var layout = new VerticalLayout(); + layout.add(new Html("Identifier: " + node.identifier() + "")); + layout.add(new Html("Mode: " + node.method().getName() + "")); + + add(layout); + add(new Hr()); } }