@Override public void processDriverHandshakeMessage(OFMessage m) { if (startDriverHandshakeCalled) throw new SwitchDriverSubHandshakeCompleted(m); else throw new SwitchDriverSubHandshakeNotStarted(); }
@Override public void processDriverHandshakeMessage(OFMessage m) { if (!startDriverHandshakeCalled) throw new SwitchDriverSubHandshakeNotStarted(); if (isDriverHandshakeComplete()) throw new SwitchDriverSubHandshakeCompleted(m); try { processOFMessage(this, m); } catch (IOException e) { log.error("Error generated when processing OFMessage", e.getCause()); } }
@Override public void processDriverHandshakeMessage(OFMessage m) { if (!startDriverHandshakeCalled) { throw new SwitchDriverSubHandshakeNotStarted(); } if (driverHandshakeComplete.get()) { throw new SwitchDriverSubHandshakeCompleted(m); } switch (m.getType()) { case BARRIER_REPLY: if (m.getXid() == barrierXidToWaitFor) { driverHandshakeComplete.set(true); } break; case ERROR: log.error("Switch {} Error {}", getStringId(), (OFErrorMsg) m); break; case FEATURES_REPLY: break; case FLOW_REMOVED: break; case GET_ASYNC_REPLY: // OFAsyncGetReply asrep = (OFAsyncGetReply)m; // decodeAsyncGetReply(asrep); break; case PACKET_IN: break; case PORT_STATUS: break; case QUEUE_GET_CONFIG_REPLY: break; case ROLE_REPLY: break; case STATS_REPLY: // processStatsReply((OFStatsReply) m); break; default: log.debug("Received message {} during switch-driver subhandshake " + "from switch {} ... Ignoring message", m, getStringId()); } }