Example #1
0
        public static Nfs3FileAttributes GetNfs3FileAttrFromFileStatus(HdfsFileStatus fs,
                                                                       IdMappingServiceProvider iug)
        {
            NfsFileType fileType = fs.IsDir() ? NfsFileType.Nfsdir : NfsFileType.Nfsreg;

            fileType = fs.IsSymlink() ? NfsFileType.Nfslnk : fileType;
            int  nlink = (fileType == NfsFileType.Nfsdir) ? fs.GetChildrenNum() + 2 : 1;
            long size  = (fileType == NfsFileType.Nfsdir) ? GetDirSize(fs.GetChildrenNum()) :
                         fs.GetLen();

            return(new Nfs3FileAttributes(fileType, nlink, fs.GetPermission().ToShort(), iug.
                                          GetUidAllowingUnknown(fs.GetOwner()), iug.GetGidAllowingUnknown(fs.GetGroup()),
                                          size, 0, fs.GetFileId(), fs.GetModificationTime(), fs.GetAccessTime(), new Nfs3FileAttributes.Specdata3
                                              ()));
        }
Example #2
0
 public Nfs3FileAttributes(NfsFileType nfsType, int nlink, short mode, int uid, int
                           gid, long size, long fsid, long fileId, long mtime, long atime, Nfs3FileAttributes.Specdata3
                           rdev)
 {
     this.type   = nfsType.ToValue();
     this.mode   = mode;
     this.nlink  = nlink;
     this.uid    = uid;
     this.gid    = gid;
     this.size   = size;
     this.used   = this.size;
     this.rdev   = new Nfs3FileAttributes.Specdata3();
     this.fsid   = fsid;
     this.fileId = fileId;
     this.mtime  = new NfsTime(mtime);
     this.atime  = atime != 0 ? new NfsTime(atime) : this.mtime;
     this.ctime  = this.mtime;
     this.rdev   = rdev;
 }