diff --git a/Modules.EDMIAPI/Client.vb b/Modules.EDMIAPI/Client.vb
index b9d98da5..0b008467 100644
--- a/Modules.EDMIAPI/Client.vb
+++ b/Modules.EDMIAPI/Client.vb
@@ -11,25 +11,27 @@ Public Class Client
Private Const KIND_TYPE_DOC = "DOC"
+ Private ReadOnly _LogConfig As LogConfig
Private ReadOnly _logger As Logger
Private ReadOnly _channelFactory As ChannelFactory(Of IEDMIServiceChannel)
Private ReadOnly _IPAddressServer As String
+ Private ReadOnly _PortServer As Integer
Private _dummy_table_attributes As DataTable
Private _channel As IEDMIServiceChannel
Private _FileEx As Filesystem.File
-
'''
''' Creates a new EDMI Client object
'''
- ''' LogConfig object
- ''' The IP address/hostname and port, separated by semicolon or colon, ex localhost:9000
- Public Sub New(LogConfig As LogConfig, ServiceAdress As String)
- _logger = LogConfig.GetLogger()
- _FileEx = New Filesystem.File(LogConfig)
+ ''' LogConfig object
+ ''' The IP address/hostname and port, separated by semicolon or colon, ex. 1.2.3.4:9000
+ Public Sub New(pLogConfig As LogConfig, pServiceAdress As String)
+ _LogConfig = pLogConfig
+ _logger = pLogConfig.GetLogger()
+ _FileEx = New Filesystem.File(pLogConfig)
- Dim oServiceAddress As String = ServiceAdress
+ Dim oServiceAddress As String = pServiceAdress
Dim oAddressArray() As String
If oServiceAddress.Contains(";") Then
@@ -40,8 +42,10 @@ Public Class Client
Try
_IPAddressServer = oAddressArray(0)
+ _PortServer = oAddressArray(1)
+
Dim oBinding = Channel.GetBinding()
- Dim oAddress = New EndpointAddress($"net.tcp://{oAddressArray(0)}:{oAddressArray(1)}/DigitalData/Services/Main")
+ Dim oAddress = New EndpointAddress($"net.tcp://{_IPAddressServer}:{_PortServer}/DigitalData/Services/Main")
Dim oFactory = New ChannelFactory(Of IEDMIServiceChannel)(oBinding, oAddress)
_channelFactory = oFactory
@@ -243,6 +247,29 @@ Public Class Client
End Try
End Function
+ Public Function GetFileObject(pObjectId As Long) As FileObject
+ Try
+ Dim oGetFileObject As New Modules.Zooflow.GetFileObject(_LogConfig, Me)
+ Dim oFileObject = oGetFileObject.Run(pObjectId)
+ Return oFileObject
+ Catch ex As Exception
+ _logger.Error(ex)
+ Return Nothing
+ End Try
+ End Function
+
+ Public Async Function GetFileObjectAsync(pObjectId As Long) As Task(Of FileObject)
+ Try
+ Dim oGetFileObject As New Modules.Zooflow.GetFileObject(_LogConfig, Me)
+ Dim oFileObject = Await oGetFileObject.RunAsync(pObjectId)
+ Return oFileObject
+ Catch ex As Exception
+ _logger.Error(ex)
+ Return Nothing
+ End Try
+ End Function
+
+
'''
''' Sets a value to an attribute
'''
@@ -466,7 +493,6 @@ Public Class Client
End Try
End Function
-
Private Function GetAttributesForObject(pObjectId As Long, pLanguage As String) As List(Of ObjectAttribute)
Dim oAttributes As New List(Of ObjectAttribute)
diff --git a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Modules.EDMI.API.EDMIServiceReference.GetFileObjectResponse.datasource b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Modules.EDMI.API.EDMIServiceReference.GetFileObjectResponse.datasource
new file mode 100644
index 00000000..df13dd7d
--- /dev/null
+++ b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Modules.EDMI.API.EDMIServiceReference.GetFileObjectResponse.datasource
@@ -0,0 +1,10 @@
+
+
+
+ DigitalData.Modules.EDMI.API.EDMIServiceReference.GetFileObjectResponse, Connected Services.EDMIServiceReference.Reference.vb.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
+
\ No newline at end of file
diff --git a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.Methods.GetFileObject.xsd b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.Methods.GetFileObject.xsd
new file mode 100644
index 00000000..c0bd799b
--- /dev/null
+++ b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.Methods.GetFileObject.xsd
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.wsdl b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.wsdl
index b5182607..a5f4ff8e 100644
--- a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.wsdl
+++ b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.wsdl
@@ -15,6 +15,7 @@
+
@@ -136,6 +137,12 @@
+
+
+
+
+
+
@@ -244,6 +251,10 @@
+
+
+
+
diff --git a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.xsd b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.xsd
index 84c580cb..38cca34e 100644
--- a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.xsd
+++ b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.xsd
@@ -4,6 +4,7 @@
+
@@ -202,6 +203,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -212,7 +227,7 @@
-
+
@@ -228,7 +243,7 @@
-
+
diff --git a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/Reference.svcmap b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/Reference.svcmap
index 08a1ba92..3fd71f59 100644
--- a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/Reference.svcmap
+++ b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/Reference.svcmap
@@ -37,6 +37,7 @@
+
diff --git a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/Reference.vb b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/Reference.vb
index 33d0d301..f9f6c6da 100644
--- a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/Reference.vb
+++ b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/Reference.vb
@@ -26,6 +26,7 @@ Namespace EDMIServiceReference
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.NewFileResponse)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.SetAttributeValueResponse)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.ImportFileResponse)), _
+ System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.GetFileObjectResponse)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.TableResult))> _
Partial Public Class BaseResponse
Inherits Object
@@ -129,6 +130,9 @@ Namespace EDMIServiceReference
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.ImportFileRequest)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.ImportFileResponse)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(String())), _
+ System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.GetFileObjectRequest)), _
+ System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.GetFileObjectResponse)), _
+ System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.FileObject)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.RightsAccessRight))> _
Partial Public Class ScalarResult
Inherits EDMIServiceReference.BaseResponse
@@ -234,6 +238,31 @@ Namespace EDMIServiceReference
End Property
End Class
+ _
+ Partial Public Class GetFileObjectResponse
+ Inherits EDMIServiceReference.BaseResponse
+
+ _
+ Private FileObjectField As EDMIServiceReference.FileObject
+
+ _
+ Public Property FileObject() As EDMIServiceReference.FileObject
+ Get
+ Return Me.FileObjectField
+ End Get
+ Set
+ If (Object.ReferenceEquals(Me.FileObjectField, value) <> true) Then
+ Me.FileObjectField = value
+ Me.RaisePropertyChanged("FileObject")
+ End If
+ End Set
+ End Property
+ End Class
+
_
+ Partial Public Class GetFileObjectRequest
+ Inherits Object
+ Implements System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged
+
+ _
+ Private extensionDataField As System.Runtime.Serialization.ExtensionDataObject
+
+ _
+ Private LoadFileContentsField As Boolean
+
+ _
+ Private ObjectIdField As Long
+
+ _
+ Public Property ExtensionData() As System.Runtime.Serialization.ExtensionDataObject Implements System.Runtime.Serialization.IExtensibleDataObject.ExtensionData
+ Get
+ Return Me.extensionDataField
+ End Get
+ Set
+ Me.extensionDataField = value
+ End Set
+ End Property
+
+ _
+ Public Property LoadFileContents() As Boolean
+ Get
+ Return Me.LoadFileContentsField
+ End Get
+ Set
+ If (Me.LoadFileContentsField.Equals(value) <> true) Then
+ Me.LoadFileContentsField = value
+ Me.RaisePropertyChanged("LoadFileContents")
+ End If
+ End Set
+ End Property
+
+ _
+ Public Property ObjectId() As Long
+ Get
+ Return Me.ObjectIdField
+ End Get
+ Set
+ If (Me.ObjectIdField.Equals(value) <> true) Then
+ Me.ObjectIdField = value
+ Me.RaisePropertyChanged("ObjectId")
+ End If
+ End Set
+ End Property
+
+ Public Event PropertyChanged As System.ComponentModel.PropertyChangedEventHandler Implements System.ComponentModel.INotifyPropertyChanged.PropertyChanged
+
+ Protected Sub RaisePropertyChanged(ByVal propertyName As String)
+ Dim propertyChanged As System.ComponentModel.PropertyChangedEventHandler = Me.PropertyChangedEvent
+ If (Not (propertyChanged) Is Nothing) Then
+ propertyChanged(Me, New System.ComponentModel.PropertyChangedEventArgs(propertyName))
+ End If
+ End Sub
+ End Class
+
+ _
+ Partial Public Class FileObject
+ Inherits Object
+ Implements System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged
+
+ _
+ Private extensionDataField As System.Runtime.Serialization.ExtensionDataObject
+
+ Private _AccessRightsField As String
+
+ Private _FileContentsField() As Byte
+
+ Private _FileHashField As String
+
+ Private _FileSizeField As Long
+
+ Private _ObjectIdField As Long
+
+ _
+ Public Property ExtensionData() As System.Runtime.Serialization.ExtensionDataObject Implements System.Runtime.Serialization.IExtensibleDataObject.ExtensionData
+ Get
+ Return Me.extensionDataField
+ End Get
+ Set
+ Me.extensionDataField = value
+ End Set
+ End Property
+
+ _
+ Public Property _AccessRights() As String
+ Get
+ Return Me._AccessRightsField
+ End Get
+ Set
+ If (Object.ReferenceEquals(Me._AccessRightsField, value) <> true) Then
+ Me._AccessRightsField = value
+ Me.RaisePropertyChanged("_AccessRights")
+ End If
+ End Set
+ End Property
+
+ _
+ Public Property _FileContents() As Byte()
+ Get
+ Return Me._FileContentsField
+ End Get
+ Set
+ If (Object.ReferenceEquals(Me._FileContentsField, value) <> true) Then
+ Me._FileContentsField = value
+ Me.RaisePropertyChanged("_FileContents")
+ End If
+ End Set
+ End Property
+
+ _
+ Public Property _FileHash() As String
+ Get
+ Return Me._FileHashField
+ End Get
+ Set
+ If (Object.ReferenceEquals(Me._FileHashField, value) <> true) Then
+ Me._FileHashField = value
+ Me.RaisePropertyChanged("_FileHash")
+ End If
+ End Set
+ End Property
+
+ _
+ Public Property _FileSize() As Long
+ Get
+ Return Me._FileSizeField
+ End Get
+ Set
+ If (Me._FileSizeField.Equals(value) <> true) Then
+ Me._FileSizeField = value
+ Me.RaisePropertyChanged("_FileSize")
+ End If
+ End Set
+ End Property
+
+ _
+ Public Property _ObjectId() As Long
+ Get
+ Return Me._ObjectIdField
+ End Get
+ Set
+ If (Me._ObjectIdField.Equals(value) <> true) Then
+ Me._ObjectIdField = value
+ Me.RaisePropertyChanged("_ObjectId")
+ End If
+ End Set
+ End Property
+
+ Public Event PropertyChanged As System.ComponentModel.PropertyChangedEventHandler Implements System.ComponentModel.INotifyPropertyChanged.PropertyChanged
+
+ Protected Sub RaisePropertyChanged(ByVal propertyName As String)
+ Dim propertyChanged As System.ComponentModel.PropertyChangedEventHandler = Me.PropertyChangedEvent
+ If (Not (propertyChanged) Is Nothing) Then
+ propertyChanged(Me, New System.ComponentModel.PropertyChangedEventArgs(propertyName))
+ End If
+ End Sub
+ End Class
+
_
Public Enum RightsAccessRight As Integer
@@ -1353,6 +1553,12 @@ Namespace EDMIServiceReference
_
Function ImportFileAsync(ByVal Data As EDMIServiceReference.ImportFileRequest) As System.Threading.Tasks.Task(Of EDMIServiceReference.ImportFileResponse)
+ _
+ Function GetFileObject(ByVal Data As EDMIServiceReference.GetFileObjectRequest) As EDMIServiceReference.GetFileObjectResponse
+
+ _
+ Function GetFileObjectAsync(ByVal Data As EDMIServiceReference.GetFileObjectRequest) As System.Threading.Tasks.Task(Of EDMIServiceReference.GetFileObjectResponse)
+
'CODEGEN: Der Nachrichtenvertrag wird generiert, da der Wrappername (DocumentStreamRequest) von Nachricht "DocumentStreamRequest" nicht mit dem Standardwert (GetFileByObjectId) übereinstimmt.
_
Function EDMIServiceReference_IEDMIService_GetFileByObjectId(ByVal request As EDMIServiceReference.DocumentStreamRequest) As EDMIServiceReference.DocumentStreamResponse Implements EDMIServiceReference.IEDMIService.GetFileByObjectId
Return MyBase.Channel.GetFileByObjectId(request)
diff --git a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/service.wsdl b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/service.wsdl
index 28c3fba3..2719bd87 100644
--- a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/service.wsdl
+++ b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/service.wsdl
@@ -200,6 +200,15 @@
+
+
+
+
+
+
+
+
+
diff --git a/Modules.EDMIAPI/EDMI.API.vbproj b/Modules.EDMIAPI/EDMI.API.vbproj
index d5ef560c..453e7b8d 100644
--- a/Modules.EDMIAPI/EDMI.API.vbproj
+++ b/Modules.EDMIAPI/EDMI.API.vbproj
@@ -76,6 +76,7 @@
+
True
True
@@ -122,6 +123,9 @@
Reference.svcmap
+
+ Reference.svcmap
+
Reference.svcmap
@@ -158,6 +162,9 @@
Designer
+
+ Designer
+
Designer
diff --git a/Modules.EDMIAPI/Modules/ZooFlow/GetFileObject.vb b/Modules.EDMIAPI/Modules/ZooFlow/GetFileObject.vb
new file mode 100644
index 00000000..73f05eb6
--- /dev/null
+++ b/Modules.EDMIAPI/Modules/ZooFlow/GetFileObject.vb
@@ -0,0 +1,44 @@
+Imports DigitalData.Modules.EDMI.API.EDMIServiceReference
+Imports DigitalData.Modules.Logging
+
+Namespace Modules.Zooflow
+ Public Class GetFileObject
+ Private ReadOnly LogConfig As LogConfig
+ Private ReadOnly Logger As Logger
+ Private ReadOnly Channel As IEDMIServiceChannel
+
+ Public Sub New(pLogConfig As LogConfig, pChannel As IEDMIServiceChannel)
+ LogConfig = pLogConfig
+ Logger = pLogConfig.GetLogger()
+ Channel = pChannel
+ End Sub
+
+ Public Async Function RunAsync(pObjectId As Long) As Task(Of FileObject)
+ Try
+ Dim oResult = Await Channel.GetFileObjectAsync(New GetFileObjectRequest With {.ObjectId = pObjectId})
+ If oResult.OK Then
+ Return oResult.FileObject
+ Else
+ Return Nothing
+ End If
+ Catch ex As Exception
+ Logger.Error(ex)
+ Return Nothing
+ End Try
+ End Function
+
+ Public Function Run(pObjectId As Long) As FileObject
+ Try
+ Dim oResult = Channel.GetFileObject(New GetFileObjectRequest With {.ObjectId = pObjectId})
+ If oResult.OK Then
+ Return oResult.FileObject
+ Else
+ Return Nothing
+ End If
+ Catch ex As Exception
+ Logger.Error(ex)
+ Return Nothing
+ End Try
+ End Function
+ End Class
+End Namespace
\ No newline at end of file
diff --git a/Service.EDMIService/Methods/GetFileObject/FileObject.vb b/Service.EDMIService/Methods/GetFileObject/FileObject.vb
index 616adc7f..6ffed104 100644
--- a/Service.EDMIService/Methods/GetFileObject/FileObject.vb
+++ b/Service.EDMIService/Methods/GetFileObject/FileObject.vb
@@ -1,10 +1,20 @@
-Namespace Methods.GetFileObject
+Imports System.Runtime.Serialization
+
+Namespace Methods.GetFileObject
Public Class FileObject
+
Public Property ObjectId As Long
+
Public Property AccessRights As String
+
+ Public Property FileExtension As String
+
Public Property FileHash As String
+
Public Property FileSize As Long
+
+ Public Property FileContents As Byte()
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
index b8b3eba0..be5d6102 100644
--- a/Service.EDMIService/Methods/GetFileObject/GetFileObjectMethod.vb
+++ b/Service.EDMIService/Methods/GetFileObject/GetFileObjectMethod.vb
@@ -1,6 +1,7 @@
Imports DigitalData.Modules.Database
Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.Language
+Imports System.IO
Namespace Methods.GetFileObject
Public Class GetFileObjectMethod
@@ -16,7 +17,6 @@ Namespace Methods.GetFileObject
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)
@@ -25,20 +25,64 @@ Namespace Methods.GetFileObject
End If
Dim oRow As DataRow = oTable.First()
+ Dim oFileHash As String = oRow.ItemEx("FILE_HASH", "")
+ Dim oFileSize As Long = oRow.ItemEx(Of Long)("FILE_SIZE", 0)
+
Dim oFileObject As New FileObject With {
.ObjectId = pData.ObjectId,
- .FileHash = oRow.ItemEx("FILE_HASH", ""),
- .FileSize = oRow.ItemEx(Of Long)("FILE_SIZE", 0)
+ .FileHash = oFileHash,
+ .FileSize = oFileSize
}
+ If pData.LoadFileContents = True Then
+ Dim oFilePath = oRow.ItemEx("RELPATH", "")
+ Dim oFileName = oRow.ItemEx("Filename", "")
+ Dim oFullFileName = Path.Combine(oFilePath, oFileName)
+
+ If File.Exists(oFullFileName) = False Then
+ Throw New FileNotFoundException("FileObject not Found!", oFullFileName)
+ End If
+
+ Dim oContents As Byte() = LoadFileContents(oFullFileName)
+
+ If oContents Is Nothing Then
+ Throw New FileNotFoundException("FileObject not Found!", oFullFileName)
+ End If
+
+ oFileObject.FileContents = oContents
+
+ End If
+
Return New GetFileObjectResponse(oFileObject)
+ Catch ex As FileNotFoundException
+ Logger.Error(ex)
+ Return New GetFileObjectResponse(ex, ex.FileName)
+
Catch ex As Exception
Logger.Error(ex)
Return New GetFileObjectResponse(ex)
End Try
End Function
+
+ Private Function LoadFileContents(pFilePath As String) As Byte()
+ Try
+ Using oFileStream As New FileStream(pFilePath, FileMode.Open, FileAccess.Read)
+ Using oMemoryStream As New MemoryStream()
+ oFileStream.CopyTo(oMemoryStream)
+ Dim oContents = oMemoryStream.ToArray()
+
+ Return oContents
+ End Using
+ End Using
+
+ Catch ex As Exception
+ Logger.Error(ex)
+ Return Nothing
+
+ 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
index b81cf131..59aa5e75 100644
--- a/Service.EDMIService/Methods/GetFileObject/GetFileObjectRequest.vb
+++ b/Service.EDMIService/Methods/GetFileObject/GetFileObjectRequest.vb
@@ -6,6 +6,8 @@ Namespace Methods.GetFileObject
Public Class GetFileObjectRequest
Public Property ObjectId As Long
+
+ Public Property LoadFileContents As Boolean = False
End Class
End Namespace
diff --git a/Service.EDMIService/Methods/NewFile/NewFileMethod.vb b/Service.EDMIService/Methods/NewFile/NewFileMethod.vb
index 3d21fae3..239d6ae3 100644
--- a/Service.EDMIService/Methods/NewFile/NewFileMethod.vb
+++ b/Service.EDMIService/Methods/NewFile/NewFileMethod.vb
@@ -83,12 +83,12 @@ Public Class NewFileMethod
Dim oFileObjectInfo As IO.FileInfo = New IO.FileInfo(oFilePath)
Dim oFileObjectSize As Long = pData.File.FileContents.Length
- Dim oFileObjectExtension As String = oFileObjectInfo.Extension.Substring(1)
Dim oFileObjectName As String = oFileObjectInfo.Name
+ Dim oOriginalExtension As String = pData.File.FileInfoRaw.Extension.Substring(1)
Logger.Debug("File Information for [{0}]:", oFileObjectName)
Logger.Debug("Size: [{0}]", oFileObjectSize)
- Logger.Debug("Extension: [{0}]", oFileObjectExtension)
+ Logger.Debug("Original Extension: [{0}]", oOriginalExtension)
Logger.Debug("Checksum: [{0}]", pData.File.FileChecksum)
Try
@@ -110,7 +110,7 @@ Public Class NewFileMethod
Dim oSQL As String = $"EXEC PRIDB_NEW_IDBFO
'{oFinalPath}',
'{oFileObjectName}',
- '{oFileObjectExtension}',
+ '{oOriginalExtension}',
{oFileObjectSize},
'{pData.File.FileChecksum}' ,
'{pData.User.UserName}',
@@ -218,6 +218,7 @@ Public Class NewFileMethod
End Function
Private Function GetFileObjectFileName(IDB_OBJ_ID As Long, pFilename As String, pKeepFilename As Boolean) As String
+ ' TODO: save actual extensions
If pKeepFilename Then
Return pFilename
Else