예제 #1
0
        /// <summary>
        /// Factory function for creating Nol3Connector singleton instance
        /// </summary>
        public static Nol3Connector CreateClient(NOL3RegistrySetting settings)
        {
            _Nol3ConnectorInstance = _Nol3ConnectorInstance != null
                                ? _Nol3ConnectorInstance
                                : new Nol3Connector(settings);

            return(_Nol3ConnectorInstance);
        }
예제 #2
0
        public static Nol3Client GetNol3Client(NOL3RegistrySetting settings)
        {
            _nol3ClientInstance = _nol3ClientInstance != null
                                ? _nol3ClientInstance
                                : new Nol3Client(settings);

            return(_nol3ClientInstance);
        }
예제 #3
0
        public void TestIfSingletonWorksForNol3Client()
        {
            var settings = new NOL3RegistrySetting()
            {
                AsynchPort         = 1,
                IsAsynchPortActive = true,
                IsSynchPortActive  = true,
                SynchPort          = 2
            };
            var instance1 = Nol3Connector.CreateClient(settings);
            var instance2 = Nol3Connector.CreateClient(settings);

            Assert.That(instance1, Is.SameAs(instance2));
        }
예제 #4
0
 private Nol3Connector(NOL3RegistrySetting settings)
 {
     _settings = settings;
 }
예제 #5
0
 private Nol3Client(NOL3RegistrySetting settings)
 {
     _nol3Connector = Nol3Connector.CreateClient(settings);
     _asyncPortListenerTokenSource = new CancellationTokenSource();
     _asyncPortListenerToken       = _asyncPortListenerTokenSource.Token;
 }