/// <summary>
        /// Initializes a <see cref="ReplaceDataStrategyBase{TTargetData,TFailureMechanism}"/>.
        /// </summary>
        /// <param name="failureMechanism">The failure mechanism in which the target collection should be updated.</param>
        /// <param name="targetCollection">The collection that needs to be updated.</param>
        /// <exception cref="ArgumentNullException">Thrown when any parameter is <c>null</c>.</exception>
        protected ReplaceDataStrategyBase(TFailureMechanism failureMechanism, ObservableUniqueItemCollectionWithSourcePath <TTargetData> targetCollection)
        {
            if (failureMechanism == null)
            {
                throw new ArgumentNullException(nameof(failureMechanism));
            }

            if (targetCollection == null)
            {
                throw new ArgumentNullException(nameof(targetCollection));
            }

            FailureMechanism      = failureMechanism;
            this.targetCollection = targetCollection;
        }
Beispiel #2
0
        /// <summary>
        /// Initializes a new instance of the <see cref="SurfaceLinesCsvImporter{T}"/> class.
        /// </summary>
        /// <param name="importTarget">The import target.</param>
        /// <param name="filePath">The path to the file to import from.</param>
        /// <param name="messageProvider">The message provider to provide messages during importer actions.</param>
        /// <param name="configuration">The mechanism specific configuration containing all necessary surface lines components.</param>
        /// <exception cref="ArgumentNullException">Thrown when any of the input parameters is <c>null</c>.</exception>
        public SurfaceLinesCsvImporter(
            ObservableUniqueItemCollectionWithSourcePath <T> importTarget,
            string filePath,
            IImporterMessageProvider messageProvider,
            SurfaceLinesCsvImporterConfiguration <T> configuration)
            : base(filePath, importTarget)
        {
            if (messageProvider == null)
            {
                throw new ArgumentNullException(nameof(messageProvider));
            }

            if (configuration == null)
            {
                throw new ArgumentNullException(nameof(configuration));
            }

            this.messageProvider      = messageProvider;
            surfaceLineUpdateStrategy = configuration.UpdateStrategy;
            updatedInstances          = Enumerable.Empty <IObservable>();
            surfaceLineTransformer    = configuration.Transformer;
        }
Beispiel #3
0
        /// <summary>
        /// Creates a new instance of <see cref="UpdateDataStrategyBase{TTargetData,TFailureMechanism}"/>.
        /// </summary>
        /// <param name="failureMechanism">The failure mechanism which needs to be updated.</param>
        /// <param name="targetCollection">The collection to add the updated objects to.</param>
        /// <param name="equalityComparer">The comparer which should be used to determine when two objects are equal.</param>
        /// <exception cref="ArgumentNullException">Thrown when any input parameter is <c>null</c>.</exception>
        protected UpdateDataStrategyBase(
            TFailureMechanism failureMechanism,
            ObservableUniqueItemCollectionWithSourcePath <TTargetData> targetCollection,
            IEqualityComparer <TTargetData> equalityComparer)
        {
            if (failureMechanism == null)
            {
                throw new ArgumentNullException(nameof(failureMechanism));
            }

            if (equalityComparer == null)
            {
                throw new ArgumentNullException(nameof(equalityComparer));
            }

            if (targetCollection == null)
            {
                throw new ArgumentNullException(nameof(targetCollection));
            }

            this.equalityComparer = equalityComparer;
            this.targetCollection = targetCollection;
            FailureMechanism      = failureMechanism;
        }
 public TestUpdateDataStrategy(TestFailureMechanism failureMechanism, IEqualityComparer <TestItem> comparer, ObservableUniqueItemCollectionWithSourcePath <TestItem> targetCollection)
     : base(failureMechanism, targetCollection, comparer)
 {
 }
 private static TestUpdateDataStrategy CreateDefaultTestStrategy(ObservableUniqueItemCollectionWithSourcePath <TestItem> targetCollection)
 {
     return(new TestUpdateDataStrategy(new TestFailureMechanism(), new NameComparer(), targetCollection));
 }
 public ConcreteStrategyClass(TestFailureMechanism failureMechanism, ObservableUniqueItemCollectionWithSourcePath <TestItem> items) : base(failureMechanism, items)
 {
 }