public static make MapCarMakeForCreate(CarMakeModel model) { var entity = new make(); MapCarMakeForEdit(model, entity); return(entity); }
public static CarMakeModel MapCarMakeForDisplay(make model) { return(new CarMakeModel { Id = model.id, Name = model.Name.Trim(), SortOrder = model.SortOrder ?? 0 }); }
private static MakeResource Map(make carMake) { return(new MakeResource { Id = carMake.id, Name = carMake.Name }); }
public static void MapCarMakeForEdit(CarMakeModel model, make entity) { entity.Name = model.Name.Trim(); entity.SortOrder = model.SortOrder; }
static public string target(string s, string su = "") { File.AppendAllText("logger", "\nTarget start - " + s); if (s == null || s == "") { return(""); } if (s.Contains("$") && targs.ContainsKey(s) == false) { string v = Expand(s); if (v != "") { s = v; } su = make.findVariables(s); } else { su = su.Trim(); if (targs.ContainsKey(s) == false) { bool istarget = false; if (su != "") { if (targs.ContainsKey(su)) { s = su; istarget = true; } else { s = su; } } { if (istarget == false) { string c = s.Replace("$(", "").Replace(")", "").Trim(); if (c.StartsWith("shell")) { Functions.Call(c); return(su); } //return su; } } } } File.AppendAllText("logger", "\nTarget reading - " + s); List <string> tt = new List <string>(); if (s.Contains(" ")) { string[] cs = s.Split(" ".ToCharArray()); foreach (string v in cs) { tt.Add(v); } tt = ConsoleApplication5.make.RemoveEmpty(tt); } else { tt.Add(s); } File.AppendAllText("logger", "\nTarget iterate"); foreach (string c in tt) { s = c; if (targs.ContainsKey(s) == false) { continue; } MakeFileLineProcessor.target target = targs[s]; List <string> r = target.Expand(); r = MakeFileLineProcessor.target.MergeFunctions(r); string u = target.prereq; string p = ExtractArray(u); //p = make.findVariables(p); List <string> files = new List <string>(); string[] cc = p.Replace("\r", "").Trim().Split("\t".ToCharArray()); cc = RemoveEmpty(cc); foreach (string b in cc) //if (b.Trim() != "") { // if (make.parser.targs.ContainsKey(b) == false) // if (b.Contains(".") == false) // continue; if (make.parser.targs.ContainsKey(b)) { string file = Functions.target(b); if (file.Trim() != "") { files.Add(file); } continue; } string name = Expand(b); if (File.Exists(name)) { if (File.Exists(b)) { } } //if (make.parser.targs.ContainsKey(b) == false) // continue; string[] bb = name.Split(" ".ToCharArray()); bb = RemoveEmpty(bb); foreach (string v in bb) { string vv = make.findVariables(v); if (make.parser.targs.ContainsKey(vv) == false) { string res = ""; string rs = GetImpliciteRule(make.parser.targs, vv, out res); if (rs.Trim() == "") { continue; } MakeFileLineProcessor.target tg = make.parser.targs[rs]; string rec = tg.recp[0]; string rule = rec.Replace("$@", vv); rule = make.findVariables(rule); rule = rule.Replace("$<", res); Functions.Call(rule); } else { string file = Functions.target(vv); if (file.Trim() != "") { files.Add(file); } } } if (make.parser.targs.ContainsKey(b) == false) { string res = ""; string rs = GetImpliciteRule(make.parser.targs, b, out res); if (rs.Trim() == "") { continue; } MakeFileLineProcessor.target tg = make.parser.targs[rs]; string rec = tg.recp[0]; string rule = rec.Replace("$@", b); rule = make.findVariables(rule); rule = rule.Replace("$<", res); Functions.Call(rule); } } if (r.Count > 1 || (r.Count == 1 && target.prereq != "")) { r.RemoveAt(0); } if (target.tar != null) { tarmake tar = target.tar; string v = tar.ToSource(); string [] m = v.Split("\n".ToCharArray()); m = RemoveEmpty(m); r.Clear(); foreach (string g in m) { if (g.StartsWith("ln") == false) { r.Add(g); } } string content = ""; foreach (string g in r) { content += "\n" + g; } r.Clear(); r.Add(content); } foreach (string d in r) { File.AppendAllText("logger", "\nRecipe reading - " + d); string name = target.name; if (name.Contains("$")) { name = make.findVariables(name); } if (d.Trim().StartsWith("$(MAKE)")) { string g = d.Trim().Replace("$(MAKE)", "").Trim(); g = make.findVariables(g); Functions.target(g); File.AppendAllText("logger", "\nCall - " + g); } else { if (d.Trim().StartsWith("$(if") || d.Trim().StartsWith("($(")) { make mk = new ConsoleApplication5.make(d); string cs = mk.ToSource(); Functions.Call(cs); } else if (d.Trim().StartsWith("$(") || d.Trim().StartsWith("($(")) { File.AppendAllText("logger", "\nTarget call - " + d); List <string> bb = MakeFileLineProcessor.target.MergeFunctions(d); List <string> dd = MakeFileLineProcessor.target.MergeFunctions(bb); make mk = new make(d); make.run = true; string g = d; if (g.Contains("$(@F)")) { g = g.Replace("$(@F)", name); } g = g.Replace("\\", ""); g = make.findVariables(g); if (g.Contains("$<")) { string[] dc = target.recp[0].Split(" ".ToCharArray()); dc = RemoveEmpty(dc); g = g.Replace("$<", make.findVariables(dc[0])); } if (g.Contains("$^")) { g = g.Replace("$^", make.findVariables(target.prereq)); } g = g.Replace("-DQUAD_PRECISION", ""); g = g.Trim().Replace("$@", name); g = g.Replace("\n", ""); Console.WriteLine(g); // if(g.Trim().StartsWith("gcc")) // g += " -UDOUBLE -UCOMPLEX -DDOUBLE -DCOMPLEX -DXDOUBLE -DXCOMPLEX -Wno-error"; Functions.Call(g); make.run = false; File.AppendAllText("logger", "\nCall - " + g); //Functions.Call(g); } else if (d.Trim().StartsWith("@")) { string g = d.Trim(); make.run = true; make.run = false; //string[] bc = d.Split("\n@".ToCharArray()); //foreach (string f in bc) { // g = f; g = g.Replace("$$", "$"); g = g.Replace("\\\\", "\\"); //g = g.Replace("\r", ""); //g = g.Replace("\n", ""); if (g.Contains("$(@F)")) { g = g.Replace("$(@F)", target.name); } g = g.Trim().Replace("$@", target.name); g = g.Trim().Replace("@-", ""); g = g.Trim().Replace("@", ""); g = make.findVariables(g); g = g.Replace("$$", "$"); Functions.Call(g); Console.WriteLine(g); File.AppendAllText("logger", "\nCall - " + g); } } else { string g = d.Replace("$$", "$"); if (g.Contains("$(@F)")) // { g = g.Replace("$(@F)", target.name); // } g = g.Trim().Replace("$@", target.name); g = g.Trim().Replace("@", ""); // g = g.Replace("\\", ""); g = make.substituteVariables(g, true); if (g.Contains("$^")) { string[] dc = target.recp[0].Split(" ".ToCharArray()); g = g.Replace("$<", target.prerequ); } g = g.Replace("\n", " "); //g = g.Replace("\\", ""); //g = g.Replace("/", "\\"); //g = g.Replace(" then ", "then echo ok; "); //g = g.Replace("exit 1", "then echo no; "); Console.WriteLine("Recipe " + g); if (g != "") { if (g.Contains("PKG") == false) { Functions.Call(g); } } File.AppendAllText("logger", "\nCall - " + g); } } } } return(""); }
- Puzzle building feedback (make base Tiling generation also report progress). Catch exceptions when doing this.