while ((channel != null) && channel.isOpen()) { try { buf.rewind(); if (channel.read(buf) != 1) { continue; } final byte scancode = buf.get(0); if (interpreter != null) { final PointerEvent event = interpreter.handleScancode(scancode & 0xff); if (event != null) {  dispatchEvent(event); } } } catch (Throwable ex) { ex.printStackTrace(); } }
processChannel();
		public void run() {			while ((channel != null) && channel.isOpen()) {				try {					buf.rewind();					if (channel.read(buf) != 1) {						continue;					}					final byte scancode = buf.get(0);					if (interpreter != null) {						final PointerEvent event = interpreter.handleScancode(scancode & 0xff);						if (event != null) {							//log.debug(event);							dispatchEvent(event);						}					}				} catch (Throwable ex) {					ex.printStackTrace();				}			}		}