diff --git a/Modules.EDMIAPI/Client.vb b/Modules.EDMIAPI/Client.vb
index 06d1b313..2ebe819b 100644
--- a/Modules.EDMIAPI/Client.vb
+++ b/Modules.EDMIAPI/Client.vb
@@ -17,8 +17,61 @@ Public Class Client
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)
+
+ Dim oServiceAddress As String = ServiceAdress
+ Dim oAddressArray() As String
+
+ If oServiceAddress.Contains(";") Then
+ oAddressArray = oServiceAddress.Split(";")
+ Else
+ oAddressArray = oServiceAddress.Split(":")
+ End If
+
+ Try
+ _IPAddressServer = oAddressArray(0)
+ Dim oBinding = Channel.GetBinding()
+ Dim oAddress = New EndpointAddress($"net.tcp://{oAddressArray(0)}:{oAddressArray(1)}/DigitalData/Services/Main")
+ Dim oFactory = New ChannelFactory(Of IEDMIServiceChannel)(oBinding, oAddress)
+
+ _channelFactory = oFactory
+ Catch ex As Exception
+ _logger.Error(ex)
+ End Try
+ End Sub
+
+ '''
+ ''' Creates a new EDMI Client object
+ '''
+ ''' LogConfig object
+ ''' The IP address to connect to
+ ''' The Port number to use for the connection
+ Public Sub New(LogConfig As LogConfig, IPAddress As String, PortNumber As Integer)
+ _logger = LogConfig.GetLogger()
+ _FileEx = New Filesystem.File(LogConfig)
+
+ Try
+ _IPAddressServer = IPAddress
+ Dim oBinding = Channel.GetBinding()
+ Dim oAddress = New EndpointAddress($"net.tcp://{IPAddress}:{PortNumber}/DigitalData/Services/Main")
+ Dim oFactory = New ChannelFactory(Of IEDMIServiceChannel)(oBinding, oAddress)
+
+ _channelFactory = oFactory
+ Catch ex As Exception
+ _logger.Error(ex)
+ End Try
+ End Sub
+
'''
''' Parse a IPAddress:Port String into its parts
'''
@@ -40,55 +93,6 @@ Public Class Client
Return New Tuple(Of String, Integer)(oAppServerAddress, oAppServerPort)
End Function
- '''
- ''' 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()
-
- Dim oServiceAddress As String = ServiceAdress
- Dim oAddressArray() As String
-
- If oServiceAddress.Contains(";") Then
- oAddressArray = oServiceAddress.Split(";")
- Else
- oAddressArray = oServiceAddress.Split(":")
- End If
-
- Try
- Dim oBinding = Channel.GetBinding()
- Dim oAddress = New EndpointAddress($"net.tcp://{oAddressArray(0)}:{oAddressArray(1)}/DigitalData/Services/Main")
- Dim oFactory = New ChannelFactory(Of IEDMIServiceChannel)(oBinding, oAddress)
-
- _channelFactory = oFactory
- Catch ex As Exception
- _logger.Error(ex)
- End Try
- End Sub
-
- '''
- ''' Creates a new EDMI Client object
- '''
- ''' LogConfig object
- ''' The IP address to connect to
- ''' The Port number to use for the connection
- Public Sub New(LogConfig As LogConfig, IPAddress As String, PortNumber As Integer)
- _logger = LogConfig.GetLogger()
-
- Try
- _IPAddressServer = IPAddress
- Dim oBinding = Channel.GetBinding()
- Dim oAddress = New EndpointAddress($"net.tcp://{IPAddress}:{PortNumber}/DigitalData/Services/Main")
- Dim oFactory = New ChannelFactory(Of IEDMIServiceChannel)(oBinding, oAddress)
-
- _channelFactory = oFactory
- Catch ex As Exception
- _logger.Error(ex)
- End Try
- End Sub
-
'''
''' Connect to the service
'''
@@ -109,26 +113,16 @@ Public Class Client
End Try
End Function
- '''
- ''' TODO: Creates a new object
- '''
- '''
- Public Async Function NewObjectAsync() As Task
- Throw New NotImplementedException()
- End Function
-
-
-
'''
''' Imports a file from a filepath, creating a IDB ObjectId and Filesystem Object
'''
- ''' Type of ObjectStore. Can be WORK or ARCHIVE.
+ ''' Type of ObjectStore. Can be WORK or ARCHIVE.
''' Business entity that the new file object should belong to.
''' Other file import options
''' When local filepath was not found
''' When there was a error in the Service
''' The ObjectId of the newly generated filesystem object
- Public Async Function NewFileAsync(pFilePath As String, pObjectStoreType As String, pBusinessEntity As String, Optional pImportOptions As NewFileOptions = Nothing) As Task(Of Long)
+ Public Async Function NewFileAsync(pFilePath As String, pObjectStoreName As String, pObjectKind As String, pBusinessEntity As String, Optional pImportOptions As NewFileOptions = Nothing) As Task(Of Long)
Try
' Set default options
If pImportOptions Is Nothing Then
@@ -137,35 +131,16 @@ Public Class Client
' Check if file exists
If File.Exists(pFilePath) = False Then
- Throw New FileNotFoundException("ImportFileAsync: Path does not exist")
+ Throw New FileNotFoundException("Path does not exist")
End If
Dim oFileInfo As New FileInfo(pFilePath)
Dim oExtension As String = oFileInfo.Extension
- ' Creating new ObjectId
- Dim oObjectIdResponse = Await _channel.NewObjectIdAsync(New NewObjectIdRequest With {
- .BusinessEntity = pBusinessEntity,
- .KindType = KIND_TYPE_DOC,
- .Who = pImportOptions.Username
- })
-
- If oObjectIdResponse.ObjectId = Nothing OrElse oObjectIdResponse.ObjectId = 0 Then
- Throw New ApplicationException("ImportFileAsync: Could not get ObjectId")
- End If
-
- ' Create new FileObject for ObjectId
- Dim oFilePathResponse = Await _channel.NewFileObjectAsync(New NewFileObjectRequest With {
- .DateImported = pImportOptions.DateImported,
- .Extension = oExtension,
- .KeepExtension = pImportOptions.KeepExtension,
- .ObjectId = oObjectIdResponse.ObjectId,
- .StoreType = pObjectStoreType
- })
-
- If oFilePathResponse.FileObjectPath = Nothing OrElse oFilePathResponse.FileObjectPath = "" Then
- Throw New ApplicationException("ImportFileAsync: Could not get FileObject Path")
- End If
+ Dim oFileName As String = oFileInfo.Name
+ Dim oFileCreatedAt As Date = oFileInfo?.CreationTime
+ Dim oFileModifiedAt As Date = oFileInfo?.LastWriteTime
+ Dim oFileHash As String = _FileEx.GetChecksum(oFileInfo.FullName)
' Importing the file now
Using oFileStream As New FileStream(pFilePath, FileMode.Open, FileAccess.Read)
@@ -173,21 +148,26 @@ Public Class Client
oFileStream.CopyTo(oMemoryStream)
Dim oContents = oMemoryStream.ToArray()
- Dim oFileImportResponse = Await _channel.ImportFileIntoFileObjectAsync(New ImportFileIntoFileObjectRequest With {
- .FilePath = oFilePathResponse.FileObjectPath,
- .ObjectId = oObjectIdResponse.ObjectId,
- .ObjectStoreType = pObjectStoreType,
- .Who = pImportOptions.Username,
- .Contents = oContents
+ Dim oFileImportResponse = Await _channel.NewFileAsync(New NewFileRequest With {
+ .BusinessEntity = pBusinessEntity,
+ .FileName = oFileInfo.Name,
+ .FileCreatedAt = oFileCreatedAt,
+ .FileChangedAt = oFileModifiedAt,
+ .FileContents = oContents,
+ .FileImportedAt = pImportOptions.DateImported,
+ .FileChecksum = oFileHash,
+ .KindType = pObjectKind,
+ .StoreName = pObjectStoreName,
+ .Who = pImportOptions.Username
})
- If oFileImportResponse.Result = False Then
- Throw New ApplicationException("ImportFileAsync: Could not Import File Contents")
+ If oFileImportResponse.OK = False Then
+ Throw New ApplicationException("Could not Import File Contents!")
End If
+
+ Return oFileImportResponse.ObjectId
End Using
End Using
-
- Return oObjectIdResponse.ObjectId
Catch ex As Exception
_logger.Error(ex)
Return INVALID_OBEJCT_ID
@@ -650,15 +630,15 @@ Public Class Client
'''
''' Option to keep the original extension when importing. Defaults to false.
'''
- Public KeepExtension As Boolean = False
+ Public Property KeepExtension As Boolean = False
'''
''' Windows username of the user responsible for the import. Defaults to the currently logged in user.
'''
- Public Username As String = Environment.UserName
+ Public Property Username As String = Environment.UserName
'''
''' Date when the file was imported. Can be in the past. Defaults to now.
'''
- Public DateImported As Date = Date.Now
+ Public Property DateImported As Date = Date.Now
End Class
Public Class NewObjectOptions
diff --git a/Modules.EDMIAPI/Client/NewFile.vb b/Modules.EDMIAPI/Client/NewFile.vb
new file mode 100644
index 00000000..7410fcff
--- /dev/null
+++ b/Modules.EDMIAPI/Client/NewFile.vb
@@ -0,0 +1,11 @@
+Imports DigitalData.Modules.Logging
+
+Public Class NewFile
+ Private ReadOnly LogConfig As LogConfig
+ Private ReadOnly Logger As Logger
+
+ Public Sub New(pLogConfig As LogConfig)
+ LogConfig = pLogConfig
+ Logger = LogConfig.GetLogger()
+ End Sub
+End Class
diff --git a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Modules.EDMI.API.EDMIServiceReference.DocumentImportResponse.datasource b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Modules.EDMI.API.EDMIServiceReference.DocumentImportResponse.datasource
deleted file mode 100644
index 0cb66122..00000000
--- a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Modules.EDMI.API.EDMIServiceReference.DocumentImportResponse.datasource
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
-
- DigitalData.Modules.EDMI.API.EDMIServiceReference.DocumentImportResponse, 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.Modules.EDMI.API.EDMIServiceReference.ImportFileIntoFileObjectResponse.datasource b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Modules.EDMI.API.EDMIServiceReference.ImportFileIntoFileObjectResponse.datasource
deleted file mode 100644
index b7120ba7..00000000
--- a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Modules.EDMI.API.EDMIServiceReference.ImportFileIntoFileObjectResponse.datasource
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
-
- DigitalData.Modules.EDMI.API.EDMIServiceReference.ImportFileIntoFileObjectResponse, 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.Modules.EDMI.API.EDMIServiceReference.NewFileObjectResponse.datasource b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Modules.EDMI.API.EDMIServiceReference.NewFileObjectResponse.datasource
deleted file mode 100644
index 6ee8711d..00000000
--- a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Modules.EDMI.API.EDMIServiceReference.NewFileObjectResponse.datasource
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
-
- DigitalData.Modules.EDMI.API.EDMIServiceReference.NewFileObjectResponse, 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.Modules.EDMI.API.EDMIServiceReference.NewObjectIdResponse.datasource b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Modules.EDMI.API.EDMIServiceReference.NewFileResponse.datasource
similarity index 57%
rename from Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Modules.EDMI.API.EDMIServiceReference.NewObjectIdResponse.datasource
rename to Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Modules.EDMI.API.EDMIServiceReference.NewFileResponse.datasource
index dbc88508..bebd9f37 100644
--- a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Modules.EDMI.API.EDMIServiceReference.NewObjectIdResponse.datasource
+++ b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Modules.EDMI.API.EDMIServiceReference.NewFileResponse.datasource
@@ -5,6 +5,6 @@
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
-
- DigitalData.Modules.EDMI.API.EDMIServiceReference.NewObjectIdResponse, Connected Services.EDMIServiceReference.Reference.vb.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
+
+ DigitalData.Modules.EDMI.API.EDMIServiceReference.NewFileResponse, 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.FileStorage.NewFile.xsd b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.FileStorage.NewFile.xsd
new file mode 100644
index 00000000..25e09256
--- /dev/null
+++ b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.FileStorage.NewFile.xsd
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.Messages.xsd b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.Messages.xsd
index 943f1763..f4dfa1da 100644
--- a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.Messages.xsd
+++ b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.Messages.xsd
@@ -2,7 +2,7 @@
-
+
@@ -23,16 +23,16 @@
-
+
-
+
-
+
@@ -42,7 +42,7 @@
-
+
diff --git a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.wsdl b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.wsdl
index ed64d5c1..5efb2b85 100644
--- a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.wsdl
+++ b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.wsdl
@@ -8,6 +8,7 @@
+
@@ -111,14 +112,11 @@
-
-
+
+
-
-
-
-
-
+
+
@@ -130,10 +128,10 @@
-
+
-
+
@@ -142,41 +140,14 @@
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
@@ -185,7 +156,7 @@
-
+
@@ -243,10 +214,9 @@
-
-
-
-
+
+
+
@@ -264,21 +234,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.xsd b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.xsd
index 0d6d3c7c..08e87d36 100644
--- a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.xsd
+++ b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/DigitalData.Services.EDMIService.xsd
@@ -1,6 +1,7 @@
+
@@ -157,21 +158,17 @@
-
+
-
-
-
-
-
+
-
+
-
+
@@ -185,7 +182,7 @@
-
+
@@ -201,7 +198,7 @@
-
+
@@ -226,58 +223,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/Reference.svcmap b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/Reference.svcmap
index 2d855184..24ee6ee1 100644
--- a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/Reference.svcmap
+++ b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/Reference.svcmap
@@ -30,6 +30,7 @@
+
diff --git a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/Reference.vb b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/Reference.vb
index 71f60112..ab76c8c5 100644
--- a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/Reference.vb
+++ b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/Reference.vb
@@ -18,13 +18,14 @@ Namespace EDMIServiceReference
_
- Partial Public Class BaseResult
+ Partial Public Class BaseResponse
Inherits Object
Implements System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged
@@ -89,7 +90,7 @@ Namespace EDMIServiceReference
""), _
System.SerializableAttribute(), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.TableResult)), _
- System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.BaseResult)), _
+ System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.BaseResponse)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.NonQueryResult)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(System.DBNull)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(System.Exception)), _
@@ -97,9 +98,11 @@ Namespace EDMIServiceReference
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.BaseFault)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.DataTableDoesNotExistFault)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.ObjectDoesNotExistFault)), _
+ System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.NewFileRequest)), _
+ System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.NewFileResponse)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.RightsAccessRight))> _
Partial Public Class ScalarResult
- Inherits EDMIServiceReference.BaseResult
+ Inherits EDMIServiceReference.BaseResponse
_
Private ScalarField As Object
@@ -124,7 +127,32 @@ Namespace EDMIServiceReference
""), _
System.SerializableAttribute()> _
Partial Public Class NonQueryResult
- Inherits EDMIServiceReference.BaseResult
+ Inherits EDMIServiceReference.BaseResponse
+ End Class
+
+ _
+ Partial Public Class NewFileResponse
+ Inherits EDMIServiceReference.BaseResponse
+
+ _
+ Private ObjectIdField As Long
+
+ _
+ 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
End Class
_
Partial Public Class TableResult
- Inherits EDMIServiceReference.BaseResult
+ Inherits EDMIServiceReference.BaseResponse
_
Private TableField As System.Data.DataTable
@@ -262,6 +290,198 @@ Namespace EDMIServiceReference
Inherits EDMIServiceReference.BaseFault
End Class
+ _
+ Partial Public Class NewFileRequest
+ Inherits Object
+ Implements System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged
+
+ _
+ Private extensionDataField As System.Runtime.Serialization.ExtensionDataObject
+
+ _
+ Private BusinessEntityField As String
+
+ _
+ Private FileChangedAtField As String
+
+ _
+ Private FileChecksumField As String
+
+ _
+ Private FileContentsField() As Byte
+
+ _
+ Private FileCreatedAtField As String
+
+ _
+ Private FileImportedAtField As Date
+
+ _
+ Private FileNameField As String
+
+ _
+ Private KindTypeField As String
+
+ _
+ Private StoreNameField As String
+
+ _
+ Private WhoField As String
+
+ _
+ 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 BusinessEntity() As String
+ Get
+ Return Me.BusinessEntityField
+ End Get
+ Set
+ If (Object.ReferenceEquals(Me.BusinessEntityField, value) <> true) Then
+ Me.BusinessEntityField = value
+ Me.RaisePropertyChanged("BusinessEntity")
+ End If
+ End Set
+ End Property
+
+ _
+ Public Property FileChangedAt() As String
+ Get
+ Return Me.FileChangedAtField
+ End Get
+ Set
+ If (Object.ReferenceEquals(Me.FileChangedAtField, value) <> true) Then
+ Me.FileChangedAtField = value
+ Me.RaisePropertyChanged("FileChangedAt")
+ End If
+ End Set
+ End Property
+
+ _
+ Public Property FileChecksum() As String
+ Get
+ Return Me.FileChecksumField
+ End Get
+ Set
+ If (Object.ReferenceEquals(Me.FileChecksumField, value) <> true) Then
+ Me.FileChecksumField = value
+ Me.RaisePropertyChanged("FileChecksum")
+ 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 FileCreatedAt() As String
+ Get
+ Return Me.FileCreatedAtField
+ End Get
+ Set
+ If (Object.ReferenceEquals(Me.FileCreatedAtField, value) <> true) Then
+ Me.FileCreatedAtField = value
+ Me.RaisePropertyChanged("FileCreatedAt")
+ End If
+ End Set
+ End Property
+
+ _
+ Public Property FileImportedAt() As Date
+ Get
+ Return Me.FileImportedAtField
+ End Get
+ Set
+ If (Me.FileImportedAtField.Equals(value) <> true) Then
+ Me.FileImportedAtField = value
+ Me.RaisePropertyChanged("FileImportedAt")
+ End If
+ End Set
+ End Property
+
+ _
+ Public Property FileName() As String
+ Get
+ Return Me.FileNameField
+ End Get
+ Set
+ If (Object.ReferenceEquals(Me.FileNameField, value) <> true) Then
+ Me.FileNameField = value
+ Me.RaisePropertyChanged("FileName")
+ End If
+ End Set
+ End Property
+
+ _
+ Public Property KindType() As String
+ Get
+ Return Me.KindTypeField
+ End Get
+ Set
+ If (Object.ReferenceEquals(Me.KindTypeField, value) <> true) Then
+ Me.KindTypeField = value
+ Me.RaisePropertyChanged("KindType")
+ End If
+ End Set
+ End Property
+
+ _
+ Public Property StoreName() As String
+ Get
+ Return Me.StoreNameField
+ End Get
+ Set
+ If (Object.ReferenceEquals(Me.StoreNameField, value) <> true) Then
+ Me.StoreNameField = value
+ Me.RaisePropertyChanged("StoreName")
+ End If
+ End Set
+ End Property
+
+ _
+ Public Property Who() As String
+ Get
+ Return Me.WhoField
+ End Get
+ Set
+ If (Object.ReferenceEquals(Me.WhoField, value) <> true) Then
+ Me.WhoField = value
+ Me.RaisePropertyChanged("Who")
+ 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
@@ -399,15 +619,11 @@ Namespace EDMIServiceReference
"ponse")> _
Function ExecuteNonQuery_MSSQL_ECMAsync(ByVal SQL As String) As System.Threading.Tasks.Task(Of EDMIServiceReference.NonQueryResult)
- 'CODEGEN: Der Nachrichtenvertrag wird generiert, da der Wrappername (DocumentImportRequest) von Nachricht "DocumentImportRequest" nicht mit dem Standardwert (ImportFile) übereinstimmt.
- _
- Function ImportFile(ByVal request As EDMIServiceReference.DocumentImportRequest) As EDMIServiceReference.DocumentImportResponse
+ _
+ Function NewFile(ByVal Data As EDMIServiceReference.NewFileRequest) As EDMIServiceReference.NewFileResponse
- _
- Function ImportFileAsync(ByVal request As EDMIServiceReference.DocumentImportRequest) As System.Threading.Tasks.Task(Of EDMIServiceReference.DocumentImportResponse)
+ _
+ Function NewFileAsync(ByVal Data As EDMIServiceReference.NewFileRequest) As System.Threading.Tasks.Task(Of EDMIServiceReference.NewFileResponse)
'CODEGEN: Der Nachrichtenvertrag wird generiert, da der Wrappername (DocumentStreamRequest) von Nachricht "DocumentStreamRequest" nicht mit dem Standardwert (GetFileByObjectId) übereinstimmt.
_
Function ListFilesForUserAsync(ByVal request As EDMIServiceReference.ListFilesForUserRequest) As System.Threading.Tasks.Task(Of EDMIServiceReference.DocumentListResponse)
- 'CODEGEN: Der Nachrichtenvertrag wird generiert, da der Wrappername (NewObjectIdRequest) von Nachricht "NewObjectIdRequest" nicht mit dem Standardwert (NewObjectId) übereinstimmt.
- _
- Function NewObjectId(ByVal request As EDMIServiceReference.NewObjectIdRequest) As EDMIServiceReference.NewObjectIdResponse
-
- _
- Function NewObjectIdAsync(ByVal request As EDMIServiceReference.NewObjectIdRequest) As System.Threading.Tasks.Task(Of EDMIServiceReference.NewObjectIdResponse)
-
- 'CODEGEN: Der Nachrichtenvertrag wird generiert, da der Wrappername (NewFileObjectRequest) von Nachricht "NewFileObjectRequest" nicht mit dem Standardwert (NewFileObject) übereinstimmt.
- _
- Function NewFileObject(ByVal request As EDMIServiceReference.NewFileObjectRequest) As EDMIServiceReference.NewFileObjectResponse
-
- _
- Function NewFileObjectAsync(ByVal request As EDMIServiceReference.NewFileObjectRequest) As System.Threading.Tasks.Task(Of EDMIServiceReference.NewFileObjectResponse)
-
- 'CODEGEN: Der Nachrichtenvertrag wird generiert, da der Wrappername (ImportFileIntoFileObjectRequest) von Nachricht "ImportFileIntoFileObjectRequest" nicht mit dem Standardwert (ImportFileIntoFileObject) übereinstimmt.
- _
- Function ImportFileIntoFileObject(ByVal request As EDMIServiceReference.ImportFileIntoFileObjectRequest) As EDMIServiceReference.ImportFileIntoFileObjectResponse
-
- _
- Function ImportFileIntoFileObjectAsync(ByVal request As EDMIServiceReference.ImportFileIntoFileObjectRequest) As System.Threading.Tasks.Task(Of EDMIServiceReference.ImportFileIntoFileObjectResponse)
-
_
- Partial Public Class DocumentImportRequest
-
- _
- Public Contents() As Byte
-
- _
- Public DocumentType As String
-
- _
- Public FileName As String
-
- _
- Public ObjectStoreId As Long
-
- _
- Public RetentionDays As Long
-
- Public Sub New()
- MyBase.New
- End Sub
-
- Public Sub New(ByVal Contents() As Byte, ByVal DocumentType As String, ByVal FileName As String, ByVal ObjectStoreId As Long, ByVal RetentionDays As Long)
- MyBase.New
- Me.Contents = Contents
- Me.DocumentType = DocumentType
- Me.FileName = FileName
- Me.ObjectStoreId = ObjectStoreId
- Me.RetentionDays = RetentionDays
- End Sub
- End Class
-
- _
- Partial Public Class DocumentImportResponse
-
- _
- Public ObjectId As Long
-
- Public Sub New()
- MyBase.New
- End Sub
-
- Public Sub New(ByVal ObjectId As Long)
- MyBase.New
- Me.ObjectId = ObjectId
- End Sub
- End Class
-
_
- Partial Public Class NewObjectIdRequest
-
- _
- Public BusinessEntity As String
-
- _
- Public KindType As String
-
- _
- Public Who As String
-
- Public Sub New()
- MyBase.New
- End Sub
-
- Public Sub New(ByVal BusinessEntity As String, ByVal KindType As String, ByVal Who As String)
- MyBase.New
- Me.BusinessEntity = BusinessEntity
- Me.KindType = KindType
- Me.Who = Who
- End Sub
- End Class
-
- _
- Partial Public Class NewObjectIdResponse
-
- _
- Public ObjectId As Long
-
- Public Sub New()
- MyBase.New
- End Sub
-
- Public Sub New(ByVal ObjectId As Long)
- MyBase.New
- Me.ObjectId = ObjectId
- End Sub
- End Class
-
- _
- Partial Public Class NewFileObjectRequest
-
- _
- Public DateImported As Date
-
- _
- Public Extension As String
-
- _
- Public KeepExtension As Boolean
-
- _
- Public ObjectId As Long
-
- _
- Public StoreType As String
-
- Public Sub New()
- MyBase.New
- End Sub
-
- Public Sub New(ByVal DateImported As Date, ByVal Extension As String, ByVal KeepExtension As Boolean, ByVal ObjectId As Long, ByVal StoreType As String)
- MyBase.New
- Me.DateImported = DateImported
- Me.Extension = Extension
- Me.KeepExtension = KeepExtension
- Me.ObjectId = ObjectId
- Me.StoreType = StoreType
- End Sub
- End Class
-
- _
- Partial Public Class NewFileObjectResponse
-
- _
- Public FileObjectPath As String
-
- Public Sub New()
- MyBase.New
- End Sub
-
- Public Sub New(ByVal FileObjectPath As String)
- MyBase.New
- Me.FileObjectPath = FileObjectPath
- End Sub
- End Class
-
- _
- Partial Public Class ImportFileIntoFileObjectRequest
-
- _
- Public Contents() As Byte
-
- _
- Public FilePath As String
-
- _
- Public ObjectId As Long
-
- _
- Public ObjectStoreType As String
-
- _
- Public Who As String
-
- Public Sub New()
- MyBase.New
- End Sub
-
- Public Sub New(ByVal Contents() As Byte, ByVal FilePath As String, ByVal ObjectId As Long, ByVal ObjectStoreType As String, ByVal Who As String)
- MyBase.New
- Me.Contents = Contents
- Me.FilePath = FilePath
- Me.ObjectId = ObjectId
- Me.ObjectStoreType = ObjectStoreType
- Me.Who = Who
- End Sub
- End Class
-
- _
- Partial Public Class ImportFileIntoFileObjectResponse
-
- _
- Public Result As Boolean
-
- Public Sub New()
- MyBase.New
- End Sub
-
- Public Sub New(ByVal Result As Boolean)
- MyBase.New
- Me.Result = Result
- End Sub
- End Class
-
_
@@ -974,35 +950,12 @@ Namespace EDMIServiceReference
Return MyBase.Channel.ExecuteNonQuery_MSSQL_ECMAsync(SQL)
End Function
- _
- Function EDMIServiceReference_IEDMIService_ImportFile(ByVal request As EDMIServiceReference.DocumentImportRequest) As EDMIServiceReference.DocumentImportResponse Implements EDMIServiceReference.IEDMIService.ImportFile
- Return MyBase.Channel.ImportFile(request)
+ Public Function NewFile(ByVal Data As EDMIServiceReference.NewFileRequest) As EDMIServiceReference.NewFileResponse Implements EDMIServiceReference.IEDMIService.NewFile
+ Return MyBase.Channel.NewFile(Data)
End Function
- Public Function ImportFile(ByVal Contents() As Byte, ByVal DocumentType As String, ByVal FileName As String, ByVal ObjectStoreId As Long, ByVal RetentionDays As Long) As Long
- Dim inValue As EDMIServiceReference.DocumentImportRequest = New EDMIServiceReference.DocumentImportRequest()
- inValue.Contents = Contents
- inValue.DocumentType = DocumentType
- inValue.FileName = FileName
- inValue.ObjectStoreId = ObjectStoreId
- inValue.RetentionDays = RetentionDays
- Dim retVal As EDMIServiceReference.DocumentImportResponse = CType(Me,EDMIServiceReference.IEDMIService).ImportFile(inValue)
- Return retVal.ObjectId
- End Function
-
- _
- Function EDMIServiceReference_IEDMIService_ImportFileAsync(ByVal request As EDMIServiceReference.DocumentImportRequest) As System.Threading.Tasks.Task(Of EDMIServiceReference.DocumentImportResponse) Implements EDMIServiceReference.IEDMIService.ImportFileAsync
- Return MyBase.Channel.ImportFileAsync(request)
- End Function
-
- Public Function ImportFileAsync(ByVal Contents() As Byte, ByVal DocumentType As String, ByVal FileName As String, ByVal ObjectStoreId As Long, ByVal RetentionDays As Long) As System.Threading.Tasks.Task(Of EDMIServiceReference.DocumentImportResponse)
- Dim inValue As EDMIServiceReference.DocumentImportRequest = New EDMIServiceReference.DocumentImportRequest()
- inValue.Contents = Contents
- inValue.DocumentType = DocumentType
- inValue.FileName = FileName
- inValue.ObjectStoreId = ObjectStoreId
- inValue.RetentionDays = RetentionDays
- Return CType(Me,EDMIServiceReference.IEDMIService).ImportFileAsync(inValue)
+ Public Function NewFileAsync(ByVal Data As EDMIServiceReference.NewFileRequest) As System.Threading.Tasks.Task(Of EDMIServiceReference.NewFileResponse) Implements EDMIServiceReference.IEDMIService.NewFileAsync
+ Return MyBase.Channel.NewFileAsync(Data)
End Function
_
@@ -1068,95 +1021,6 @@ Namespace EDMIServiceReference
Return CType(Me,EDMIServiceReference.IEDMIService).ListFilesForUserAsync(inValue)
End Function
- _
- Function EDMIServiceReference_IEDMIService_NewObjectId(ByVal request As EDMIServiceReference.NewObjectIdRequest) As EDMIServiceReference.NewObjectIdResponse Implements EDMIServiceReference.IEDMIService.NewObjectId
- Return MyBase.Channel.NewObjectId(request)
- End Function
-
- Public Function NewObjectId(ByVal BusinessEntity As String, ByVal KindType As String, ByVal Who As String) As Long
- Dim inValue As EDMIServiceReference.NewObjectIdRequest = New EDMIServiceReference.NewObjectIdRequest()
- inValue.BusinessEntity = BusinessEntity
- inValue.KindType = KindType
- inValue.Who = Who
- Dim retVal As EDMIServiceReference.NewObjectIdResponse = CType(Me,EDMIServiceReference.IEDMIService).NewObjectId(inValue)
- Return retVal.ObjectId
- End Function
-
- _
- Function EDMIServiceReference_IEDMIService_NewObjectIdAsync(ByVal request As EDMIServiceReference.NewObjectIdRequest) As System.Threading.Tasks.Task(Of EDMIServiceReference.NewObjectIdResponse) Implements EDMIServiceReference.IEDMIService.NewObjectIdAsync
- Return MyBase.Channel.NewObjectIdAsync(request)
- End Function
-
- Public Function NewObjectIdAsync(ByVal BusinessEntity As String, ByVal KindType As String, ByVal Who As String) As System.Threading.Tasks.Task(Of EDMIServiceReference.NewObjectIdResponse)
- Dim inValue As EDMIServiceReference.NewObjectIdRequest = New EDMIServiceReference.NewObjectIdRequest()
- inValue.BusinessEntity = BusinessEntity
- inValue.KindType = KindType
- inValue.Who = Who
- Return CType(Me,EDMIServiceReference.IEDMIService).NewObjectIdAsync(inValue)
- End Function
-
- _
- Function EDMIServiceReference_IEDMIService_NewFileObject(ByVal request As EDMIServiceReference.NewFileObjectRequest) As EDMIServiceReference.NewFileObjectResponse Implements EDMIServiceReference.IEDMIService.NewFileObject
- Return MyBase.Channel.NewFileObject(request)
- End Function
-
- Public Function NewFileObject(ByVal DateImported As Date, ByVal Extension As String, ByVal KeepExtension As Boolean, ByVal ObjectId As Long, ByVal StoreType As String) As String
- Dim inValue As EDMIServiceReference.NewFileObjectRequest = New EDMIServiceReference.NewFileObjectRequest()
- inValue.DateImported = DateImported
- inValue.Extension = Extension
- inValue.KeepExtension = KeepExtension
- inValue.ObjectId = ObjectId
- inValue.StoreType = StoreType
- Dim retVal As EDMIServiceReference.NewFileObjectResponse = CType(Me,EDMIServiceReference.IEDMIService).NewFileObject(inValue)
- Return retVal.FileObjectPath
- End Function
-
- _
- Function EDMIServiceReference_IEDMIService_NewFileObjectAsync(ByVal request As EDMIServiceReference.NewFileObjectRequest) As System.Threading.Tasks.Task(Of EDMIServiceReference.NewFileObjectResponse) Implements EDMIServiceReference.IEDMIService.NewFileObjectAsync
- Return MyBase.Channel.NewFileObjectAsync(request)
- End Function
-
- Public Function NewFileObjectAsync(ByVal DateImported As Date, ByVal Extension As String, ByVal KeepExtension As Boolean, ByVal ObjectId As Long, ByVal StoreType As String) As System.Threading.Tasks.Task(Of EDMIServiceReference.NewFileObjectResponse)
- Dim inValue As EDMIServiceReference.NewFileObjectRequest = New EDMIServiceReference.NewFileObjectRequest()
- inValue.DateImported = DateImported
- inValue.Extension = Extension
- inValue.KeepExtension = KeepExtension
- inValue.ObjectId = ObjectId
- inValue.StoreType = StoreType
- Return CType(Me,EDMIServiceReference.IEDMIService).NewFileObjectAsync(inValue)
- End Function
-
- _
- Function EDMIServiceReference_IEDMIService_ImportFileIntoFileObject(ByVal request As EDMIServiceReference.ImportFileIntoFileObjectRequest) As EDMIServiceReference.ImportFileIntoFileObjectResponse Implements EDMIServiceReference.IEDMIService.ImportFileIntoFileObject
- Return MyBase.Channel.ImportFileIntoFileObject(request)
- End Function
-
- Public Function ImportFileIntoFileObject(ByVal Contents() As Byte, ByVal FilePath As String, ByVal ObjectId As Long, ByVal ObjectStoreType As String, ByVal Who As String) As Boolean
- Dim inValue As EDMIServiceReference.ImportFileIntoFileObjectRequest = New EDMIServiceReference.ImportFileIntoFileObjectRequest()
- inValue.Contents = Contents
- inValue.FilePath = FilePath
- inValue.ObjectId = ObjectId
- inValue.ObjectStoreType = ObjectStoreType
- inValue.Who = Who
- Dim retVal As EDMIServiceReference.ImportFileIntoFileObjectResponse = CType(Me,EDMIServiceReference.IEDMIService).ImportFileIntoFileObject(inValue)
- Return retVal.Result
- End Function
-
- _
- Function EDMIServiceReference_IEDMIService_ImportFileIntoFileObjectAsync(ByVal request As EDMIServiceReference.ImportFileIntoFileObjectRequest) As System.Threading.Tasks.Task(Of EDMIServiceReference.ImportFileIntoFileObjectResponse) Implements EDMIServiceReference.IEDMIService.ImportFileIntoFileObjectAsync
- Return MyBase.Channel.ImportFileIntoFileObjectAsync(request)
- End Function
-
- Public Function ImportFileIntoFileObjectAsync(ByVal Contents() As Byte, ByVal FilePath As String, ByVal ObjectId As Long, ByVal ObjectStoreType As String, ByVal Who As String) As System.Threading.Tasks.Task(Of EDMIServiceReference.ImportFileIntoFileObjectResponse)
- Dim inValue As EDMIServiceReference.ImportFileIntoFileObjectRequest = New EDMIServiceReference.ImportFileIntoFileObjectRequest()
- inValue.Contents = Contents
- inValue.FilePath = FilePath
- inValue.ObjectId = ObjectId
- inValue.ObjectStoreType = ObjectStoreType
- inValue.Who = Who
- Return CType(Me,EDMIServiceReference.IEDMIService).ImportFileIntoFileObjectAsync(inValue)
- End Function
-
_
Function EDMIServiceReference_IEDMIService_TestObjectIdExists(ByVal request As EDMIServiceReference.TestObjectIdExistsRequest) As EDMIServiceReference.TestObjectIdExistsResponse Implements EDMIServiceReference.IEDMIService.TestObjectIdExists
Return MyBase.Channel.TestObjectIdExists(request)
diff --git a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/service.wsdl b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/service.wsdl
index 84c376ce..e4080760 100644
--- a/Modules.EDMIAPI/Connected Services/EDMIServiceReference/service.wsdl
+++ b/Modules.EDMIAPI/Connected Services/EDMIServiceReference/service.wsdl
@@ -173,17 +173,14 @@
-
-
-
+
+
+
-
+
-
-
-
@@ -225,42 +222,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Modules.EDMIAPI/DatabaseWithFallback.vb b/Modules.EDMIAPI/DatabaseWithFallback.vb
index 78326af2..716a7d5b 100644
--- a/Modules.EDMIAPI/DatabaseWithFallback.vb
+++ b/Modules.EDMIAPI/DatabaseWithFallback.vb
@@ -33,20 +33,6 @@ Public Class DatabaseWithFallback
_DatabaseIDB = DatabaseIDB
End Sub
- '''
- ''' Attempt at making loading big tables less annoying
- '''
- '''
- Public Function GetDatatable(pTable As TableType, Optional FilterExpression As String = "", Optional SortByColumn As String = "", Optional ForceFallback As Boolean = False)
- Dim oTable = Tables.Where(Function(t) t.DatabaseType = pTable).SingleOrDefault()
-
- If oTable Is Nothing Then
- Return Nothing
- Else
- Return GetDatatable(oTable.TableName, oTable.SQLCommand, oTable.DatabaseType, FilterExpression, SortByColumn, ForceFallback)
- End If
- End Function
-
Public Function GetDatatable(pDataTableName As String, pFallbackSQL As String, pFallbackType As Constants.DatabaseType, Optional pFilterExpression As String = "", Optional pSortByColumn As String = "", Optional pForceFallback As Boolean = False) As DataTable
Try
Dim oResult As DataTable = Nothing
diff --git a/Modules.EDMIAPI/EDMI.API.vbproj b/Modules.EDMIAPI/EDMI.API.vbproj
index 5a2c4f1a..bd268a61 100644
--- a/Modules.EDMIAPI/EDMI.API.vbproj
+++ b/Modules.EDMIAPI/EDMI.API.vbproj
@@ -72,6 +72,7 @@
+
@@ -108,9 +109,6 @@
-
- Reference.svcmap
-
Reference.svcmap
@@ -120,13 +118,7 @@
Reference.svcmap
-
- Reference.svcmap
-
-
- Reference.svcmap
-
-
+
Reference.svcmap
@@ -150,6 +142,9 @@
Designer
+
+ Designer
+
Designer
@@ -190,6 +185,10 @@
{eaf0ea75-5fa7-485d-89c7-b2d843b03a96}
Database
+
+ {991d0231-4623-496d-8bd0-9ca906029cbc}
+ Filesystem
+
{d3c8cfed-d6f6-43a8-9bdf-454145d0352f}
Language