1 package at.ac.tuwien.sbc.valesriegler.common;
4 import java.util.Collections;
5 import java.util.HashMap;
9 import org.mozartspaces.capi3.Coordinator;
10 import org.mozartspaces.core.Capi;
11 import org.mozartspaces.core.ContainerReference;
12 import org.mozartspaces.core.MzsConstants.Container;
13 import org.mozartspaces.core.MzsConstants.RequestTimeout;
14 import org.mozartspaces.core.MzsCoreException;
15 import org.slf4j.Logger;
16 import org.slf4j.LoggerFactory;
18 import at.ac.tuwien.sbc.valesriegler.xvsm.AbstractXVSMConnector;
20 public abstract class Util {
21 private static final Logger log = LoggerFactory.getLogger(Util.class);
23 // TODO: solve the switch between mom by command-line arguments
24 public static final boolean useJMS = false;
26 public static final String TABLES_CONTAINER = "tables";
27 public static final String GROUPS_CONTAINER = "groups";
28 public static final String ASSIGN_TABLE = "assignTable";
29 public static final String TAKE_ORDER = "takeOrder";
30 public static final String ORDER = "order";
31 public static final String DELIVER_PIZZAS = "deliverPizzas";
32 public static final String PREPARE_PIZZAS = "preparePizzas";
33 public static final String PIZZAS_IN_PROGRESS = "pizzasInProgress";
34 public static final String PAYMENT = "payment";
35 public static final String FREE_TABLES = "freeTables";
37 public static final String SERVER_ADDR = "xvsm://localhost:9876";
39 public static ContainerReference getOrCreateNamedContainer(final String spaceUri, final String containerName, final Capi capi, final List<Coordinator> coordinators)
40 throws MzsCoreException {
42 ContainerReference container;
44 container = capi.lookupContainer(containerName, URI.create(spaceUri), RequestTimeout.DEFAULT, null);
45 } catch (MzsCoreException e) {
46 container = capi.createContainer(containerName, URI.create(spaceUri), Container.UNBOUNDED, coordinators, null, null);
51 public static String getId(int id) {
52 return (id != 0 || id != -1) ? String.valueOf(id) : "";
55 public static int getIntSafe(Integer nr) {
56 return nr == null ? 0 : nr;
59 public static <T extends HasId> Map<Integer, T> intoMapById(List<T> hasIds) {
61 return Collections.emptyMap();
64 Map<Integer, T> myMap = new HashMap<>();
65 for (T hasId : hasIds) {
66 myMap.put(hasId.getId(), hasId);