// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. // See the LICENSE file in the project root for more information. /* TODO ERROR: Skipped IfDirectiveTrivia #If TARGET = "module" AndAlso _MYTYPE = "" Then *//* TODO ERROR: Skipped DisabledTextTrivia #Const _MYTYPE="Empty" *//* TODO ERROR: Skipped EndIfDirectiveTrivia #End If */ /* TODO ERROR: Skipped IfDirectiveTrivia #If _MYTYPE = "WindowsForms" Then *//* TODO ERROR: Skipped DisabledTextTrivia #Const _MYFORMS = True #Const _MYWEBSERVICES = True #Const _MYUSERTYPE = "Windows" #Const _MYCOMPUTERTYPE = "Windows" #Const _MYAPPLICATIONTYPE = "WindowsForms" *//* TODO ERROR: Skipped ElifDirectiveTrivia #ElseIf _MYTYPE = "WindowsFormsWithCustomSubMain" Then *//* TODO ERROR: Skipped DisabledTextTrivia #Const _MYFORMS = True #Const _MYWEBSERVICES = True #Const _MYUSERTYPE = "Windows" #Const _MYCOMPUTERTYPE = "Windows" #Const _MYAPPLICATIONTYPE = "Console" *//* TODO ERROR: Skipped ElifDirectiveTrivia #ElseIf _MYTYPE = "Windows" OrElse _MYTYPE = "" Then *//* TODO ERROR: Skipped DisabledTextTrivia #Const _MYWEBSERVICES = True #Const _MYUSERTYPE = "Windows" #Const _MYCOMPUTERTYPE = "Windows" #Const _MYAPPLICATIONTYPE = "Windows" *//* TODO ERROR: Skipped ElifDirectiveTrivia #ElseIf _MYTYPE = "Console" Then *//* TODO ERROR: Skipped DisabledTextTrivia #Const _MYWEBSERVICES = True #Const _MYUSERTYPE = "Windows" #Const _MYCOMPUTERTYPE = "Windows" #Const _MYAPPLICATIONTYPE = "Console" *//* TODO ERROR: Skipped ElifDirectiveTrivia #ElseIf _MYTYPE = "Web" Then *//* TODO ERROR: Skipped DisabledTextTrivia #Const _MYFORMS = False #Const _MYWEBSERVICES = False #Const _MYUSERTYPE = "Web" #Const _MYCOMPUTERTYPE = "Web" *//* TODO ERROR: Skipped ElifDirectiveTrivia #ElseIf _MYTYPE = "WebControl" Then *//* TODO ERROR: Skipped DisabledTextTrivia #Const _MYFORMS = False #Const _MYWEBSERVICES = True #Const _MYUSERTYPE = "Web" #Const _MYCOMPUTERTYPE = "Web" *//* TODO ERROR: Skipped ElifDirectiveTrivia #ElseIf _MYTYPE = "Custom" Then *//* TODO ERROR: Skipped DisabledTextTrivia *//* TODO ERROR: Skipped ElifDirectiveTrivia #ElseIf _MYTYPE <> "Empty" Then *//* TODO ERROR: Skipped DisabledTextTrivia #Const _MYTYPE = "Empty" *//* TODO ERROR: Skipped EndIfDirectiveTrivia #End If */ /* TODO ERROR: Skipped IfDirectiveTrivia #If _MYTYPE <> "Empty" Then *//* TODO ERROR: Skipped DisabledTextTrivia Namespace MergedMyNamespace50E26D7D27174AAEABCA70DEBD52E2FA #If _MYAPPLICATIONTYPE = "WindowsForms" OrElse _MYAPPLICATIONTYPE = "Windows" OrElse _MYAPPLICATIONTYPE = "Console" Then _ Partial Friend Class MyApplication #If _MYAPPLICATIONTYPE = "WindowsForms" Then Inherits Global.Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase #If TARGET = "winexe" Then _ Friend Shared Sub Main(ByVal Args As String()) Try Global.System.Windows.Forms.Application.SetCompatibleTextRenderingDefault(MyApplication.UseCompatibleTextRendering()) Finally End Try My.Application.Run(Args) End Sub #End If #ElseIf _MYAPPLICATIONTYPE = "Windows" Then Inherits Global.Microsoft.VisualBasic.ApplicationServices.ApplicationBase #ElseIf _MYAPPLICATIONTYPE = "Console" Then Inherits Global.Microsoft.VisualBasic.ApplicationServices.ConsoleApplicationBase #End If '_MYAPPLICATIONTYPE = "WindowsForms" End Class #End If '#If _MYAPPLICATIONTYPE = "WindowsForms" Or _MYAPPLICATIONTYPE = "Windows" or _MYAPPLICATIONTYPE = "Console" #If _MYCOMPUTERTYPE <> "" Then _ Partial Friend Class MyComputer #If _MYCOMPUTERTYPE = "Windows" Then Inherits Global.Microsoft.VisualBasic.Devices.Computer #ElseIf _MYCOMPUTERTYPE = "Web" Then Inherits Global.Microsoft.VisualBasic.Devices.ServerComputer #End If _ _ Public Sub New() MyBase.New() End Sub End Class #End If _ _ Friend Module MyProject #If _MYCOMPUTERTYPE <> "" Then _ Friend ReadOnly Property Computer() As MyComputer _ Get Return m_ComputerObjectProvider.GetInstance() End Get End Property Private ReadOnly m_ComputerObjectProvider As New ThreadSafeObjectProvider(Of MyComputer) #End If #If _MYAPPLICATIONTYPE = "Windows" Or _MYAPPLICATIONTYPE = "WindowsForms" Or _MYAPPLICATIONTYPE = "Console" Then _ Friend ReadOnly Property Application() As MyApplication _ Get Return m_AppObjectProvider.GetInstance() End Get End Property Private ReadOnly m_AppObjectProvider As New ThreadSafeObjectProvider(Of MyApplication) #End If #If _MYUSERTYPE = "Windows" Then _ Friend ReadOnly Property User() As Global.Microsoft.VisualBasic.ApplicationServices.User _ Get Return m_UserObjectProvider.GetInstance() End Get End Property Private ReadOnly m_UserObjectProvider As New ThreadSafeObjectProvider(Of Global.Microsoft.VisualBasic.ApplicationServices.User) #ElseIf _MYUSERTYPE = "Web" Then _ Friend ReadOnly Property User() As Global.Microsoft.VisualBasic.ApplicationServices.WebUser _ Get Return m_UserObjectProvider.GetInstance() End Get End Property Private ReadOnly m_UserObjectProvider As New ThreadSafeObjectProvider(Of Global.Microsoft.VisualBasic.ApplicationServices.WebUser) #End If #If _MYFORMS = True Then #Const STARTUP_MY_FORM_FACTORY = "My.MyProject.Forms" _ Friend ReadOnly Property Forms() As MyForms _ Get Return m_MyFormsObjectProvider.GetInstance() End Get End Property _ _ Friend NotInheritable Class MyForms _ Private Shared Function Create__Instance__(Of T As {New, Global.System.Windows.Forms.Form})(ByVal Instance As T) As T If Instance Is Nothing OrElse Instance.IsDisposed Then If m_FormBeingCreated IsNot Nothing Then If m_FormBeingCreated.ContainsKey(GetType(T)) = True Then Throw New Global.System.InvalidOperationException(Global.Microsoft.VisualBasic.CompilerServices.Utils.GetResourceString("WinForms_RecursiveFormCreate")) End If Else m_FormBeingCreated = New Global.System.Collections.Hashtable() End If m_FormBeingCreated.Add(GetType(T), Nothing) Try Return New T() Catch ex As Global.System.Reflection.TargetInvocationException When ex.InnerException IsNot Nothing Dim BetterMessage As String = Global.Microsoft.VisualBasic.CompilerServices.Utils.GetResourceString("WinForms_SeeInnerException", ex.InnerException.Message) Throw New Global.System.InvalidOperationException(BetterMessage, ex.InnerException) Finally m_FormBeingCreated.Remove(GetType(T)) End Try Else Return Instance End If End Function _ Private Sub Dispose__Instance__(Of T As Global.System.Windows.Forms.Form)(ByRef instance As T) instance.Dispose() instance = Nothing End Sub _ _ Public Sub New() MyBase.New() End Sub Private Shared m_FormBeingCreated As Global.System.Collections.Hashtable Public Overrides Function Equals(ByVal o As Object) As Boolean Return MyBase.Equals(o) End Function Public Overrides Function GetHashCode() As Integer Return MyBase.GetHashCode End Function _ Friend Overloads Function [GetType]() As Global.System.Type Return GetType(MyForms) End Function Public Overrides Function ToString() As String Return MyBase.ToString End Function End Class Private m_MyFormsObjectProvider As New ThreadSafeObjectProvider(Of MyForms) #End If #If _MYWEBSERVICES = True Then _ Friend ReadOnly Property WebServices() As MyWebServices _ Get Return m_MyWebServicesObjectProvider.GetInstance() End Get End Property _ _ Friend NotInheritable Class MyWebServices _ Public Overrides Function Equals(ByVal o As Object) As Boolean Return MyBase.Equals(o) End Function _ Public Overrides Function GetHashCode() As Integer Return MyBase.GetHashCode End Function _ Friend Overloads Function [GetType]() As Global.System.Type Return GetType(MyWebServices) End Function _ Public Overrides Function ToString() As String Return MyBase.ToString End Function _ Private Shared Function Create__Instance__(Of T As {New})(ByVal instance As T) As T If instance Is Nothing Then Return New T() Else Return instance End If End Function _ Private Sub Dispose__Instance__(Of T)(ByRef instance As T) instance = Nothing End Sub _ _ Public Sub New() MyBase.New() End Sub End Class Private ReadOnly m_MyWebServicesObjectProvider As New ThreadSafeObjectProvider(Of MyWebServices) #End If #If _MYTYPE = "Web" Then _ Friend ReadOnly Property Request() As Global.System.Web.HttpRequest _ Get Dim CurrentContext As Global.System.Web.HttpContext = Global.System.Web.HttpContext.Current If CurrentContext IsNot Nothing Then Return CurrentContext.Request End If Return Nothing End Get End Property _ Friend ReadOnly Property Response() As Global.System.Web.HttpResponse _ Get Dim CurrentContext As Global.System.Web.HttpContext = Global.System.Web.HttpContext.Current If CurrentContext IsNot Nothing Then Return CurrentContext.Response End If Return Nothing End Get End Property _ Friend ReadOnly Property Log() As Global.Microsoft.VisualBasic.Logging.AspLog _ Get Return m_LogObjectProvider.GetInstance() End Get End Property Private ReadOnly m_LogObjectProvider As New ThreadSafeObjectProvider(Of Global.Microsoft.VisualBasic.Logging.AspLog) #End If '_MYTYPE="Web" _ _ Friend NotInheritable Class ThreadSafeObjectProvider(Of T As New) Friend ReadOnly Property GetInstance() As T #If TARGET = "library" Then _ Get Dim Value As T = m_Context.Value If Value Is Nothing Then Value = New T m_Context.Value() = Value End If Return Value End Get #Else _ Get If m_ThreadStaticValue Is Nothing Then m_ThreadStaticValue = New T Return m_ThreadStaticValue End Get #End If End Property _ _ Public Sub New() MyBase.New() End Sub #If TARGET = "library" Then Private ReadOnly m_Context As New Global.Microsoft.VisualBasic.MyServices.Internal.ContextValue(Of T) #Else Private Shared m_ThreadStaticValue As T #End If End Class End Module End Namespace *//* TODO ERROR: Skipped EndIfDirectiveTrivia #End If */