Ejemplo n.º 1
0
        public ButtplugServer(ButtplugServerOptions aOptions)
        {
            ButtplugUtils.ArgumentNotNull(aOptions, nameof(aOptions));
            _clientName   = null;
            _serverName   = aOptions.ServerName;
            _maxPingTime  = aOptions.MaxPingTime;
            _pingTimedOut = false;
            if (_maxPingTime != 0)
            {
                // Create a new timer that wont fire any events just yet
                _pingTimer = new Timer(PingTimeoutHandler, null, Timeout.Infinite, Timeout.Infinite);
            }

            BpLogManager = new ButtplugLogManager();
            _bpLogger    = BpLogManager.GetLogger(GetType());
            _bpLogger.Debug("Setting up ButtplugServer");
            _parser        = new ButtplugJsonMessageParser(BpLogManager);
            _deviceManager = aOptions.DeviceManager ?? new DeviceManager(BpLogManager, aOptions.SubtypeManagerSearchPaths);

            _bpLogger.Info("Finished setting up ButtplugServer");
            _deviceManager.DeviceMessageReceived += DeviceMessageReceivedHandler;
            _deviceManager.ScanningFinished      += ScanningFinishedHandler;

            if (!DeviceConfigurationManager.HasManager)
            {
                DeviceConfigurationManager.LoadBaseConfigurationFromResource();
            }
        }
Ejemplo n.º 2
0
 public ButtplugWSClient(string aClientName)
 {
     _clientName   = aClientName;
     _bpLogManager = new ButtplugLogManager();
     _bpLogger     = _bpLogManager.GetLogger(GetType());
     _parser       = new ButtplugJsonMessageParser(_bpLogManager);
     _bpLogger.Info("Finished setting up ButtplugClient");
     _owningDispatcher = Dispatcher.CurrentDispatcher;
     _tokenSource      = new CancellationTokenSource();
 }
Ejemplo n.º 3
0
        /// <summary>
        /// Initializes a new instance of the <see cref="ButtplugWSClient"/> class.
        /// </summary>
        /// <param name="aClientName">The name of the client (used by the server for UI and permissions).</param>
        public ButtplugWSClient(string aClientName)
        {
            _clientName = aClientName;
            IButtplugLogManager bpLogManager = new ButtplugLogManager();

            _bpLogger = bpLogManager.GetLogger(GetType());
            _parser   = new ButtplugJsonMessageParser(bpLogManager);
            _bpLogger.Info("Finished setting up ButtplugClient");
            _owningDispatcher = SynchronizationContext.Current ?? new SynchronizationContext();
            _tokenSource      = new CancellationTokenSource();
            _counter          = 0;
        }
Ejemplo n.º 4
0
        public async void SerializeUnhandledMessage()
        {
            var logger = new ButtplugLogManager();
            var r      = new ButtplugJsonMessageParser(logger).Serialize(new FakeMessage(1));

            // Even though the message is defined outside the core library, it should at least serialize
            Assert.True(r.Length > 0);

            // However it shouldn't be taken by the server.
            var s = new TestServer();
            var e = await s.SendMessage(r);

            Assert.True(e.Length == 1);
            Assert.True(e[0] is Error);
        }
        public ButtplugService([NotNull] string aServerName, uint aMaxPingTime)
        {
            _serverName   = aServerName;
            _maxPingTime  = aMaxPingTime;
            _pingTimedOut = false;
            if (aMaxPingTime != 0)
            {
                _pingTimer          = new Timer(_maxPingTime);
                _pingTimer.Elapsed += PingTimeoutHandler;
            }

            _bpLogManager = new ButtplugLogManager();
            _bpLogger     = _bpLogManager.GetLogger(GetType());
            _bpLogger.Trace("Setting up ButtplugService");
            _parser        = new ButtplugJsonMessageParser(_bpLogManager);
            _deviceManager = new DeviceManager(_bpLogManager);
            _bpLogger.Trace("Finished setting up ButtplugService");
            _deviceManager.DeviceMessageReceived += DeviceMessageReceivedHandler;
            _deviceManager.ScanningFinished      += ScanningFinishedHandler;
            _bpLogManager.LogMessageReceived     += LogMessageReceivedHandler;
        }
Ejemplo n.º 6
0
        public ButtplugServer([NotNull] string aServerName, uint aMaxPingTime, DeviceManager aDeviceManager = null)
        {
            _serverName   = aServerName;
            _maxPingTime  = aMaxPingTime;
            _pingTimedOut = false;
            if (aMaxPingTime != 0)
            {
                // Create a new timer that wont fire any events just yet
                _pingTimer = new Timer(PingTimeoutHandler, null, Timeout.Infinite, Timeout.Infinite);
            }

            BpLogManager = new ButtplugLogManager();
            _bpLogger    = BpLogManager.GetLogger(GetType());
            _bpLogger.Debug("Setting up ButtplugServer");
            _parser        = new ButtplugJsonMessageParser(BpLogManager);
            _deviceManager = aDeviceManager ?? new DeviceManager(BpLogManager);

            _bpLogger.Info("Finished setting up ButtplugServer");
            _deviceManager.DeviceMessageReceived += DeviceMessageReceivedHandler;
            _deviceManager.ScanningFinished      += ScanningFinishedHandler;
            BpLogManager.LogMessageReceived      += LogMessageReceivedHandler;
        }
Ejemplo n.º 7
0
 public void OneTimeSetUp()
 {
     _logManager = new ButtplugLogManager();
     _parser     = new ButtplugJsonMessageParser(_logManager);
 }