public PaxDevice(ITerminalConfiguration settings) { settings.Validate(); this._settings = settings; switch (_settings.ConnectionMode) { case ConnectionModes.TCP_IP: _interface = new PaxTcpInterface(settings); break; case ConnectionModes.HTTP: _interface = new PaxHttpInterface(settings); break; case ConnectionModes.SERIAL: case ConnectionModes.SSL_TCP: throw new NotImplementedException(); } _interface.OnMessageSent += (message) => { if (this.OnMessageSent != null) { OnMessageSent(message); } }; }