public void Start(ILog logger) { _logger = logger; ReaderWriter readerWriter = new ReaderWriter(ServiceName); _settings = readerWriter.Read(); try { _serverConnector = new ServerConnector(_settings); var objectModifier = new ObjectModifier(_serverConnector); _objectUploader = new ObjectUploader(objectModifier, _serverConnector); _connectProvider = new ConnectProvider(_logger, _settings, _serverConnector); _connectProvider.Connect(); _revitShareListener = new RevitShareListener(_objectUploader, _settings); _pipeServer = new PipeServer(_logger, readerWriter, _connectProvider, _objectUploader, _revitShareListener); _pipeServer.Start(); _logger.InfoFormat("{0} Started Successfully", ServiceName); } catch (Exception)//in case of incorrect settings.xml { _pipeServer = new PipeServer(_logger, readerWriter, _connectProvider, _objectUploader, null); _pipeServer.Start(); } }
/// <summary> /// Checks assertions depending on the concrete type of checker. /// </summary> public void CheckInterface() { var type = typeof(TInstance); var result = (TInstance)ObjectBuilder.CreateInstance(type, Environment.TickCount, false); ObjectFiller.Fill(result, false); Check.That(result.Equals(result)).IsTrue(); Check.That(result).IsOperatorEqualTo(result); Check.That(result).Is(e => e.IsOperatorEqual(result)).IsTrue(); Check.That(result).Is(e => e.IsOperatorNotEqual(result)).IsFalse(); Check.That(result.Equals((object)result)).IsTrue(); Check.That(result.Equals(null)).IsFalse(); Check.That(result.Equals("")).IsFalse(); Check.That(result.Equals((object)default(TInstance))).IsFalse(); Check.That(result.Equals(default(TInstance))).IsFalse(); Check.That(result).Is(e => e.IsOperatorEqual(default(TInstance))).IsFalse(); Check.That(result).Is(e => e.IsOperatorNotEqual(default(TInstance))).IsTrue(); Check.That(result.GetHashCode()).IsEqualTo(result.GetHashCode()); var clone = (TInstance)ObjectBuilder.MemberwiseClone(result); Check.That(result.Equals(clone)).IsTrue(); Check.That(result).Is(e => e.IsOperatorEqual(clone)).IsTrue(); Check.That(result).Is(e => e.IsOperatorNotEqual(clone)).IsFalse(); Check.That(result.Equals((object)clone)).IsTrue(); if (ObjectModifier.ChangeFirstProperty(clone)) { Check.That(result.Equals(clone)).IsFalse(); Check.That(result).Is(e => e.IsOperatorEqual(clone)).IsFalse(); Check.That(result).Is(e => e.IsOperatorNotEqual(clone)).IsTrue(); Check.That(result.GetHashCode()).IsNotEqualTo(clone.GetHashCode()); } }
/// <summary> /// Checks assertions depending on the concrete type of checker. /// </summary> public void CheckInterface() { var result = (TCloneable)ObjectBuilder.CreateInstance(typeof(TCloneable), Environment.TickCount, false); ObjectFiller.Fill(result, false); var clone = (TCloneable)result.Clone(); // Clone should be equal Check.ThatObject(result).IsEqualTo(clone); // Check if we change a property on a side it is not changed on other side foreach (var info in typeof(TCloneable).GetProperties()) { clone = (TCloneable)result.Clone(); if (ObjectModifier.ChangeValue(result, info.Name, true)) { var type = result.GetType(); Check.ThatObject(info.GetValue(result)).IsNotEqualTo( info.GetValue(clone), $"After clone of {type}, property {info.Name} should not remain equal to the same property of original object"); } } }
public void Start(ILog logger) { _logger = logger; try { _settings = SettingsReader.Read(); _serverConnector = new ServerConnector(_settings); _remoteStorage = new RemoteStorageThread(_serverConnector); _remoteStorage.Start(); var objectModifier = new ObjectModifier(_serverConnector, _serverConnector.PersonId); var objectUploader = new ObjectUploader(_remoteStorage, objectModifier, _serverConnector); _revitShareListener = new RevitShareListener(objectUploader, _settings); _logger.InfoFormat("{0} Started Successfully", ServiceName); } catch (Exception ex) { _logger.Error("OnStart Failed", ex); } }