diff --git a/Service.EDMIService/EDMIService.vb b/Service.EDMIService/EDMIService.vb
index cd4a0ba1..cca35d6b 100644
--- a/Service.EDMIService/EDMIService.vb
+++ b/Service.EDMIService/EDMIService.vb
@@ -77,6 +77,12 @@ Public Class EDMIService
Return oImportFile.Run(pData)
End Function
+ Public Function GetFileObject(pData As GetFileObject.GetFileObjectRequest) As GetFileObject.GetFileObjectResponse Implements IEDMIService.GetFileObject
+ _Logger.Debug("Start of Method [GetFileObject]")
+ Dim oGetFileObject As New GetFileObject.GetFileObjectMethod(LogConfig, MSSQL_IDB, GlobalState)
+ Return oGetFileObject.Run(pData)
+ End Function
+
#Region "=== Heartbeat ==="
Public Function Heartbeat() As Boolean Implements IEDMIService.Heartbeat
Return True
diff --git a/Service.EDMIService/EDMIService.vbproj b/Service.EDMIService/EDMIService.vbproj
index da72cb41..f5272e03 100644
--- a/Service.EDMIService/EDMIService.vbproj
+++ b/Service.EDMIService/EDMIService.vbproj
@@ -138,6 +138,10 @@
+
+
+
+
diff --git a/Service.EDMIService/IEDMIService.vb b/Service.EDMIService/IEDMIService.vb
index 717056d6..77976c41 100644
--- a/Service.EDMIService/IEDMIService.vb
+++ b/Service.EDMIService/IEDMIService.vb
@@ -72,6 +72,8 @@ Interface IEDMIService
Function ImportFile(Data As GlobalIndexer.ImportFile.ImportFileRequest) As GlobalIndexer.ImportFile.ImportFileResponse
+
+ Function GetFileObject(Data As GetFileObject.GetFileObjectRequest) As GetFileObject.GetFileObjectResponse
#End Region
#Region "Document (Old)"
diff --git a/Service.EDMIService/Methods/GetFileObject/FileObject.vb b/Service.EDMIService/Methods/GetFileObject/FileObject.vb
new file mode 100644
index 00000000..616adc7f
--- /dev/null
+++ b/Service.EDMIService/Methods/GetFileObject/FileObject.vb
@@ -0,0 +1,10 @@
+Namespace Methods.GetFileObject
+
+ Public Class FileObject
+ Public Property ObjectId As Long
+ Public Property AccessRights As String
+ Public Property FileHash As String
+ Public Property FileSize As Long
+ End Class
+
+End Namespace
\ No newline at end of file
diff --git a/Service.EDMIService/Methods/GetFileObject/GetFileObjectMethod.vb b/Service.EDMIService/Methods/GetFileObject/GetFileObjectMethod.vb
new file mode 100644
index 00000000..b8b3eba0
--- /dev/null
+++ b/Service.EDMIService/Methods/GetFileObject/GetFileObjectMethod.vb
@@ -0,0 +1,44 @@
+Imports DigitalData.Modules.Database
+Imports DigitalData.Modules.Logging
+Imports DigitalData.Modules.Language
+
+Namespace Methods.GetFileObject
+ Public Class GetFileObjectMethod
+ Inherits BaseMethod
+
+ Public Sub New(pLogConfig As LogConfig, pMSSQLServer As MSSQLServer, pGlobalState As GlobalState)
+ MyBase.New(pLogConfig, pMSSQLServer, pGlobalState)
+ End Sub
+
+ Public Function Run(pData As GetFileObjectRequest) As GetFileObjectResponse
+ Try
+ If Helpers.TestObjectIdExists(pData.ObjectId) = False Then
+ LogAndThrow("ObjectId does not exist!")
+ End If
+
+
+ Dim oSQL = $"SELECT * FROM VWIDB_FILE_OBJECT WHERE IDB_OBJ_ID = {pData.ObjectId}"
+ Dim oTable = Database.GetDatatable(oSQL)
+
+ If oTable Is Nothing OrElse oTable.Rows.Count = 0 Then
+ LogAndThrow("Error while getting FileObject data!")
+ End If
+
+ Dim oRow As DataRow = oTable.First()
+ Dim oFileObject As New FileObject With {
+ .ObjectId = pData.ObjectId,
+ .FileHash = oRow.ItemEx("FILE_HASH", ""),
+ .FileSize = oRow.ItemEx(Of Long)("FILE_SIZE", 0)
+ }
+
+ Return New GetFileObjectResponse(oFileObject)
+
+ Catch ex As Exception
+ Logger.Error(ex)
+ Return New GetFileObjectResponse(ex)
+
+ End Try
+ End Function
+ End Class
+
+End Namespace
\ No newline at end of file
diff --git a/Service.EDMIService/Methods/GetFileObject/GetFileObjectRequest.vb b/Service.EDMIService/Methods/GetFileObject/GetFileObjectRequest.vb
new file mode 100644
index 00000000..b81cf131
--- /dev/null
+++ b/Service.EDMIService/Methods/GetFileObject/GetFileObjectRequest.vb
@@ -0,0 +1,12 @@
+Imports System.Runtime.Serialization
+
+Namespace Methods.GetFileObject
+
+
+ Public Class GetFileObjectRequest
+
+ Public Property ObjectId As Long
+ End Class
+
+End Namespace
+
diff --git a/Service.EDMIService/Methods/GetFileObject/GetFileObjectResponse.vb b/Service.EDMIService/Methods/GetFileObject/GetFileObjectResponse.vb
new file mode 100644
index 00000000..70b7b41c
--- /dev/null
+++ b/Service.EDMIService/Methods/GetFileObject/GetFileObjectResponse.vb
@@ -0,0 +1,21 @@
+Imports System.Runtime.Serialization
+
+Namespace Methods.GetFileObject
+
+
+ Public Class GetFileObjectResponse
+ Inherits Messages.BaseResponse
+
+
+ Public Property FileObject As FileObject
+
+ Public Sub New(pFileObject As FileObject)
+ MyBase.New()
+ FileObject = pFileObject
+ End Sub
+
+ Public Sub New(pException As Exception, Optional pDetails As String = "")
+ MyBase.New(pException, pDetails)
+ End Sub
+ End Class
+End Namespace