Esempio n. 1
0
        /// <summary>
        /// Returns summary of this header likes "<code>ls -l</code>" Unix command.
        /// </summary>
        /// <returns></returns>
        public override string ToString()
        {
            var sb = new StringBuilder();

            switch (Type)
            {
            case TarEntryType.Directory: sb.Append("d"); break;

            case TarEntryType.SymbolicLink: sb.Append("l"); break;

            case TarEntryType.Character: sb.Append("c"); break;

            case TarEntryType.Block: sb.Append("b"); break;

            default:
                sb.Append("-"); break;
            }
            sb.Append(PermissionToString());
            sb.Append(" ");
            sb.Append(string.Format("{0}:{1}", Uname, Gname));
            sb.Append(" ");
            sb.Append(string.Format("{0,10:D} {1} {2}", Size, Mtime.ToString(), Name));
            if (Type.HasFlag(TarEntryType.SymbolicLink))
            {
                sb.Append(string.Format(" -> {0}", LinkName));
            }
            return(sb.ToString());
        }
Esempio n. 2
0
 public override int GetHashCode()
 {
     unchecked
     {
         var hashCode = Czxid.GetHashCode();
         hashCode = (hashCode * 397) ^ Mzxid.GetHashCode();
         hashCode = (hashCode * 397) ^ Ctime.GetHashCode();
         hashCode = (hashCode * 397) ^ Mtime.GetHashCode();
         hashCode = (hashCode * 397) ^ Version;
         hashCode = (hashCode * 397) ^ Cversion;
         hashCode = (hashCode * 397) ^ Aversion;
         hashCode = (hashCode * 397) ^ EphemeralOwner.GetHashCode();
         hashCode = (hashCode * 397) ^ DataLength;
         hashCode = (hashCode * 397) ^ NumChildren;
         hashCode = (hashCode * 397) ^ Pzxid.GetHashCode();
         return(hashCode);
     }
 }