protected void hostLeft(NetID id) { this.checkTimeProgress(); if (hostsSeen.contains(id)) { MessageCategory[] cats = MessageCategory.values(); for (int i = 0; i < cats.length; i++) { Map<NetID, Integer> catMap = catMsgs.get(cats[i]); if (catMap.containsKey(id)) { catMap.remove(id); this.removeHost(id); } } } }
protected void hostSeen(NetID id) { this.checkTimeProgress(); if (!hostsSeen.contains(id)) { MessageCategory[] cats = MessageCategory.values(); for (int i = 0; i < cats.length; i++) { Map<NetID, Integer> catMap = catMsgs.get(cats[i]); if (!catMap.containsKey(id)) { catMap.put(id, 0); this.addHostOrUpdateAll(id, newEmptyValueArray()); } } } }
protected void declareDistributions() { MessageCategory[] array = MessageCategory.values(); for (int i = 0; i < array.length; i++) addDistribution(array[i].toString()); }
static { MessageCategory[] array = MessageCategory.values(); for (int i = 0; i < array.length; i++) categoryPositions.put(array[i], i); }
protected void resetCatMsgs() { catMsgs = new HashMap<MessageCategory, Map<NetID, Integer>>(); MessageCategory[] array = MessageCategory.values(); for (int i = 0; i < array.length; i++) catMsgs.put(array[i], new HashMap<NetID, Integer>()); }
static long[] newEmptyValueArray() { int length = MessageCategory.values().length; long[] result = new long[length]; for (int i = 0; i < length; i++) result[i] = 0; return result; }