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"?> <?xml version="1.0" encoding="utf-8"?>
<configuration> <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> <system.diagnostics>
<sources> <sources>
<source name="System.ServiceModel" switchValue="Information,ActivityTracing" propagateActivity="true"> <source name="System.ServiceModel" switchValue="Information,ActivityTracing" propagateActivity="true">
@ -82,4 +61,7 @@
</dependentAssembly> </dependentAssembly>
</assemblyBinding> </assemblyBinding>
</runtime> </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.IO
Imports System.ServiceModel Imports System.ServiceModel
Imports System.Data.SqlClient Imports System.Data.SqlClient
Imports DigitalData.Services.EDMIService.Results
<ServiceBehavior(InstanceContextMode:=InstanceContextMode.PerSession)> <ServiceBehavior(InstanceContextMode:=InstanceContextMode.PerSession)>
Public Class EDMIService Public Class EDMIService
@ -21,10 +22,8 @@ Public Class EDMIService
Private ReadOnly _logger As Logger Private ReadOnly _logger As Logger
Private _request As Request = Nothing Private ReadOnly _debug As Boolean = False
Private _debug As Boolean = False Private ReadOnly _username As String
Private _username As String
Public Sub New() Public Sub New()
Dim oOperationContext As OperationContext = OperationContext.Current Dim oOperationContext As OperationContext = OperationContext.Current
@ -73,7 +72,6 @@ Public Class EDMIService
Return New TableResult(oResult) Return New TableResult(oResult)
Catch ex As Exception Catch ex As Exception
_logger.Error(ex) _logger.Error(ex)
_request.LogError(ex.Message)
Return New TableResult(ex.Message) Return New TableResult(ex.Message)
End Try End Try
End Function End Function
@ -85,7 +83,6 @@ Public Class EDMIService
Return New ScalarResult(oResult) Return New ScalarResult(oResult)
Catch ex As Exception Catch ex As Exception
_logger.Error(ex) _logger.Error(ex)
_request.LogError(ex.Message)
Return New ScalarResult(ex.Message) Return New ScalarResult(ex.Message)
End Try End Try
End Function End Function
@ -97,7 +94,6 @@ Public Class EDMIService
Return New NonQueryResult() Return New NonQueryResult()
Catch ex As Exception Catch ex As Exception
_logger.Error(ex) _logger.Error(ex)
_request.LogError(ex.Message)
Return New NonQueryResult(ex.Message) Return New NonQueryResult(ex.Message)
End Try End Try
End Function End Function
@ -111,7 +107,6 @@ Public Class EDMIService
Return New TableResult(oResult) Return New TableResult(oResult)
Catch ex As Exception Catch ex As Exception
_logger.Error(ex) _logger.Error(ex)
_request.LogError(ex.Message)
Return New TableResult(ex.Message) Return New TableResult(ex.Message)
End Try End Try
End Function End Function
@ -123,7 +118,6 @@ Public Class EDMIService
Return New ScalarResult(oResult) Return New ScalarResult(oResult)
Catch ex As Exception Catch ex As Exception
_logger.Error(ex) _logger.Error(ex)
_request.LogError(ex.Message)
Return New ScalarResult(ex.Message) Return New ScalarResult(ex.Message)
End Try End Try
End Function End Function
@ -135,7 +129,6 @@ Public Class EDMIService
Return New NonQueryResult() Return New NonQueryResult()
Catch ex As Exception Catch ex As Exception
_logger.Error(ex) _logger.Error(ex)
_request.LogError(ex.Message)
Return New NonQueryResult(ex.Message) Return New NonQueryResult(ex.Message)
End Try End Try
End Function End Function
@ -145,11 +138,10 @@ Public Class EDMIService
Public Function ReturnDatatable_Firebird(SQL As String) As TableResult Implements IEDMIService.ReturnDatatable_Firebird Public Function ReturnDatatable_Firebird(SQL As String) As TableResult Implements IEDMIService.ReturnDatatable_Firebird
Try Try
_logger.Info($"ReturnDatatable, SQL: {SQL}") _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) Return New TableResult(oResult)
Catch ex As Exception Catch ex As Exception
_logger.Error(ex) _logger.Error(ex)
_request.LogError(ex.Message)
Return New TableResult(ex.Message) Return New TableResult(ex.Message)
End Try End Try
End Function End Function
@ -157,11 +149,10 @@ Public Class EDMIService
Public Function ReturnScalar_Firebird(SQL As String) As ScalarResult Implements IEDMIService.ReturnScalar_Firebird Public Function ReturnScalar_Firebird(SQL As String) As ScalarResult Implements IEDMIService.ReturnScalar_Firebird
Try Try
_logger.Info($"ReturnScalar, SQL: {SQL}") _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) Return New ScalarResult(oResult)
Catch ex As Exception Catch ex As Exception
_logger.Error(ex) _logger.Error(ex)
_request.LogError(ex.Message)
Return New ScalarResult(ex.Message) Return New ScalarResult(ex.Message)
End Try End Try
End Function End Function
@ -169,11 +160,10 @@ Public Class EDMIService
Public Function ExecuteNonQuery_Firebird(SQL As String) As NonQueryResult Implements IEDMIService.ExecuteNonQuery_Firebird Public Function ExecuteNonQuery_Firebird(SQL As String) As NonQueryResult Implements IEDMIService.ExecuteNonQuery_Firebird
Try Try
_logger.Info($"ExecuteNonQuery, SQL: {SQL}") _logger.Info($"ExecuteNonQuery, SQL: {SQL}")
Dim oResult As Boolean = Firebird.ExecuteNonQueryWithConnection(SQL, _request.Connection) Dim oResult As Boolean = Firebird.ExecuteNonQuery(SQL)
Return New NonQueryResult() Return New NonQueryResult()
Catch ex As Exception Catch ex As Exception
_logger.Error(ex) _logger.Error(ex)
_request.LogError(ex.Message)
Return New NonQueryResult(ex.Message) Return New NonQueryResult(ex.Message)
End Try End Try
End Function End Function

View File

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

View File

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

View File

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

View File

@ -3,6 +3,8 @@ Imports System.Runtime.Serialization
Imports System.ServiceModel Imports System.ServiceModel
Namespace Messages Namespace Messages
#Region "DocumentImport"
<MessageContract> <MessageContract>
Public Class DocumentImportRequest Public Class DocumentImportRequest
<MessageBodyMember> <MessageBodyMember>
@ -22,7 +24,9 @@ Namespace Messages
<MessageBodyMember> <MessageBodyMember>
Public ObjectId As Long Public ObjectId As Long
End Class End Class
#End Region
#Region "DocumentStream"
<MessageContract> <MessageContract>
Public Class DocumentStreamRequest Public Class DocumentStreamRequest
<MessageBodyMember> <MessageBodyMember>
@ -37,13 +41,16 @@ Namespace Messages
<MessageBodyMember(Order:=1)> <MessageBodyMember(Order:=1)>
Public FileContents As Stream Public FileContents As Stream
End Class End Class
#End Region
#Region "DocumentList"
<MessageContract> <MessageContract>
<KnownType(GetType(DBNull))> <KnownType(GetType(DBNull))>
Public Class DocumentListResponse Public Class DocumentListResponse
<MessageBodyMember> <MessageBodyMember>
Public Datatable As DataTable Public Datatable As DataTable
End Class End Class
#End Region
End Namespace 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 Imports System.Runtime.Serialization
<Serializable> Namespace Results
<DataContract> <Serializable>
<KnownType(GetType(DBNull))> <DataContract>
Public MustInherit Class BaseResult <KnownType(GetType(DBNull))>
<DataMember> Public MustInherit Class BaseResult
Public Property OK As Boolean <DataMember>
<DataMember> Public Property OK As Boolean
Public Property ErrorMessage As String <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 Imports System.Runtime.Serialization
<Serializable> Namespace Results
<DataContract>
<KnownType(GetType(DBNull))>
Public Class TableResult
Inherits BaseResult
<DataMember> <Serializable>
Public Property Table As DataTable <DataContract>
<KnownType(GetType(DBNull))>
Public Class TableResult
Inherits BaseResult
Public Sub New(Table As DataTable) <DataMember>
MyBase.New() Public Property Table As DataTable
Me.Table = Table
End Sub
Public Sub New(ErrorMessage As String) Public Sub New(Table As DataTable)
MyBase.New(ErrorMessage) MyBase.New()
End Sub Me.Table = Table
End Class End Sub
<Serializable> Public Sub New(ErrorMessage As String)
<DataContract> MyBase.New(ErrorMessage)
<KnownType(GetType(DBNull))> End Sub
Public Class ScalarResult End Class
Inherits BaseResult
<DataMember> <Serializable>
Public Property Scalar As Object <DataContract>
<KnownType(GetType(DBNull))>
Public Class ScalarResult
Inherits BaseResult
Public Sub New(Scalar As Object) <DataMember>
MyBase.New() Public Property Scalar As Object
Me.Scalar = Scalar
End Sub
Public Sub New(ErrorMessage As String) Public Sub New(Scalar As Object)
MyBase.New(ErrorMessage) MyBase.New()
End Sub Me.Scalar = Scalar
End Class End Sub
<Serializable> Public Sub New(ErrorMessage As String)
<DataContract> MyBase.New(ErrorMessage)
<KnownType(GetType(DBNull))> End Sub
Public Class NonQueryResult End Class
Inherits BaseResult
Public Sub New() <Serializable>
MyBase.New() <DataContract>
End Sub <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