martes, 16 de diciembre de 2008

Negocio.Core.Factory.vb

Namespace Negocio

  Public Class Factory

    Public Shared Function Crear(Of T As {New, Dal.ILoader})(ByVal th As TransactionHelper) As T
      Dim __O As T = New T
      __O.ConnectionProvider = th.ConnectionProvider
      __O.transactionProvider = th.TransactionProvider
      Return __O
    End Function

    Public Shared Function Crear(Of T As {New, Dal.ILoader})(ByVal cp As Dal.ConnectionProviderDelegate, ByVal tp As Dal.TransactionProviderDelegate) As T
      Dim __O As T = New T
      __O.ConnectionProvider = cp
      __O.transactionProvider = tp
      Return __O
    End Function

    Public Shared Function Crear(Of T As {New, Dal.ILoader})(ByVal cp As Dal.ConnectionProviderDelegate) As T
      Dim __O As T = New T
      __O.ConnectionProvider = cp
      Return __O
    End Function

    Public Shared Function Crear(Of T As {New, Dal.ILoader})(ByVal servidor As String, ByVal baseDeDatos As String, ByVal usuario As String, ByVal password As String) As T
      Return Crear(Of T)(New TransactionHelper(Dal.DataServer.GetNewConection(servidor, baseDeDatos, usuario, password)).ConnectionProvider)
    End Function

    Public Function this() As Factory
      Return Me
    End Function

  End Class

End Namespace

No hay comentarios: