internal static TransferEventArgs Read(CustomLogReader areader) { TransferEventArgs args = new TransferEventArgs(); using (ElementLogReader reader = new ElementLogReader(areader)) { while (reader.Read(0)) { string value; if (reader.GetEmptyElementValue("filename", out value)) { args.FileName = value; } else if (reader.GetEmptyElementValue("destination", out value)) { args.Destination = value; } else if (SessionRemoteException.IsResult(reader)) { args.Error = SessionRemoteException.ReadResult(reader); } } } return(args); }
internal static ChmodEventArgs Read(CustomLogReader areader) { ChmodEventArgs args = new ChmodEventArgs(); using (ElementLogReader reader = new ElementLogReader(areader)) { while (reader.Read(0)) { if (reader.GetEmptyElementValue("filename", out string value)) { args.FileName = value; } else if (reader.GetEmptyElementValue("permissions", out value)) { args.FilePermissions = FilePermissions.CreateReadOnlyFromText(value); } else if (SessionRemoteException.IsResult(reader)) { args.Error = SessionRemoteException.ReadResult(reader); } } } return(args); }
internal static TouchEventArgs Read(CustomLogReader areader) { TouchEventArgs args = new TouchEventArgs(); using (ElementLogReader reader = new ElementLogReader(areader)) { while (reader.Read(0)) { string value; if (reader.GetEmptyElementValue("filename", out value)) { args.FileName = value; } else if (reader.GetEmptyElementValue("modification", out value)) { args.LastWriteTime = XmlConvert.ToDateTime(value, XmlDateTimeSerializationMode.Local); } else if (SessionRemoteException.IsResult(reader)) { args.Error = SessionRemoteException.ReadResult(reader); } } } return(args); }
internal static TransferEventArgs Read(ProgressSide side, CustomLogReader areader) { TransferEventArgs args = new TransferEventArgs() { Side = side }; using (ElementLogReader reader = new ElementLogReader(areader)) { while (reader.Read(0)) { if (reader.GetEmptyElementValue("filename", out string value)) { args.FileName = value; } else if (reader.GetEmptyElementValue("destination", out value)) { args.Destination = value; } else if (reader.GetEmptyElementValue("size", out value)) { args.Length = long.Parse(value, CultureInfo.InvariantCulture); } else if (SessionRemoteException.IsResult(reader)) { args.Error = SessionRemoteException.ReadResult(reader); } } } return(args); }