コード例 #1
0
 private SftpObjectDatabase(SftpObjectDatabase parent, string p, TransportSftp instance)
 {
     this._instance = instance;
     try
     {
         _ftp = instance.NewSftp();
         _ftp.ChangeDirectory(parent._objectsPath);
         _ftp.ChangeDirectory(p);
         _objectsPath = _ftp.CurrentDirectory();
     }
     catch (TransportException)
     {
         CleanUp();
         throw;
     }
     catch (Exception je)
     {
         throw new TransportException("Can't enter " + p + " from " + parent._objectsPath + ": " + je.Message, je);
     }
 }
コード例 #2
0
            public SftpObjectDatabase(string path, TransportSftp instance)
            {
                this._instance = instance;

                if (path.StartsWith("/~"))
                {
                    path = path.Substring(1);
                }

                if (path.StartsWith("~/"))
                {
                    path = path.Substring(2);
                }

                try
                {
                    _ftp = instance.NewSftp();
                    _ftp.ChangeDirectory(path);
                    _ftp.ChangeDirectory("objects");
                    _objectsPath = _ftp.CurrentDirectory();
                }
                catch (TransportException)
                {
                    CleanUp();
                    throw;
                }
                catch (Exception je)
                {
                    throw new TransportException("Can't enter " + path + "/objects: " + je.Message, je);
                }
            }