NodeEnumerableFactory
using Relativity.DataTransfer.Nodes;
using Relativity.Transfer.Enumeration.Interfaces;
using System.Collections.Generic;
using System.Threading;
namespace Relativity.Transfer.Enumeration
{
internal class NodeEnumerableFactory : INodeEnumerableFactory
{
private readonly INodeFactory _nodeFactory;
private readonly INativeMethods _nativeMethods;
private readonly ITransferLog _logger;
public NodeEnumerableFactory(INodeFactory nodeFactory, INativeMethods nativeMethods, ITransferLog logger)
{
_nodeFactory = nodeFactory;
_nativeMethods = nativeMethods;
_logger = logger;
}
public IEnumerable<INode> Create(INode sourceNode, CancellationToken token)
{
return new NodeEnumerable(sourceNode, _nodeFactory, _nativeMethods, _logger, token);
}
}
}