JoinerScheduleNode current = new JoinerScheduleNode(Util.getJoinerType(dest));
JoinerScheduleNode current = new JoinerScheduleNode(CommonUtils.getJoinerType(dest));
    private List getDestination(FlatNode node, SimulationCounter counters) {        List list = getDestinationHelper(node.edges[0], counters, "", node);        HashSet visited = new HashSet();        // generate joiner receive code        // iterate over the list        Iterator it = list.iterator();        while (it.hasNext()) {            FlatNode dest = (FlatNode) it.next();            if (!(dest.contents instanceof SIRJoiner))                continue;            // decrement the buffer from the joiner            counters.decrementBufferCount(dest, 1);            // get the joiner buffer as determined by getDestination and stored            // in a list            String joinerBuffer = counters.getJoinerReceiveBuffer(dest);            // as determined by the simulation            counters.incrementJoinerBufferCount(dest, joinerBuffer);            // add to the joiner code for this dest            JoinerScheduleNode current = new JoinerScheduleNode(Util.getJoinerType(dest));            current.buffer = joinerBuffer;            if (visited.contains(dest))                current.type = JoinerScheduleNode.DUPLICATE;            else                current.type = JoinerScheduleNode.RECEIVE;            addJoinerCode(dest, current);            visited.add(dest);        }        return list;    }