1 package at.ac.tuwien.sbc.valesriegler.xvsm.loadbalancer;
4 import at.ac.tuwien.sbc.valesriegler.common.Tuple;
5 import at.ac.tuwien.sbc.valesriegler.common.Util;
6 import at.ac.tuwien.sbc.valesriegler.xvsm.LoadBalancerXVSM;
7 import org.slf4j.Logger;
8 import org.slf4j.LoggerFactory;
10 public class LoadBalancer {
11 private static final String USAGE = "LoadBalancer needs exactly two integer parameters: LOADBALANCERID, LOADBALANCER-SPACE-PORT";
12 private static final Logger log = LoggerFactory.getLogger(LoadBalancer.class);
14 private final int pizzeriaPort;
16 private LoadBalancerXVSM xvsm;
18 public static void main(String[] args) {
19 final Tuple<Integer> loadBalancerIdAndSpacePort = Util.parseIdAndSpacePort(args, USAGE);
21 LoadBalancer loadBalancer = new LoadBalancer(loadBalancerIdAndSpacePort.fst, loadBalancerIdAndSpacePort.snd);
25 private void start() {
26 xvsm = new LoadBalancerXVSM(id, pizzeriaPort);
28 xvsm.listenForPizzerias();
31 public LoadBalancer(int id, int pizzeriaPort) {
33 this.pizzeriaPort = pizzeriaPort;
34 log.info("I AM A Loadbalancer WITH ID {}", id);