Commit aa2e380745e21486d5ac26ba79aff8e05153f6dd

Authored by Schwirg László
1 parent 5df5f3e5

v1.15.0

WebApplication/SendUrl xml elem megvalósítása
Vrh.Log4Pro.MaintenanceConsole/ConsoleFunction - Tools - Http.cs
@@ -23,21 +23,19 @@ using Vrh.Log4Pro.MaintenanceConsole.CommandLineParserNS; @@ -23,21 +23,19 @@ using Vrh.Log4Pro.MaintenanceConsole.CommandLineParserNS;
23 using System.Net.Http; 23 using System.Net.Http;
24 using System.Net.Http.Headers; 24 using System.Net.Http.Headers;
25 using System.Collections.Generic; 25 using System.Collections.Generic;
26 -using System.Text.Json;  
27 -using System.Text.Json.Serialization;  
28 - 26 +using Newtonsoft.Json;
29 27
30 namespace Vrh.Log4Pro.MaintenanceConsole.ToolsNS 28 namespace Vrh.Log4Pro.MaintenanceConsole.ToolsNS
31 { 29 {
32 public static class HttpTools 30 public static class HttpTools
33 { 31 {
34 public enum RequestType { GET,POST,} 32 public enum RequestType { GET,POST,}
35 - public static ReturnInfoJSON GetReturninfoJSON(string url, RequestType mode = RequestType.GET) 33 + public static ReturnInfoJSON GetReturninfoJSON(string url, RequestType mode = RequestType.GET, List<Vrh.XmlProcessing.UrlElement.UrlParameter> dictparameterlist=null)
36 { 34 {
37 string returninfojsonstring = ""; 35 string returninfojsonstring = "";
38 try 36 try
39 { 37 {
40 - return mode == RequestType.GET? _GetReturninfoJSON(url,out returninfojsonstring) : _PostReturninfoJSON(url, out returninfojsonstring); 38 + return mode == RequestType.GET? _GetReturninfoJSON(url,out returninfojsonstring) : _PostReturninfoJSON(url, out returninfojsonstring, dictparameterlist);
41 } 39 }
42 catch (Exception ex) { return new ReturnInfoJSON() { ReturnValue = -1, ReturnMessage = ex.Message + "\n" + returninfojsonstring, }; } 40 catch (Exception ex) { return new ReturnInfoJSON() { ReturnValue = -1, ReturnMessage = ex.Message + "\n" + returninfojsonstring, }; }
43 } 41 }
@@ -46,16 +44,18 @@ namespace Vrh.Log4Pro.MaintenanceConsole.ToolsNS @@ -46,16 +44,18 @@ namespace Vrh.Log4Pro.MaintenanceConsole.ToolsNS
46 { 44 {
47 var returninfojsonstream = Task.Run(async () => await (new HttpClient()).GetStreamAsync(url)).GetAwaiter().GetResult(); 45 var returninfojsonstream = Task.Run(async () => await (new HttpClient()).GetStreamAsync(url)).GetAwaiter().GetResult();
48 returninfojsonstring = GetStreamAsString(returninfojsonstream); 46 returninfojsonstring = GetStreamAsString(returninfojsonstream);
49 - ReturnInfoJSON returninfojson = JsonSerializer.Deserialize<ReturnInfoJSON>(returninfojsonstring); 47 + ReturnInfoJSON returninfojson = (ReturnInfoJSON)JsonConvert.DeserializeObject(returninfojsonstring,typeof(ReturnInfoJSON));
50 //ReturnInfoJSON returninfojson = Task.Run(async () => await JsonSerializer.DeserializeAsync<ReturnInfoJSON>(returninfojsonstream)).GetAwaiter().GetResult(); 48 //ReturnInfoJSON returninfojson = Task.Run(async () => await JsonSerializer.DeserializeAsync<ReturnInfoJSON>(returninfojsonstream)).GetAwaiter().GetResult();
51 return returninfojson; 49 return returninfojson;
52 } 50 }
53 - private static ReturnInfoJSON _PostReturninfoJSON(string url, out string returninfojsonstring) 51 + private static ReturnInfoJSON _PostReturninfoJSON(string url, out string returninfojsonstring, List<Vrh.XmlProcessing.UrlElement.UrlParameter> dictparameterlist = null)
54 { 52 {
55 - var returninfojsonhttpresponsemessage = Task.Run(async () => await (new HttpClient()).PostAsync(url, null)).GetAwaiter().GetResult(); 53 + var jsonstring = JsonConvert.SerializeObject(dictparameterlist.Where(p => p.PassTo == Vrh.XmlProcessing.UrlElement.ParameterTypes.dict));
  54 + HttpContent requestcontent = new StringContent(jsonstring);
  55 + var returninfojsonhttpresponsemessage = Task.Run(async () => await (new HttpClient()).PostAsync(url, requestcontent)).GetAwaiter().GetResult();
56 var returninfojsonstream = Task.Run(async () => await returninfojsonhttpresponsemessage.Content.ReadAsStreamAsync()).GetAwaiter().GetResult(); 56 var returninfojsonstream = Task.Run(async () => await returninfojsonhttpresponsemessage.Content.ReadAsStreamAsync()).GetAwaiter().GetResult();
57 returninfojsonstring = GetStreamAsString(returninfojsonstream); 57 returninfojsonstring = GetStreamAsString(returninfojsonstream);
58 - ReturnInfoJSON returninfojson = JsonSerializer.Deserialize<ReturnInfoJSON>(returninfojsonstring); 58 + ReturnInfoJSON returninfojson = (ReturnInfoJSON)JsonConvert.DeserializeObject(returninfojsonstring, typeof(ReturnInfoJSON));
59 //var returninfojson = Task.Run(async () => await JsonSerializer.DeserializeAsync<ReturnInfoJSON>(returninfojsonstream)).GetAwaiter().GetResult(); 59 //var returninfojson = Task.Run(async () => await JsonSerializer.DeserializeAsync<ReturnInfoJSON>(returninfojsonstream)).GetAwaiter().GetResult();
60 return returninfojson; 60 return returninfojson;
61 } 61 }
@@ -72,10 +72,8 @@ namespace Vrh.Log4Pro.MaintenanceConsole.ToolsNS @@ -72,10 +72,8 @@ namespace Vrh.Log4Pro.MaintenanceConsole.ToolsNS
72 } 72 }
73 public class ReturnInfoJSON 73 public class ReturnInfoJSON
74 { 74 {
75 - [JsonPropertyName("ReturnValue")]  
76 public int ReturnValue { get; set; } 75 public int ReturnValue { get; set; }
77 76
78 - [JsonPropertyName("ReturnMessage")]  
79 public string ReturnMessage { get; set; } 77 public string ReturnMessage { get; set; }
80 } 78 }
81 } 79 }
Vrh.Log4Pro.MaintenanceConsole/Manager - WebApplicationManager.cs
@@ -88,23 +88,65 @@ namespace Vrh.Log4Pro.MaintenanceConsole.WebApplicationManagerNS @@ -88,23 +88,65 @@ namespace Vrh.Log4Pro.MaintenanceConsole.WebApplicationManagerNS
88 var config = (parameters as Menu.ExecutorParameter).GetConfig<WebApplicationManagerXmlProcessor>(); 88 var config = (parameters as Menu.ExecutorParameter).GetConfig<WebApplicationManagerXmlProcessor>();
89 var args = (parameters as Menu.ExecutorParameter).Args; 89 var args = (parameters as Menu.ExecutorParameter).Args;
90 var selectedwaindexes = CommandLine.GetCommandLineArgument(args, CLP.Module.WebApplicationManager.Function.CMD_WEBAPPS); 90 var selectedwaindexes = CommandLine.GetCommandLineArgument(args, CLP.Module.WebApplicationManager.Function.CMD_WEBAPPS);
  91 + var menuwapps = DisplayWebApplicationMenu(config, "Select the web application(s) to manage!", silent: true);
  92 + menuwapps.SetSelectionMode(Menu.SelectionMode.Single);
  93 + Menu.Selection sr = menuwapps.Select(selectedwaindexes);
91 94
92 - const string TESTURL = "http://localhost/Log4ProIS/Import/Log/PurgeGet?numofdays=120&xml=config=ALM_Import;"; 95 + if (sr.Result == Menu.SelectionResult.Exit) { return o; }
  96 + else if (sr.Result == Menu.SelectionResult.None) { return o; }
  97 + else if (sr.Result == Menu.SelectionResult.Error) { return o; }
  98 + else if (sr.Result == Menu.SelectionResult.Ok) { }
  99 + else { }
  100 +
  101 + WebApplication selectedwebapplication = (sr.SelectedParameterList.First()).Parameters as WebApplication;
  102 + var therearepredefinedurls = selectedwebapplication.Xml_SendUrlList != null && selectedwebapplication.Xml_SendUrlList.Any();
  103 + string urlname;
  104 + List<string> sendurlnamelist=null;
  105 + if (therearepredefinedurls)
  106 + {
  107 + ColorConsole.WriteLine("Enter the name of the url to send, or * to enter url manually:", ConsoleColor.Yellow);
  108 + sendurlnamelist = selectedwebapplication.Xml_SendUrlList.Select(su => su.Name).ToList();
  109 + string sendurlnamecommalist = string.Join(",", sendurlnamelist);
  110 + ColorConsole.WriteLine("Select names from this list:", ConsoleColor.Gray, suffix: sendurlnamecommalist);
  111 + foreach (var su in selectedwebapplication.Xml_SendUrlList)
  112 + {
  113 + ColorConsole.WriteLine(su.UrlElement.GetUrlAbsolute(), ConsoleColor.Gray, prefix: $" {su.Name}: ");
  114 + }
  115 + urlname = ColorConsole.ReadLine();
  116 + }
  117 + else { urlname = "*"; }
  118 + if (urlname.ToLower() == "ex") return o;
  119 + string urltext;
  120 + HttpTools.RequestType gp;
  121 + List<Vrh.XmlProcessing.UrlElement.UrlParameter> uplist=null;
  122 + if (urlname.ToLower() == "*")
  123 + {
  124 + const string TESTURL = "http://localhost/Log4ProIS/Import/Log/PurgeGet?numofdays=120&xml=config=ALM_Import;";
  125 + ColorConsole.WriteLine("Enter url to send:", ConsoleColor.Yellow);
  126 + ColorConsole.WriteLine("Sample (Enter 'Sample' to use this):", ConsoleColor.Gray, suffix: TESTURL);
  127 + urltext = ColorConsole.ReadLine();
  128 + if (urltext.ToLower() == "ex") return o;
  129 + if (urltext.ToLower() == "sample") urltext = TESTURL;
  130 + ColorConsole.WriteLine("Enter request type (GET/POST):", ConsoleColor.Yellow);
  131 + string gpstr = ColorConsole.ReadLine();
  132 + gp = HttpTools.RequestType.GET;
  133 + if (gpstr.ToLower() == "ex") return o;
  134 + else if (gpstr.ToUpper() == nameof(HttpTools.RequestType.GET)) { gp = HttpTools.RequestType.GET; }
  135 + else if (gpstr.ToUpper() == nameof(HttpTools.RequestType.POST)) { gp = HttpTools.RequestType.POST; }
93 136
94 - ColorConsole.WriteLine("Enter url to send:", ConsoleColor.Yellow);  
95 - ColorConsole.WriteLine("Sample (Enter 'Sample' to use this):", ConsoleColor.Gray, suffix: TESTURL);  
96 - string url = ColorConsole.ReadLine();  
97 - if (url.ToLower() == "ex") return o;  
98 - if (url.ToLower() == "sample") url = TESTURL;  
99 - ColorConsole.WriteLine("Enter request type (GET/POST):", ConsoleColor.Yellow);  
100 - string gpstr = ColorConsole.ReadLine();  
101 - HttpTools.RequestType gp = HttpTools.RequestType.GET;  
102 - if (gpstr.ToLower() == "ex") return o;  
103 - else if (gpstr.ToUpper() == nameof(HttpTools.RequestType.GET)) { gp = HttpTools.RequestType.GET; }  
104 - else if (gpstr.ToUpper() == nameof(HttpTools.RequestType.POST)) { gp = HttpTools.RequestType.POST; } 137 + }
  138 + else if (sendurlnamelist!=null && !sendurlnamelist.Contains(urlname)) { ColorConsole.WriteLine("Invalid selection!", ConsoleColor.Red); return o; }
  139 + else
  140 + {
  141 + var sendurlobject = selectedwebapplication.Xml_SendUrlList.FirstOrDefault(u => u.Name == urlname);
  142 + var urlobject = sendurlobject.UrlElement;
  143 + urltext = urlobject.GetUrl();
  144 + uplist = urlobject.UrlParameters.Where(p => p.PassTo == Vrh.XmlProcessing.UrlElement.ParameterTypes.dict).ToList();
  145 + gp = sendurlobject.ForcePOST || uplist.Any() ? HttpTools.RequestType.POST : HttpTools.RequestType.GET;
  146 + }
105 147
106 - ToolsNS.HttpTools.ReturnInfoJSON returninfojson = HttpTools.GetReturninfoJSON(url,gp);  
107 - ColorConsole.WriteLine("ReturnValue:",ConsoleColor.Yellow,suffix: returninfojson.ReturnValue.ToString()); 148 + ToolsNS.HttpTools.ReturnInfoJSON returninfojson = HttpTools.GetReturninfoJSON(urltext, gp);
  149 + ColorConsole.WriteLine("ReturnValue:", ConsoleColor.Yellow, suffix: returninfojson.ReturnValue.ToString());
108 ColorConsole.WriteLine("ReturnMessage:", ConsoleColor.Yellow, suffix: returninfojson.ReturnMessage); 150 ColorConsole.WriteLine("ReturnMessage:", ConsoleColor.Yellow, suffix: returninfojson.ReturnMessage);
109 ColorConsole.WriteLine(); 151 ColorConsole.WriteLine();
110 152
@@ -748,30 +790,6 @@ namespace Vrh.Log4Pro.MaintenanceConsole.WebApplicationManagerNS @@ -748,30 +790,6 @@ namespace Vrh.Log4Pro.MaintenanceConsole.WebApplicationManagerNS
748 } 790 }
749 #endregion private method:SetImpersonateIdentity 791 #endregion private method:SetImpersonateIdentity
750 #region private method:SetPoolUserAccount 792 #region private method:SetPoolUserAccount
751 - //public static void SetPoolUserAccountOLD(string appname, string sitename, string username, string password, ProcessModelIdentityType poolidentitytype)  
752 - //{  
753 - // using (var sm = new ServerManager())  
754 - // {  
755 - // //var pool = GetPool(GetPoolName(sitename, appname));  
756 - // var pool = GetPool(sm, sitename, appname);  
757 - // if (username == nameof(ProcessModelIdentityType.ApplicationPoolIdentity)  
758 - // || username == nameof(ProcessModelIdentityType.LocalService)  
759 - // || username == nameof(ProcessModelIdentityType.LocalSystem)  
760 - // || username == nameof(ProcessModelIdentityType.NetworkService))  
761 - // {  
762 - // pool.ProcessModel.UserName = null;  
763 - // pool.ProcessModel.Password = null;  
764 - // pool.ProcessModel.IdentityType = (ProcessModelIdentityType)Enum.Parse(typeof(ProcessModelIdentityType), username);  
765 - // }  
766 - // else // if (ProcessModelIdentityType.SpecificUser)  
767 - // {  
768 - // pool.ProcessModel.UserName = username;  
769 - // pool.ProcessModel.Password = password;  
770 - // pool.ProcessModel.IdentityType = ProcessModelIdentityType.SpecificUser;  
771 - // }  
772 - // CommitChanges(sm, pool.Name);  
773 - // }  
774 - //}  
775 public static void SetPoolUserAccount(string appname, string sitename, string username, string password, ProcessModelIdentityType poolidentitytype) 793 public static void SetPoolUserAccount(string appname, string sitename, string username, string password, ProcessModelIdentityType poolidentitytype)
776 { 794 {
777 using (var sm = new ServerManager()) 795 using (var sm = new ServerManager())
@@ -1141,6 +1159,7 @@ namespace Vrh.Log4Pro.MaintenanceConsole.WebApplicationManagerNS @@ -1141,6 +1159,7 @@ namespace Vrh.Log4Pro.MaintenanceConsole.WebApplicationManagerNS
1141 public bool Xml_ForceRemovePool; 1159 public bool Xml_ForceRemovePool;
1142 public bool Xml_ForceRemoveSite; 1160 public bool Xml_ForceRemoveSite;
1143 public List<VirtualDirectory> Xml_VirtualDirectoryList; 1161 public List<VirtualDirectory> Xml_VirtualDirectoryList;
  1162 + public List<SendUrl> Xml_SendUrlList;
1144 #endregion properties from Xml definition 1163 #endregion properties from Xml definition
1145 1164
1146 #region properties from environment 1165 #region properties from environment
@@ -1203,10 +1222,17 @@ namespace Vrh.Log4Pro.MaintenanceConsole.WebApplicationManagerNS @@ -1203,10 +1222,17 @@ namespace Vrh.Log4Pro.MaintenanceConsole.WebApplicationManagerNS
1203 var vddefinitionXmlList = GetAllXElements(webappXml, nameof(XmlStructure.WebApplication.VirtualDirectory)); 1222 var vddefinitionXmlList = GetAllXElements(webappXml, nameof(XmlStructure.WebApplication.VirtualDirectory));
1204 if (vddefinitionXmlList != null && vddefinitionXmlList.Any()) 1223 if (vddefinitionXmlList != null && vddefinitionXmlList.Any())
1205 { 1224 {
1206 - foreach (var vddefinitionXml in vddefinitionXmlList)  
1207 - {  
1208 - Xml_VirtualDirectoryList.Add(new VirtualDirectory(vddefinitionXml));  
1209 - } 1225 + foreach (var vddefinitionXml in vddefinitionXmlList) { Xml_VirtualDirectoryList.Add(new VirtualDirectory(vddefinitionXml)); }
  1226 + }
  1227 + }
  1228 + catch { }
  1229 + Xml_SendUrlList = new List<SendUrl>();
  1230 + try
  1231 + {
  1232 + var sendurldefinitionXmlList = GetAllXElements(webappXml, nameof(XmlStructure.WebApplication.SendUrl));
  1233 + if (sendurldefinitionXmlList != null && sendurldefinitionXmlList.Any())
  1234 + {
  1235 + foreach (var sendurldefinitionXml in sendurldefinitionXmlList) { Xml_SendUrlList.Add(new SendUrl(sendurldefinitionXml)); }
1210 } 1236 }
1211 } 1237 }
1212 catch { } 1238 catch { }
@@ -1230,6 +1256,7 @@ namespace Vrh.Log4Pro.MaintenanceConsole.WebApplicationManagerNS @@ -1230,6 +1256,7 @@ namespace Vrh.Log4Pro.MaintenanceConsole.WebApplicationManagerNS
1230 Xml_ForceRemovePool = wadef.Xml_ForceRemovePool; 1256 Xml_ForceRemovePool = wadef.Xml_ForceRemovePool;
1231 Xml_ForceRemoveSite = wadef.Xml_ForceRemoveSite; 1257 Xml_ForceRemoveSite = wadef.Xml_ForceRemoveSite;
1232 Xml_VirtualDirectoryList = wadef.Xml_VirtualDirectoryList.Select(x => new VirtualDirectory(x)).ToList(); 1258 Xml_VirtualDirectoryList = wadef.Xml_VirtualDirectoryList.Select(x => new VirtualDirectory(x)).ToList();
  1259 + Xml_SendUrlList = wadef.Xml_SendUrlList.Select(x => new SendUrl(x)).ToList();
1233 1260
1234 Xml_ImpersonateIdentityConfigFile = wadef.Xml_ImpersonateIdentityConfigFile; 1261 Xml_ImpersonateIdentityConfigFile = wadef.Xml_ImpersonateIdentityConfigFile;
1235 Xml_ImpersonateIdentity = wadef.Xml_ImpersonateIdentity; 1262 Xml_ImpersonateIdentity = wadef.Xml_ImpersonateIdentity;
@@ -1249,6 +1276,64 @@ namespace Vrh.Log4Pro.MaintenanceConsole.WebApplicationManagerNS @@ -1249,6 +1276,64 @@ namespace Vrh.Log4Pro.MaintenanceConsole.WebApplicationManagerNS
1249 PhysicalPath = GetValue(nameof(XmlStructure.WebApplication.VirtualDirectory.Attributes.PhysicalPath), vdxml, ""); 1276 PhysicalPath = GetValue(nameof(XmlStructure.WebApplication.VirtualDirectory.Attributes.PhysicalPath), vdxml, "");
1250 } 1277 }
1251 } 1278 }
  1279 + public class SendUrl : XmlLinqBase
  1280 + {
  1281 + public Vrh.XmlProcessing.UrlElement UrlElement;
  1282 + public bool ForcePOST = false;
  1283 + public string Name;
  1284 + public bool IsOK
  1285 + {
  1286 + get
  1287 + {
  1288 + if (string.IsNullOrWhiteSpace(Name)) return false;
  1289 + if (!string.IsNullOrWhiteSpace(UrlElement.Url)) return true;
  1290 + if (string.IsNullOrWhiteSpace(UrlElement.Area) || string.IsNullOrWhiteSpace(UrlElement.Controller) || string.IsNullOrWhiteSpace(UrlElement.Action)) return false;
  1291 + if (UrlElement.UrlParameters!=null && UrlElement.UrlParameters.Any())
  1292 + {
  1293 + foreach (var urlparameter in UrlElement.UrlParameters)
  1294 + {
  1295 + if (string.IsNullOrWhiteSpace(urlparameter.Name)) { return false; }
  1296 + if (urlparameter.PassTo != Vrh.XmlProcessing.UrlElement.ParameterTypes.url && urlparameter.PassTo != Vrh.XmlProcessing.UrlElement.ParameterTypes.dict) { return false; }
  1297 + }
  1298 + }
  1299 + return true;
  1300 + }
  1301 + }
  1302 + public SendUrl(SendUrl sendurl)
  1303 + {
  1304 + Name = sendurl.Name;
  1305 + ForcePOST = sendurl.ForcePOST;
  1306 + UrlElement = new UrlElement(sendurl.UrlElement);
  1307 + }
  1308 + public SendUrl(XElement sendurlxmlelement)
  1309 + {
  1310 + Name = GetValue(nameof(XmlStructure.WebApplication.SendUrl.Attributes.Name), sendurlxmlelement, "");
  1311 + ForcePOST = GetValue(nameof(XmlStructure.WebApplication.SendUrl.Attributes.ForcePost), sendurlxmlelement, XmlStructure.WebApplication.SendUrl.Attributes.ForcePost.Values.DEFAULT);
  1312 + UrlElement = new Vrh.XmlProcessing.UrlElement();
  1313 + UrlElement.Url = GetValue(sendurlxmlelement, "");
  1314 + UrlElement.Protocol = GetValue(nameof(XmlStructure.WebApplication.SendUrl.Attributes.protocol), sendurlxmlelement, "");
  1315 + UrlElement.HostName = GetValue(nameof(XmlStructure.WebApplication.SendUrl.Attributes.hostname), sendurlxmlelement, "");
  1316 + UrlElement.AppName = GetValue(nameof(XmlStructure.WebApplication.SendUrl.Attributes.appname), sendurlxmlelement, "");
  1317 + UrlElement.Area = GetValue(nameof(XmlStructure.WebApplication.SendUrl.Attributes.area), sendurlxmlelement, "");
  1318 + UrlElement.Controller = GetValue(nameof(XmlStructure.WebApplication.SendUrl.Attributes.controller), sendurlxmlelement, "");
  1319 + UrlElement.Action = GetValue(nameof(XmlStructure.WebApplication.SendUrl.Attributes.action), sendurlxmlelement, "");
  1320 + UrlElement.Fragment = GetValue(nameof(XmlStructure.WebApplication.SendUrl.Attributes.fragment), sendurlxmlelement, "");
  1321 + UrlElement.UrlParameters = new List<UrlElement.UrlParameter>();
  1322 + var urlparameterxmllist = sendurlxmlelement.Elements(nameof(XmlStructure.WebApplication.SendUrl.Parameter));
  1323 + if (urlparameterxmllist != null)
  1324 + {
  1325 + foreach (var urlparameterxml in urlparameterxmllist)
  1326 + {
  1327 + UrlElement.UrlParameters.Add(new UrlElement.UrlParameter()
  1328 + {
  1329 + Name = GetValue(nameof(XmlStructure.WebApplication.SendUrl.Parameter.Attributes.Name), urlparameterxml, ""),
  1330 + PassTo = GetValue(nameof(XmlStructure.WebApplication.SendUrl.Parameter.Attributes.PassTo), urlparameterxml, Vrh.XmlProcessing.UrlElement.ParameterTypes.url),
  1331 + Value = GetValue(urlparameterxml, ""),
  1332 + });
  1333 + }
  1334 + }
  1335 + }
  1336 + }
1252 1337
1253 #region XmlStructure 1338 #region XmlStructure
1254 public static class XmlStructure 1339 public static class XmlStructure
@@ -1285,6 +1370,29 @@ namespace Vrh.Log4Pro.MaintenanceConsole.WebApplicationManagerNS @@ -1285,6 +1370,29 @@ namespace Vrh.Log4Pro.MaintenanceConsole.WebApplicationManagerNS
1285 public static class PhysicalPath {} 1370 public static class PhysicalPath {}
1286 } 1371 }
1287 } 1372 }
  1373 + public static class SendUrl
  1374 + {
  1375 + public static class Attributes
  1376 + {
  1377 + public static class Name { }
  1378 + public static class ForcePost { public static class Values { public static bool DEFAULT = false; } }
  1379 + public static class protocol { }
  1380 + public static class hostname { }
  1381 + public static class appname { }
  1382 + public static class area { }
  1383 + public static class controller { }
  1384 + public static class action { }
  1385 + public static class fragment { }
  1386 + }
  1387 + public static class Parameter
  1388 + {
  1389 + public static class Attributes
  1390 + {
  1391 + public static class PassTo { }
  1392 + public static class Name { }
  1393 + }
  1394 + }
  1395 + }
1288 } 1396 }
1289 } 1397 }
1290 #endregion XmlStructure 1398 #endregion XmlStructure
Vrh.Log4Pro.MaintenanceConsole/Properties/AssemblyInfo.cs
@@ -32,5 +32,5 @@ using System.Runtime.InteropServices; @@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
32 // You can specify all the values or you can default the Build and Revision Numbers 32 // You can specify all the values or you can default the Build and Revision Numbers
33 // by using the '*' as shown below: 33 // by using the '*' as shown below:
34 // [assembly: AssemblyVersion("1.0.*")] 34 // [assembly: AssemblyVersion("1.0.*")]
35 -[assembly: AssemblyVersion("1.14.0.0")]  
36 -[assembly: AssemblyFileVersion("1.14.0.0")] 35 +[assembly: AssemblyVersion("1.15.0.0")]
  36 +[assembly: AssemblyFileVersion("1.15.0.0")]
Vrh.Log4Pro.MaintenanceConsole/Vrh.Log4Pro.MaintenanceConsole.csproj
@@ -353,8 +353,8 @@ @@ -353,8 +353,8 @@
353 <Reference Include="Vrh.Web.Providers, Version=2.0.2.0, Culture=neutral, processorArchitecture=MSIL"> 353 <Reference Include="Vrh.Web.Providers, Version=2.0.2.0, Culture=neutral, processorArchitecture=MSIL">
354 <HintPath>..\packages\VRH.Web.Providers.2.0.2\lib\net452\Vrh.Web.Providers.dll</HintPath> 354 <HintPath>..\packages\VRH.Web.Providers.2.0.2\lib\net452\Vrh.Web.Providers.dll</HintPath>
355 </Reference> 355 </Reference>
356 - <Reference Include="Vrh.XmlProcessing, Version=1.30.0.0, Culture=neutral, processorArchitecture=MSIL">  
357 - <HintPath>..\packages\Vrh.XmlProcessing.1.30.0\lib\net45\Vrh.XmlProcessing.dll</HintPath> 356 + <Reference Include="Vrh.XmlProcessing, Version=1.30.1.0, Culture=neutral, processorArchitecture=MSIL">
  357 + <HintPath>..\packages\Vrh.XmlProcessing.1.30.1\lib\net45\Vrh.XmlProcessing.dll</HintPath>
358 </Reference> 358 </Reference>
359 <Reference Include="WindowsBase" /> 359 <Reference Include="WindowsBase" />
360 </ItemGroup> 360 </ItemGroup>
Vrh.Log4Pro.MaintenanceConsole/packages.config
@@ -75,5 +75,5 @@ @@ -75,5 +75,5 @@
75 <package id="System.Xml.XDocument" version="4.0.11" targetFramework="net472" /> 75 <package id="System.Xml.XDocument" version="4.0.11" targetFramework="net472" />
76 <package id="VRH.Common" version="2.23.1" targetFramework="net472" /> 76 <package id="VRH.Common" version="2.23.1" targetFramework="net472" />
77 <package id="VRH.Web.Providers" version="2.0.2" targetFramework="net472" /> 77 <package id="VRH.Web.Providers" version="2.0.2" targetFramework="net472" />
78 - <package id="Vrh.XmlProcessing" version="1.30.0" targetFramework="net472" /> 78 + <package id="Vrh.XmlProcessing" version="1.30.1" targetFramework="net472" />
79 </packages> 79 </packages>
80 \ No newline at end of file 80 \ No newline at end of file