public static Data.Operation Load(string source) { Operate op = null; var bf = new BinaryFormatter(); using (FileStream fs = new FileStream(source, FileMode.Open, FileAccess.Read)) { op = bf.Deserialize(fs) as Operate; } var newop = new Data.Operation(op.Index, op.RewindArray); foreach (var dest in op.DestArray) { newop.Data.AddDestination(dest.LinkKey, new Bright.Data.Destination(dest.LinkKey, dest.Dest)); } foreach (var elem in op.ElementArray) { var ne = new Bright.Data.GroupingElement(elem.Source) { DistributionMode = elem.DistributionMode }; foreach (var dpath in elem.Dest) { ne.Destinations.Add(new Bright.Data.GroupingElement.DestData(dpath)); } newop.Data.AddElement(ne); } return(newop); }
public static void Save(Data.Operation oper, string dest) { var dat = new Operate(); dat.Index = oper.Index; dat.RewindArray = oper.GetRewindStack(); List <Operate.DestData> dd = new List <Operate.DestData>(); foreach (var d in oper.Data.GetDestinationsKeys()) { dd.Add(new Operate.DestData() { LinkKey = d, Dest = oper.Data.GetDestination(d).DestPath }); } dat.DestArray = dd.ToArray(); List <Operate.Element> el = new List <Operate.Element>(); foreach (var e in oper.Data.GetElementsArray()) { var ds = from ar in e.Destinations select ar.Destination; el.Add(new Operate.Element() { Dest = ds.ToArray <string>(), Source = e.ImageSourcePath, DistributionMode = e.DistributionMode }); } dat.ElementArray = el.ToArray(); var bf = new BinaryFormatter(); using (FileStream fs = new FileStream(dest, FileMode.Create, FileAccess.ReadWrite)) { bf.Serialize(fs, dat); } }
public async Task Test_Calculate_Subtraction_1() { Data.Operation operation = new Data.Operation() { NumberA = 98, NumberB = 2, OperationType = Data.OperationType.Subtraction }; var result = await _valueRepo.CalCulater(operation); Assert.Equal(96, result); }
public async Task Test_Calculate_Add() { Data.Operation operation = new Data.Operation() { NumberA = 1, NumberB = 2, OperationType = Data.OperationType.Addition }; var result = await _valueRepo.CalCulater(operation); Assert.Equal(3, result); }
public static Data.Operation Load(string source) { Operate op = null; var bf = new BinaryFormatter(); using (FileStream fs = new FileStream(source, FileMode.Open, FileAccess.Read)) { op = bf.Deserialize(fs) as Operate; } var newop = new Data.Operation(op.Index, op.RewindArray); foreach (var dest in op.DestArray) { newop.Data.AddDestination(dest.LinkKey, new Bright.Data.Destination(dest.LinkKey, dest.Dest)); } foreach (var elem in op.ElementArray) { var ne = new Bright.Data.GroupingElement(elem.Source) { DistributionMode = elem.DistributionMode }; foreach (var dpath in elem.Dest) ne.Destinations.Add(new Bright.Data.GroupingElement.DestData(dpath)); newop.Data.AddElement(ne); } return newop; }
public Data.Operation GetOperationData() { Core.Config.StateConfig.PrevSetupData = GetSetupData(); var op = new Data.Operation(); var dirs = targetList.Items.Cast <string>(); List <string> extents = new List <string>(); foreach (var ext in Subsystem.ImageReader.Instance.GetSusieAcceptExt()) { if (ext.Contains('.')) { extents.Add(ext.Split('.')[1].ToUpper()); } else { extents.Add(ext.ToUpper()); } } foreach (var ext in Subsystem.ImageReader.Instance.GetSystemAcceptExt()) { if (ext.Contains('.')) { extents.Add(ext.Split('.')[1].ToUpper()); } else { extents.Add(ext.ToUpper()); } } for (int i = 0; i < targetList.Items.Count; i++) { var dir = targetList.Items[i] as string; try { foreach (var f in targetList.CheckedIndices.Contains(i)? K.Snippets.Files.GetAllFiles(dir): Directory.GetFiles(dir)) { var ext = Path.GetExtension(f); if (String.IsNullOrEmpty(ext)) { continue; } ext = ext.ToUpper().Substring(1); if (extents.Contains(ext)) { op.Data.AddElement(f); } } } catch (UnauthorizedAccessException uae) { MessageBox.Show( "ディレクトリ " + dir + "へのアクセスが拒否されたため、振り分けリストに追加できませんでした。" + Environment.NewLine + uae.Message, "アクセスエラー", MessageBoxButtons.OK, MessageBoxIcon.Hand); } } List <Keys> empties = new List <Keys>(); foreach (var k in destinations.Keys) { if (String.IsNullOrEmpty(destinations[k])) { empties.Add(k); } } foreach (var k in empties) { destinations.Remove(k); } if (op.Data.ElementsLength == 0) { return(null); } op.Data.SetDestinations(destinations, false); return(op); }