| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143 | 
							- //---------------------------------------------------------------------------
 
- #ifndef ScpFileSystemH
 
- #define ScpFileSystemH
 
- #include <FileSystems.h>
 
- #include <CopyParam.h>
 
- //---------------------------------------------------------------------------
 
- class TCommandSet;
 
- class TSecureShell;
 
- struct TOverwriteFileParams;
 
- //---------------------------------------------------------------------------
 
- class TSCPFileSystem : public TCustomFileSystem
 
- {
 
- public:
 
-   __fastcall TSCPFileSystem(TTerminal * ATerminal, TSecureShell * SecureShell);
 
-   virtual __fastcall ~TSCPFileSystem();
 
-   virtual void __fastcall Open();
 
-   virtual void __fastcall Close();
 
-   virtual bool __fastcall GetActive();
 
-   virtual void __fastcall CollectUsage();
 
-   virtual void __fastcall Idle();
 
-   virtual UnicodeString __fastcall AbsolutePath(UnicodeString Path, bool Local);
 
-   virtual void __fastcall AnyCommand(const UnicodeString Command,
 
-     TCaptureOutputEvent OutputEvent);
 
-   virtual void __fastcall ChangeDirectory(const UnicodeString Directory);
 
-   virtual void __fastcall CachedChangeDirectory(const UnicodeString Directory);
 
-   virtual void __fastcall AnnounceFileListOperation();
 
-   virtual void __fastcall ChangeFileProperties(const UnicodeString FileName,
 
-     const TRemoteFile * File, const TRemoteProperties * Properties,
 
-     TChmodSessionAction & Action);
 
-   virtual bool __fastcall LoadFilesProperties(TStrings * FileList);
 
-   virtual void __fastcall CalculateFilesChecksum(const UnicodeString & Alg,
 
-     TStrings * FileList, TStrings * Checksums,
 
-     TCalculatedChecksumEvent OnCalculatedChecksum);
 
-   virtual void __fastcall CopyToLocal(TStrings * FilesToCopy,
 
-     const UnicodeString TargetDir, const TCopyParamType * CopyParam,
 
-     int Params, TFileOperationProgressType * OperationProgress,
 
-     TOnceDoneOperation & OnceDoneOperation);
 
-   virtual void __fastcall CopyToRemote(TStrings * FilesToCopy,
 
-     const UnicodeString TargetDir, const TCopyParamType * CopyParam,
 
-     int Params, TFileOperationProgressType * OperationProgress,
 
-     TOnceDoneOperation & OnceDoneOperation);
 
-   virtual void __fastcall CreateDirectory(const UnicodeString DirName);
 
-   virtual void __fastcall CreateLink(const UnicodeString FileName, const UnicodeString PointTo, bool Symbolic);
 
-   virtual void __fastcall DeleteFile(const UnicodeString FileName,
 
-     const TRemoteFile * File, int Params, TRmSessionAction & Action);
 
-   virtual void __fastcall CustomCommandOnFile(const UnicodeString FileName,
 
-     const TRemoteFile * File, UnicodeString Command, int Params, TCaptureOutputEvent OutputEvent);
 
-   virtual void __fastcall DoStartup();
 
-   virtual void __fastcall HomeDirectory();
 
-   virtual bool __fastcall IsCapable(int Capability) const;
 
-   virtual void __fastcall LookupUsersGroups();
 
-   virtual void __fastcall ReadCurrentDirectory();
 
-   virtual void __fastcall ReadDirectory(TRemoteFileList * FileList);
 
-   virtual void __fastcall ReadFile(const UnicodeString FileName,
 
-     TRemoteFile *& File);
 
-   virtual void __fastcall ReadSymlink(TRemoteFile * SymlinkFile,
 
-     TRemoteFile *& File);
 
-   virtual void __fastcall RenameFile(const UnicodeString FileName,
 
-     const UnicodeString NewName);
 
-   virtual void __fastcall CopyFile(const UnicodeString FileName,
 
-     const UnicodeString NewName);
 
-   virtual TStrings * __fastcall GetFixedPaths();
 
-   virtual void __fastcall SpaceAvailable(const UnicodeString Path,
 
-     TSpaceAvailable & ASpaceAvailable);
 
-   virtual const TSessionInfo & __fastcall GetSessionInfo();
 
-   virtual const TFileSystemInfo & __fastcall GetFileSystemInfo(bool Retrieve);
 
-   virtual bool __fastcall TemporaryTransferFile(const UnicodeString & FileName);
 
-   virtual bool __fastcall GetStoredCredentialsTried();
 
-   virtual UnicodeString __fastcall GetUserName();
 
-   virtual void __fastcall GetSupportedChecksumAlgs(TStrings * Algs);
 
-   virtual void __fastcall LockFile(const UnicodeString & FileName, const TRemoteFile * File);
 
-   virtual void __fastcall UnlockFile(const UnicodeString & FileName, const TRemoteFile * File);
 
-   virtual void __fastcall UpdateFromMain(TCustomFileSystem * MainFileSystem);
 
- protected:
 
-   __property TStrings * Output = { read = FOutput };
 
-   __property int ReturnCode = { read = FReturnCode };
 
-   virtual UnicodeString __fastcall GetCurrentDirectory();
 
- private:
 
-   TSecureShell * FSecureShell;
 
-   TCommandSet * FCommandSet;
 
-   TFileSystemInfo FFileSystemInfo;
 
-   UnicodeString FCurrentDirectory;
 
-   TStrings * FOutput;
 
-   int FReturnCode;
 
-   UnicodeString FCachedDirectoryChange;
 
-   bool FProcessingCommand;
 
-   int FLsFullTime;
 
-   TCaptureOutputEvent FOnCaptureOutput;
 
-   bool FScpFatalError;
 
-   void __fastcall DetectUtf();
 
-   void __fastcall ClearAliases();
 
-   void __fastcall ClearAlias(UnicodeString Alias);
 
-   void __fastcall CustomReadFile(const UnicodeString FileName,
 
-     TRemoteFile *& File, TRemoteFile * ALinkedByFile);
 
-   static UnicodeString __fastcall DelimitStr(UnicodeString Str);
 
-   void __fastcall DetectReturnVar();
 
-   bool __fastcall IsLastLine(UnicodeString & Line);
 
-   static bool __fastcall IsTotalListingLine(const UnicodeString Line);
 
-   void __fastcall EnsureLocation();
 
-   void __fastcall ExecCommand(const UnicodeString & Cmd, int Params,
 
-     const UnicodeString & CmdString);
 
-   void __fastcall ExecCommand(TFSCommand Cmd, const TVarRec * args = NULL,
 
-     int size = 0, int Params = -1);
 
-   void __fastcall ReadCommandOutput(int Params, const UnicodeString * Cmd = NULL);
 
-   void __fastcall SCPResponse(bool * GotLastLine = NULL);
 
-   void __fastcall SCPDirectorySource(const UnicodeString DirectoryName,
 
-     const UnicodeString TargetDir, const TCopyParamType * CopyParam, int Params,
 
-     TFileOperationProgressType * OperationProgress, int Level);
 
-   void __fastcall SCPError(const UnicodeString Message, bool Fatal);
 
-   void __fastcall SCPSendError(const UnicodeString Message, bool Fatal);
 
-   void __fastcall SCPSink(const UnicodeString TargetDir,
 
-     const UnicodeString FileName, const UnicodeString SourceDir,
 
-     const TCopyParamType * CopyParam, bool & Success,
 
-     TFileOperationProgressType * OperationProgress, int Params, int Level);
 
-   void __fastcall SCPSource(const UnicodeString FileName,
 
-     const UnicodeString TargetDir, const TCopyParamType * CopyParam, int Params,
 
-     TFileOperationProgressType * OperationProgress, int Level);
 
-   void __fastcall SendCommand(const UnicodeString Cmd);
 
-   void __fastcall SkipFirstLine();
 
-   void __fastcall SkipStartupMessage();
 
-   void __fastcall UnsetNationalVars();
 
-   TRemoteFile * __fastcall CreateRemoteFile(const UnicodeString & ListingStr,
 
-     TRemoteFile * LinkedByFile = NULL);
 
-   void __fastcall CaptureOutput(const UnicodeString & AddedLine, TCaptureOutputType OutputType);
 
-   void __fastcall ChangeFileToken(const UnicodeString & DelimitedName,
 
-     const TRemoteToken & Token, TFSCommand Cmd, const UnicodeString & RecursiveStr);
 
-   unsigned int __fastcall ConfirmOverwrite(
 
-     const UnicodeString & SourceFullFileName, const UnicodeString & TargetFileName,
 
-     TOperationSide Side,
 
-     const TOverwriteFileParams * FileParams, const TCopyParamType * CopyParam,
 
-     int Params, TFileOperationProgressType * OperationProgress);
 
-   static bool __fastcall RemoveLastLine(UnicodeString & Line,
 
-     int & ReturnCode, UnicodeString LastLine = L"");
 
- };
 
- //---------------------------------------------------------------------------
 
- #endif // ScpFileSystemH
 
 
  |