public void TransferPackageFile(StitchGroupName groupName, string toNodeId, string filePath, string fileName, InstanceAdaptorDetails adaptor, string jobId, string taskId) { // TODO: More validation and error handling // TODO: We need to get more sophisticated about this, such as doing the transfer in chunks and allowing restarts if (!groupName.IsValid() || !groupName.IsVersionGroup()) { throw new Exception("Must use a valid version name for a package upload file"); } if (adaptor == null) { throw new Exception("Adaptor details must be provided"); } var bytes = File.ReadAllBytes(filePath); var envelope = new FileTransferEnvelope { Contents = bytes, GroupName = groupName.VersionString, JobId = jobId, TaskId = taskId, PacketNumber = 1, TotalNumberOfPackets = 1, FileName = fileName, Adaptor = adaptor }; var message = new ClusterMessageBuilder() .ToNode(toNodeId) .FromNode() .WithInternalObjectPayload(envelope) .Build(); Send(message); }
public void SendPackageFile(string networkNodeId, StitchGroupName groupName, string fileName, string filePath, InstanceAdaptorDetails adaptor, string jobId, string taskId) { _messageBus.Publish(new FileTransferRequest { FilePath = filePath, NetworkNodeId = networkNodeId, GroupName = groupName, JobId = jobId, TaskId = taskId, FileName = fileName, Adaptor = adaptor }); //var message = new ClusterMessageBuilder() // .FromNode() // .ToNode(networkNodeId) // .WithObjectPayload(new FileTransferRequest // { // FilePath = filePath, // GroupName = groupName, // JobId = jobId, // TaskId = taskId, // FileName = fileName // }) // .Build(); //_messageBus.Publish(ClusterMessage.SendEventName, message); }