EDMIService: clean up

This commit is contained in:
Jonathan Jenne 2020-12-04 16:32:52 +01:00
parent 62be9dc666
commit 96c4ce1abc
9 changed files with 91 additions and 143 deletions

View File

@ -1,26 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<appSettings>
<!-- FIREBIRD SETTINGS -->
<add key="FIREBIRD_DATASOURCE" value="" />
<add key="FIREBIRD_DATABASE_NAME" value="" />
<add key="FIREBIRD_DATABASE_USER" value="" />
<add key="FIREBIRD_DATABASE_PASS" value="" />
<!-- END FIREBIRD SETTINGS -->
<!-- MSSQL SETTINGS -->
<add key="MSSQ_CONNECTION_STRING" value="" />
<!-- END MSSQL SETTINGS -->
<!-- DATASTORE SETTINGS -->
<add key="DATASTORE_PATH" value="" />
<!-- END DATASTORE SETTINGS -->
<!-- CONTAINER SETTINGS -->
<add key="CONTAINER_PATH" value="" />
<add key="CONTAINER_PASSWORD" value="" />
<!-- END CONTAINER SETTINGS -->
</appSettings>
<system.diagnostics>
<sources>
<source name="System.ServiceModel" switchValue="Information,ActivityTracing" propagateActivity="true">
@ -82,4 +61,7 @@
</dependentAssembly>
</assemblyBinding>
</runtime>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" /></startup></configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
</startup>
</configuration>

View File

@ -5,6 +5,7 @@ Imports DigitalData.Modules
Imports System.IO
Imports System.ServiceModel
Imports System.Data.SqlClient
Imports DigitalData.Services.EDMIService.Results
<ServiceBehavior(InstanceContextMode:=InstanceContextMode.PerSession)>
Public Class EDMIService
@ -21,10 +22,8 @@ Public Class EDMIService
Private ReadOnly _logger As Logger
Private _request As Request = Nothing
Private _debug As Boolean = False
Private _username As String
Private ReadOnly _debug As Boolean = False
Private ReadOnly _username As String
Public Sub New()
Dim oOperationContext As OperationContext = OperationContext.Current
@ -73,7 +72,6 @@ Public Class EDMIService
Return New TableResult(oResult)
Catch ex As Exception
_logger.Error(ex)
_request.LogError(ex.Message)
Return New TableResult(ex.Message)
End Try
End Function
@ -85,7 +83,6 @@ Public Class EDMIService
Return New ScalarResult(oResult)
Catch ex As Exception
_logger.Error(ex)
_request.LogError(ex.Message)
Return New ScalarResult(ex.Message)
End Try
End Function
@ -97,7 +94,6 @@ Public Class EDMIService
Return New NonQueryResult()
Catch ex As Exception
_logger.Error(ex)
_request.LogError(ex.Message)
Return New NonQueryResult(ex.Message)
End Try
End Function
@ -111,7 +107,6 @@ Public Class EDMIService
Return New TableResult(oResult)
Catch ex As Exception
_logger.Error(ex)
_request.LogError(ex.Message)
Return New TableResult(ex.Message)
End Try
End Function
@ -123,7 +118,6 @@ Public Class EDMIService
Return New ScalarResult(oResult)
Catch ex As Exception
_logger.Error(ex)
_request.LogError(ex.Message)
Return New ScalarResult(ex.Message)
End Try
End Function
@ -135,7 +129,6 @@ Public Class EDMIService
Return New NonQueryResult()
Catch ex As Exception
_logger.Error(ex)
_request.LogError(ex.Message)
Return New NonQueryResult(ex.Message)
End Try
End Function
@ -145,11 +138,10 @@ Public Class EDMIService
Public Function ReturnDatatable_Firebird(SQL As String) As TableResult Implements IEDMIService.ReturnDatatable_Firebird
Try
_logger.Info($"ReturnDatatable, SQL: {SQL}")
Dim oResult As DataTable = Firebird.GetDatatableWithConnection(SQL, _request.Connection)
Dim oResult As DataTable = Firebird.GetDatatable(SQL)
Return New TableResult(oResult)
Catch ex As Exception
_logger.Error(ex)
_request.LogError(ex.Message)
Return New TableResult(ex.Message)
End Try
End Function
@ -157,11 +149,10 @@ Public Class EDMIService
Public Function ReturnScalar_Firebird(SQL As String) As ScalarResult Implements IEDMIService.ReturnScalar_Firebird
Try
_logger.Info($"ReturnScalar, SQL: {SQL}")
Dim oResult As Object = Firebird.GetScalarValueWithConnection(SQL, _request.Connection)
Dim oResult As Object = Firebird.GetScalarValue(SQL)
Return New ScalarResult(oResult)
Catch ex As Exception
_logger.Error(ex)
_request.LogError(ex.Message)
Return New ScalarResult(ex.Message)
End Try
End Function
@ -169,11 +160,10 @@ Public Class EDMIService
Public Function ExecuteNonQuery_Firebird(SQL As String) As NonQueryResult Implements IEDMIService.ExecuteNonQuery_Firebird
Try
_logger.Info($"ExecuteNonQuery, SQL: {SQL}")
Dim oResult As Boolean = Firebird.ExecuteNonQueryWithConnection(SQL, _request.Connection)
Dim oResult As Boolean = Firebird.ExecuteNonQuery(SQL)
Return New NonQueryResult()
Catch ex As Exception
_logger.Error(ex)
_request.LogError(ex.Message)
Return New NonQueryResult(ex.Message)
End Try
End Function

View File

@ -130,7 +130,6 @@
<Compile Include="ProjectInstaller.vb">
<SubType>Component</SubType>
</Compile>
<Compile Include="Request.vb" />
<Compile Include="SettingsModule.vb" />
</ItemGroup>
<ItemGroup>

View File

@ -2,9 +2,10 @@
Imports DigitalData.Modules.Logging
Public Class GlobalState
Private _LogConfig As LogConfig
Private _Logger As Logger
Private _MSSQL As MSSQLServer
Private ReadOnly _LogConfig As LogConfig
Private ReadOnly _Logger As Logger
Private ReadOnly _MSSQL As MSSQLServer
Public Property ObjectStores As New List(Of ObjectStore)
Public Sub New(LogConfig As LogConfig, MSSQL_IDB As MSSQLServer)
@ -21,6 +22,8 @@ Public Class GlobalState
ObjectStores.Clear()
_Logger.Debug("Found {0} Object Stores", oDatatable.Rows)
For Each oRow As DataRow In oDatatable.Rows
Dim oStore As New ObjectStore() With {
.Id = oRow.Item("OST_ID"),
@ -38,7 +41,7 @@ Public Class GlobalState
End Sub
Class ObjectStore
Public Id As Int64
Public Id As Long
Public Title As String
Public IsArchive As Boolean
Public Path As String

View File

@ -1,6 +1,7 @@
Imports System.IO
Imports System.ServiceModel
Imports DigitalData.Modules.Filesystem
Imports DigitalData.Services.EDMIService.Results
<ServiceContract(Name:="IEDMIService", [Namespace]:="http://DigitalData.Services.EDMIService")>
Interface IEDMIService

View File

@ -3,6 +3,8 @@ Imports System.Runtime.Serialization
Imports System.ServiceModel
Namespace Messages
#Region "DocumentImport"
<MessageContract>
Public Class DocumentImportRequest
<MessageBodyMember>
@ -22,7 +24,9 @@ Namespace Messages
<MessageBodyMember>
Public ObjectId As Long
End Class
#End Region
#Region "DocumentStream"
<MessageContract>
Public Class DocumentStreamRequest
<MessageBodyMember>
@ -37,13 +41,16 @@ Namespace Messages
<MessageBodyMember(Order:=1)>
Public FileContents As Stream
End Class
#End Region
#Region "DocumentList"
<MessageContract>
<KnownType(GetType(DBNull))>
Public Class DocumentListResponse
<MessageBodyMember>
Public Datatable As DataTable
End Class
#End Region
End Namespace

View File

@ -1,42 +0,0 @@
Imports DigitalData.Modules.Database
Imports FirebirdSql.Data.FirebirdClient
''' <summary>
''' TODO: BRAUCHEN WIR DAS ÜBERHAUPT?
''' </summary>
Public Class Request
Public Name As String
Public Username As String
Public RequestId As String
Public Connection As FbConnection
Public Database As Firebird
Public Debug As Boolean
Public Sub New(Name As String, Username As String, Database As Firebird, Debug As Boolean)
Me.Username = Username
Me.Name = Name
Me.RequestId = Guid.NewGuid().ToString()
Me.Connection = Database.GetConnection()
Me.Database = Database
Me.Debug = Debug
'Dim oSql = $"INSERT INTO TBEDM_REQUEST_USER (REQUEST_GUID, USER_NAME) VALUES ('{RequestId}', '{Username}')"
'Database.ExecuteNonQueryWithConnection(oSql, Connection)
End Sub
Public Sub LogDebug(Message As String)
'If Debug Then
' Dim oSqlCommand = $"INSERT INTO TBEDM_REQUEST_LOG (REQUEST_GUID, LOG_MSG, DEBUG) VALUES ('{RequestId}','{Message}', True)"
' Database.ExecuteNonQueryWithConnection(oSqlCommand, Connection)
'End If
End Sub
Public Sub LogError(Message As String)
'Dim oSqlCommand = $"INSERT INTO TBEDM_REQUEST_LOG (REQUEST_GUID, LOG_MSG, ERROR) VALUES ('{RequestId}','{Message}', True)"
'Database.ExecuteNonQueryWithConnection(oSqlCommand, Connection)
End Sub
Public Overrides Function ToString() As String
Return $"<Name={Name},RequestId={RequestId}>"
End Function
End Class

View File

@ -1,20 +1,24 @@
Imports System.Runtime.Serialization
<Serializable>
<DataContract>
<KnownType(GetType(DBNull))>
Public MustInherit Class BaseResult
<DataMember>
Public Property OK As Boolean
<DataMember>
Public Property ErrorMessage As String
Namespace Results
<Serializable>
<DataContract>
<KnownType(GetType(DBNull))>
Public MustInherit Class BaseResult
<DataMember>
Public Property OK As Boolean
<DataMember>
Public Property ErrorMessage As String
Public Sub New()
OK = True
End Sub
Public Sub New(ErrorMessage As String)
OK = False
Me.ErrorMessage = ErrorMessage
End Sub
End Class
End Namespace
Public Sub New()
OK = True
End Sub
Public Sub New(ErrorMessage As String)
OK = False
Me.ErrorMessage = ErrorMessage
End Sub
End Class

View File

@ -1,56 +1,60 @@
Imports System.Runtime.Serialization
<Serializable>
<DataContract>
<KnownType(GetType(DBNull))>
Public Class TableResult
Inherits BaseResult
Namespace Results
<DataMember>
Public Property Table As DataTable
<Serializable>
<DataContract>
<KnownType(GetType(DBNull))>
Public Class TableResult
Inherits BaseResult
Public Sub New(Table As DataTable)
MyBase.New()
Me.Table = Table
End Sub
<DataMember>
Public Property Table As DataTable
Public Sub New(ErrorMessage As String)
MyBase.New(ErrorMessage)
End Sub
End Class
Public Sub New(Table As DataTable)
MyBase.New()
Me.Table = Table
End Sub
<Serializable>
<DataContract>
<KnownType(GetType(DBNull))>
Public Class ScalarResult
Inherits BaseResult
Public Sub New(ErrorMessage As String)
MyBase.New(ErrorMessage)
End Sub
End Class
<DataMember>
Public Property Scalar As Object
<Serializable>
<DataContract>
<KnownType(GetType(DBNull))>
Public Class ScalarResult
Inherits BaseResult
Public Sub New(Scalar As Object)
MyBase.New()
Me.Scalar = Scalar
End Sub
<DataMember>
Public Property Scalar As Object
Public Sub New(ErrorMessage As String)
MyBase.New(ErrorMessage)
End Sub
End Class
Public Sub New(Scalar As Object)
MyBase.New()
Me.Scalar = Scalar
End Sub
<Serializable>
<DataContract>
<KnownType(GetType(DBNull))>
Public Class NonQueryResult
Inherits BaseResult
Public Sub New(ErrorMessage As String)
MyBase.New(ErrorMessage)
End Sub
End Class
Public Sub New()
MyBase.New()
End Sub
<Serializable>
<DataContract>
<KnownType(GetType(DBNull))>
Public Class NonQueryResult
Inherits BaseResult
Public Sub New()
MyBase.New()
End Sub
Public Sub New(ErrorMessage As String)
MyBase.New(ErrorMessage)
End Sub
End Class
End Namespace
Public Sub New(ErrorMessage As String)
MyBase.New(ErrorMessage)
End Sub
End Class