Skip to content

Commit 9be490e

Browse files
Update LibraryCreator.cs
1 parent a3139a9 commit 9be490e

File tree

1 file changed

+73
-5
lines changed

1 file changed

+73
-5
lines changed

class/LibraryCreator.cs

Lines changed: 73 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,8 @@ private string CreateAllAspxFiles()
104104
CodeBehindViews += " private string CallerViewDirectoryPath { get; set; } = \"\";" + Environment.NewLine;
105105
CodeBehindViews += " private bool FoundPage { get; set; } = true;" + Environment.NewLine;
106106
CodeBehindViews += " private bool FoundController { get; set; } = true;" + Environment.NewLine;
107-
CodeBehindViews += " private bool? IgnoreLayout { get; set; } = false;" + Environment.NewLine + Environment.NewLine;
107+
CodeBehindViews += " private bool? IgnoreLayout { get; set; } = false;" + Environment.NewLine;
108+
CodeBehindViews += " private string WebSocketId { get; set; } = \"\";" + Environment.NewLine + Environment.NewLine;
108109

109110
CodeBehindOptions options = new CodeBehindOptions();
110111

@@ -252,7 +253,7 @@ private string CreateAllAspxFiles()
252253
CodeBehindViews += " return SetPageLoadByFullPath(path, null, \"\");" + Environment.NewLine;
253254
CodeBehindViews += " }" + Environment.NewLine + Environment.NewLine;
254255

255-
CodeBehindViews += " public string RunController(HttpContext context, string ViewPath, object ModelClass, CodeBehind.HtmlData.NameValueCollection ViewData, string DownloadFilePath, bool? IgnoreLayout, string WebFormsValue)" + Environment.NewLine;
256+
CodeBehindViews += " public string RunController(HttpContext context, string ViewPath, object ModelClass, CodeBehind.HtmlData.NameValueCollection ViewData, string DownloadFilePath, bool? IgnoreLayout, string WebFormsValue, string? WebSocketId)" + Environment.NewLine;
256257
CodeBehindViews += " {" + Environment.NewLine;
257258
CodeBehindViews += " if (!string.IsNullOrEmpty(DownloadFilePath))" + Environment.NewLine;
258259
CodeBehindViews += " {" + Environment.NewLine;
@@ -266,6 +267,9 @@ private string CreateAllAspxFiles()
266267
CodeBehindViews += " if (string.IsNullOrEmpty(ViewPath))" + Environment.NewLine;
267268
CodeBehindViews += " return \"\";" + Environment.NewLine + Environment.NewLine;
268269

270+
CodeBehindViews += " if (WebSocketId != null)" + Environment.NewLine;
271+
CodeBehindViews += " this.WebSocketId = WebSocketId;" + Environment.NewLine + Environment.NewLine;
272+
269273
CodeBehindViews += " if (ViewPath[0] == '>')" + Environment.NewLine;
270274
CodeBehindViews += " {" + Environment.NewLine;
271275
CodeBehindViews += " string TmpViewPath = ViewPath;" + Environment.NewLine;
@@ -295,6 +299,16 @@ private string CreateAllAspxFiles()
295299
CodeBehindViews += " return FoundPage;" + Environment.NewLine;
296300
CodeBehindViews += " }" + Environment.NewLine + Environment.NewLine;
297301

302+
CodeBehindViews += " public void SetWebSocketId(string Id)" + Environment.NewLine;
303+
CodeBehindViews += " {" + Environment.NewLine;
304+
CodeBehindViews += " WebSocketId = Id;" + Environment.NewLine;
305+
CodeBehindViews += " }" + Environment.NewLine + Environment.NewLine;
306+
307+
CodeBehindViews += " public string GetWebSocketId()" + Environment.NewLine;
308+
CodeBehindViews += " {" + Environment.NewLine;
309+
CodeBehindViews += " return WebSocketId;" + Environment.NewLine;
310+
CodeBehindViews += " }" + Environment.NewLine + Environment.NewLine;
311+
298312
CodeBehindViews += " public bool ControllerHasFound()" + Environment.NewLine;
299313
CodeBehindViews += " {" + Environment.NewLine;
300314
CodeBehindViews += " return FoundController;" + Environment.NewLine;
@@ -310,6 +324,57 @@ private string CreateAllAspxFiles()
310324
CodeBehindViews += " WebFormsValue += Forms.GetFormsActionData();" + Environment.NewLine;
311325
CodeBehindViews += " }" + Environment.NewLine + Environment.NewLine;
312326

327+
CodeBehindViews += " // WebSockets Broadcast" + Environment.NewLine;
328+
CodeBehindViews += " public void Broadcast(HttpContext context, string Message, bool IgnoreThis = false)" + Environment.NewLine;
329+
CodeBehindViews += " {" + Environment.NewLine;
330+
CodeBehindViews += " CodeBehindMiddlewareExtensions.WebSocketsBroadcast(context, Message, \"\", \"\", \"\", IgnoreThis);" + Environment.NewLine;
331+
CodeBehindViews += " }" + Environment.NewLine + Environment.NewLine;
332+
333+
CodeBehindViews += " public async void BroadcastAsync(HttpContext context, string Message, bool IgnoreThis = false)" + Environment.NewLine;
334+
CodeBehindViews += " {" + Environment.NewLine;
335+
CodeBehindViews += " await CodeBehindMiddlewareExtensions.WebSocketsBroadcastAsync(context, Message, \"\", \"\", \"\", IgnoreThis);" + Environment.NewLine;
336+
CodeBehindViews += " }" + Environment.NewLine + Environment.NewLine;
337+
338+
CodeBehindViews += " public void Broadcast(HttpContext context, string Message, string RoleName, string Id, string ClientId, bool IgnoreThis = false)" + Environment.NewLine;
339+
CodeBehindViews += " {" + Environment.NewLine;
340+
CodeBehindViews += " CodeBehindMiddlewareExtensions.WebSocketsBroadcast(context, Message, RoleName, Id, ClientId, IgnoreThis);" + Environment.NewLine;
341+
CodeBehindViews += " }" + Environment.NewLine + Environment.NewLine;
342+
343+
CodeBehindViews += " public async void BroadcastAsync(HttpContext context, string Message, string RoleName, string Id, string ClientId, bool IgnoreThis = false)" + Environment.NewLine;
344+
CodeBehindViews += " {" + Environment.NewLine;
345+
CodeBehindViews += " await CodeBehindMiddlewareExtensions.WebSocketsBroadcastAsync(context, Message, RoleName, Id, ClientId, IgnoreThis);" + Environment.NewLine;
346+
CodeBehindViews += " }" + Environment.NewLine + Environment.NewLine;
347+
348+
CodeBehindViews += " public void BroadcastForRole(HttpContext context, string Message, string RoleName, bool IgnoreThis = false)" + Environment.NewLine;
349+
CodeBehindViews += " {" + Environment.NewLine;
350+
CodeBehindViews += " CodeBehindMiddlewareExtensions.WebSocketsBroadcast(context, Message, RoleName, \"\", \"\", IgnoreThis);" + Environment.NewLine;
351+
CodeBehindViews += " }" + Environment.NewLine + Environment.NewLine;
352+
353+
CodeBehindViews += " public async void BroadcastForRoleAsync(HttpContext context, string Message, string RoleName, bool IgnoreThis = false)" + Environment.NewLine;
354+
CodeBehindViews += " {" + Environment.NewLine;
355+
CodeBehindViews += " await CodeBehindMiddlewareExtensions.WebSocketsBroadcastAsync(context, Message, RoleName, \"\", \"\", IgnoreThis);" + Environment.NewLine;
356+
CodeBehindViews += " }" + Environment.NewLine + Environment.NewLine;
357+
358+
CodeBehindViews += " public void BroadcastForWebSocketId(HttpContext context, string Message, string Id, bool IgnoreThis = false)" + Environment.NewLine;
359+
CodeBehindViews += " {" + Environment.NewLine;
360+
CodeBehindViews += " CodeBehindMiddlewareExtensions.WebSocketsBroadcast(context, Message, \"\", Id, \"\", IgnoreThis);" + Environment.NewLine;
361+
CodeBehindViews += " }" + Environment.NewLine + Environment.NewLine;
362+
363+
CodeBehindViews += " public async void BroadcastForWebSocketIdAsync(HttpContext context, string Message, string Id, bool IgnoreThis = false)" + Environment.NewLine;
364+
CodeBehindViews += " {" + Environment.NewLine;
365+
CodeBehindViews += " await CodeBehindMiddlewareExtensions.WebSocketsBroadcastAsync(context, Message, \"\", Id, \"\", IgnoreThis);" + Environment.NewLine;
366+
CodeBehindViews += " }" + Environment.NewLine + Environment.NewLine;
367+
368+
CodeBehindViews += " public void BroadcastForClientId(HttpContext context, string Message, string ClientId, bool IgnoreThis = false)" + Environment.NewLine;
369+
CodeBehindViews += " {" + Environment.NewLine;
370+
CodeBehindViews += " CodeBehindMiddlewareExtensions.WebSocketsBroadcast(context, Message, \"\", \"\", ClientId, IgnoreThis);" + Environment.NewLine;
371+
CodeBehindViews += " }" + Environment.NewLine + Environment.NewLine;
372+
373+
CodeBehindViews += " public async void BroadcastForClientIdAsync(HttpContext context, string Message, string ClientId, bool IgnoreThis = false)" + Environment.NewLine;
374+
CodeBehindViews += " {" + Environment.NewLine;
375+
CodeBehindViews += " await CodeBehindMiddlewareExtensions.WebSocketsBroadcastAsync(context, Message, \"\", \"\", ClientId, IgnoreThis);" + Environment.NewLine;
376+
CodeBehindViews += " }" + Environment.NewLine + Environment.NewLine;
377+
313378
CodeBehindViews += " private void Download(HttpContext context, string FilePath)" + Environment.NewLine;
314379
CodeBehindViews += " {" + Environment.NewLine;
315380
CodeBehindViews += " long FileSize = new FileInfo(FilePath).Length;" + Environment.NewLine;
@@ -542,7 +607,10 @@ private string FillAssemblyControllerCase(Assembly assembly, string EntryAssembl
542607
ReturnValue += " " + NameSpace + TmpClass.Name + " " + ClassName + " = new " + NameSpace + TmpClass.Name + "();" + Environment.NewLine;
543608
ReturnValue += " " + ClassName + ".FillSection(context, \"/\" + ControllerClass);" + Environment.NewLine;
544609
ReturnValue += " " + ClassName + ".PageLoad(context);" + Environment.NewLine;
545-
ReturnValue += " this.WebFormsValue += " + ClassName + ".WebFormsValue;" + Environment.NewLine;
610+
ReturnValue += " this.WebFormsValue += " + ClassName + ".WebFormsValue;" + Environment.NewLine + Environment.NewLine;
611+
612+
ReturnValue += " if (" + ClassName + ".WebSocketId != null)" + Environment.NewLine;
613+
ReturnValue += " this.WebSocketId = " + ClassName + ".WebSocketId;" + Environment.NewLine;
546614

547615
ReturnValue += Environment.NewLine;
548616

@@ -559,7 +627,7 @@ private string FillAssemblyControllerCase(Assembly assembly, string EntryAssembl
559627
ReturnValue += " }" + Environment.NewLine;
560628
ReturnValue += " else" + Environment.NewLine;
561629
ReturnValue += " {" + Environment.NewLine;
562-
ReturnValue += " string ControllerReturnValue = " + ClassName + ".ResponseText + RunController(context, " + ClassName + ".ViewPath, " + ClassName + ".CodeBehindModel, " + ClassName + ".ViewData, " + ClassName + ".DownloadFilePath, " + ClassName + ".IgnoreLayout, " + ClassName + ".WebFormsValue);" + Environment.NewLine;
630+
ReturnValue += " string ControllerReturnValue = " + ClassName + ".ResponseText + RunController(context, " + ClassName + ".ViewPath, " + ClassName + ".CodeBehindModel, " + ClassName + ".ViewData, " + ClassName + ".DownloadFilePath, " + ClassName + ".IgnoreLayout, " + ClassName + ".WebFormsValue, " + ClassName + ".WebSocketId);" + Environment.NewLine;
563631
ReturnValue += " cache.SetControllerCache(\"" + TmpClass.Name + "\" + cbcc.CacheFilter, ControllerReturnValue, " + ControllerCache.Duration + ");" + Environment.NewLine;
564632
ReturnValue += " return ControllerReturnValue;" + Environment.NewLine;
565633
ReturnValue += " }" + Environment.NewLine;
@@ -570,7 +638,7 @@ private string FillAssemblyControllerCase(Assembly assembly, string EntryAssembl
570638
ReturnValue += " if (" + ClassName + ".IgnoreViewAndModel)" + Environment.NewLine;
571639
ReturnValue += " TmpViewPath = \"\";" + Environment.NewLine + Environment.NewLine;
572640

573-
ReturnValue += " return " + ClassName + ".ResponseText + RunController(context, TmpViewPath, " + ClassName + ".CodeBehindModel, " + ClassName + ".ViewData, " + ClassName + ".DownloadFilePath, " + ClassName + ".IgnoreLayout, " + ClassName + ".WebFormsValue);" + Environment.NewLine + Environment.NewLine;
641+
ReturnValue += " return " + ClassName + ".ResponseText + RunController(context, TmpViewPath, " + ClassName + ".CodeBehindModel, " + ClassName + ".ViewData, " + ClassName + ".DownloadFilePath, " + ClassName + ".IgnoreLayout, " + ClassName + ".WebFormsValue, " + ClassName + ".WebSocketId);" + Environment.NewLine + Environment.NewLine;
574642
}
575643

576644
ReturnValue += "/*{CaseCodeTemplateValueForControllerName}*/" + Environment.NewLine;

0 commit comments

Comments
 (0)