/// <exception cref="System.IO.IOException"/> public static CachePoolInfo ReadCachePoolInfo(DataInput @in) { string poolName = ReadString(@in); CachePoolInfo info = new CachePoolInfo(poolName); int flags = ReadInt(@in); if ((flags & unchecked ((int)(0x1))) != 0) { info.SetOwnerName(ReadString(@in)); } if ((flags & unchecked ((int)(0x2))) != 0) { info.SetGroupName(ReadString(@in)); } if ((flags & unchecked ((int)(0x4))) != 0) { info.SetMode(FsPermission.Read(@in)); } if ((flags & unchecked ((int)(0x8))) != 0) { info.SetLimit(ReadLong(@in)); } if ((flags & unchecked ((int)(0x10))) != 0) { info.SetMaxRelativeExpiryMs(ReadLong(@in)); } if ((flags & ~unchecked ((int)(0x1F))) != 0) { throw new IOException("Unknown flag in CachePoolInfo: " + flags); } return(info); }