JoinerScheduleNode current = new JoinerScheduleNode(Util.getJoinerType(src));
JoinerScheduleNode current = new JoinerScheduleNode(CommonUtils.getJoinerType(src));
    private void sendItemUpdate(FlatNode src, List dests, HashMap counts, SimulationCounter counters)     {        //System.out.println("send item update: " + src);                //create the joiner schedule node that will place this item on the switch processor        //extracting it from the proper buffer...        if (src.isJoiner()) {            //this joiner fired because it has data that can be sent downstream            JoinerScheduleNode current = new JoinerScheduleNode(Util.getJoinerType(src));            current.buffer = counters.getJoinerBuffer(src);            current.type = JoinerScheduleNode.FIRE;            addJoinerCode(src, current);            //decrement the buffer            counters.decrementJoinerBufferCount(src, counters.getJoinerBuffer(src));            //step the schedule            counters.incrementJoinerSchedule(src);        }            //update the state for each of the destinations and if there are         //identity filters in the dests list, get the real (non-identity) destinations        //for this item...        List realDests = updateDestinations(src, dests.iterator(), counters);                //System.out.println("  dest: " + realDests.get(0));                if (KjcOptions.magic_net) {            //generating code for the raw magic network            //appendMagicNetNodes(src, realDests);        }        else {            //not generating code for the magic network            //generate switch code for all intermediate            //hops            generateSwitchCode(src, realDests);        }     }