EDMIService: Rework NewFile and SetAttributeValue

This commit is contained in:
Jonathan Jenne
2021-11-29 11:07:46 +01:00
parent 2bd54ccad0
commit 23aad7e9c0
28 changed files with 847 additions and 203 deletions

View File

@@ -0,0 +1,26 @@
Imports System.Runtime.Serialization
Imports DigitalData.Modules.Language
Imports DigitalData.Modules.EDMI.API.Rights
Namespace Messages
<DataContract>
<Serializable>
Public Class AccessRightResult
Inherits BaseResponse
<DataMember>
Public Property Right As AccessRight = AccessRight.VIEW_ONLY
Public Sub New(AccessRight As AccessRight)
MyBase.New()
Right = AccessRight
End Sub
Public Sub New(Exception As Exception)
MyBase.New()
OK = False
ErrorMessage = Exception.Message
End Sub
End Class
End Namespace

View File

@@ -0,0 +1,37 @@
Imports System.Runtime.Serialization
Namespace Messages
<Serializable>
<DataContract>
<KnownType(GetType(DBNull))>
Public MustInherit Class BaseResponse
<DataMember>
Public Property OK As Boolean
<DataMember>
Public Property ErrorMessage As String
<DataMember>
Public Property ErrorDetails As String
Public Sub New()
OK = True
End Sub
Public Sub New(Message As String)
OK = False
ErrorMessage = Message
End Sub
Public Sub New(Exception As Exception)
OK = False
ErrorMessage = Exception.Message
End Sub
Public Sub New(Exception As Exception, Details As String)
OK = False
ErrorMessage = Exception.Message
ErrorDetails = Details
End Sub
End Class
End Namespace

View File

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

View File

@@ -0,0 +1,101 @@
Imports System.IO
Imports System.Runtime.Serialization
Imports System.ServiceModel
Imports DigitalData.Modules.EDMI.API.Rights
Namespace Messages
#Region "DocumentImport"
<MessageContract>
Public Class DocumentImportRequest
<MessageBodyMember>
Public Contents() As Byte
<MessageBodyMember>
Public ObjectStoreId As Long
<MessageBodyMember>
Public FileName As String
<MessageBodyMember>
Public DocumentType As String
<MessageBodyMember>
Public RetentionDays As Long = 0
End Class
<MessageContract>
Public Class DocumentImportResponse
<MessageBodyMember>
Public ObjectId As Long
End Class
#End Region
#Region "DocumentStream"
<MessageContract>
Public Class DocumentStreamRequest
<MessageBodyMember>
Public ObjectId As Long
End Class
<MessageContract>
Public Class DocumentStreamResponse
<MessageHeader(MustUnderstand:=True)>
Public FileName As String
<MessageBodyMember(Order:=1)>
Public FileContents As Stream
End Class
#End Region
#Region "DocumentInfo"
<MessageContract>
Public Class DocumentInfoRequest
<MessageBodyMember>
Public ObjectId As Long
<MessageBodyMember>
Public UserId As Long
End Class
<MessageContract>
Public Class DocumentInfoResponse
<MessageBodyMember>
Public FullPath As String
<MessageBodyMember>
Public FileRight As AccessRight
End Class
#End Region
#Region "DocumentList"
<MessageContract>
<KnownType(GetType(DBNull))>
Public Class DocumentListResponse
<MessageBodyMember>
Public Datatable As DataTable
End Class
#End Region
#Region "Helpers"
<MessageContract>
Public Class TestObjectIdExistsRequest
<MessageBodyMember>
Public ObjectId As Long
End Class
<MessageContract>
Public Class TestObjectIdExistsResponse
Public Sub New(pExists As Boolean)
Exists = pExists
End Sub
<MessageBodyMember>
Public Exists As Boolean = False
<MessageBodyMember>
Public Inactive As Boolean = False
<MessageBodyMember>
Public Deleted As Boolean = False
End Class
#End Region
End Namespace