PosixRenameRequest.cs 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. using System;
  2. using Renci.SshNet.Sftp.Responses;
  3. using System.Text;
  4. namespace Renci.SshNet.Sftp.Requests
  5. {
  6. internal class PosixRenameRequest : SftpExtendedRequest
  7. {
  8. public override SftpMessageTypes SftpMessageType
  9. {
  10. get { return SftpMessageTypes.Extended; }
  11. }
  12. public override string Name
  13. {
  14. get { return "posix-rename@openssh.com"; }
  15. }
  16. public string OldPath { get; private set; }
  17. public string NewPath { get; private set; }
  18. public Encoding Encoding { get; private set; }
  19. public PosixRenameRequest(uint protocolVersion, uint requestId, string oldPath, string newPath, Encoding encoding, Action<SftpStatusResponse> statusAction)
  20. : base(protocolVersion, requestId, statusAction)
  21. {
  22. this.OldPath = oldPath;
  23. this.NewPath = newPath;
  24. this.Encoding = encoding;
  25. }
  26. protected override void SaveData()
  27. {
  28. base.SaveData();
  29. this.Write(this.OldPath, this.Encoding);
  30. this.Write(this.NewPath, this.Encoding);
  31. }
  32. }
  33. }