func (m *MessageStream) outbound() {
	for {
		select {
		case <-m.Shutdown:
			log.Infof("Closing OpenFlow message stream.")
			m.conn.Close()
			return
		case msg := <-m.Outbound:
			// Forward outbound messages to conn
			data, _ := msg.MarshalBinary()
			if _, err := m.conn.Write(data); err != nil {
				log.Warnln("OutboundError:", err)
				m.Error <- err
				m.Shutdown <- true
			}

			log.Debugf("Sent(%d): %v", len(data), data)
		}
	}
}
func (m *MessageStream) outbound() {
	for {
		select {
		case <-m.Shutdown:
			log.Infof("Closing OpenFlow message stream.")
			m.conn.Close()
			return
		case msg := <-m.Outbound:
			// Forward outbound messages to conn
			data, _ := msg.MarshalBinary()
			if _, err := m.conn.Write(data); err != nil {
				log.Warnln("OutboundError:", err)
				m.Error <- err
				m.Shutdown <- true
			}

			log.Debugf("Sent(%d): %v", len(data), data)
		}
	}
}
func ( m * MessageStream ) outbound ( ) { for { select { case <- m . Shutdown : log . Infof ( " " ) m . conn . Close ( ) return case msg := <- m . Outbound : // Forward outbound messages to conn data , _ := msg . MarshalBinary ( ) if _ , err := m . conn . Write ( data ) ; err != nil { log . Warnln ( " " , err ) m . Error <- err m . Shutdown <- true } log . Debugf ( " " , len ( data ) , data ) } } }
// Listen for a Shutdown signal or Outbound messages.
Listen for a Shutdown signal or Outbound messages .