EDMI: Add GetAccessRight, Add Init Jobs for EDMIService

This commit is contained in:
Jonathan Jenne 2020-12-22 15:34:57 +01:00
parent 91d769d6b9
commit 2800169251
12 changed files with 319 additions and 125 deletions

View File

@ -151,6 +151,22 @@ Public Class Client
End Try
End Function
Public Async Function GetAccessRightAsync(UserId As Long, ObjectId As Long) As Task(Of Rights.AccessRight)
Try
Dim oResponse As AccessRightResult = Await _channel.GetAccessRightAsync(UserId, ObjectId)
If oResponse.OK Then
Return oResponse.Right
Else
_logger.Warn("Rights from server could not be fetched for UserId [{0}] on Object [{1}]. Returning default Right View", UserId, ObjectId)
Return Rights.AccessRight.VIEW_ONLY
End If
Catch ex As Exception
_logger.Error(ex)
Throw ex
End Try
End Function
''' <summary>
''' Aborts the channel and creates a new connection
''' </summary>

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="AccessRightResult" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>DigitalData.Modules.EDMI.API.EDMIServiceReference.AccessRightResult, Connected Services.EDMIServiceReference.Reference.vb.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

View File

@ -0,0 +1,30 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/DigitalData.Modules.EDMI.API" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/DigitalData.Modules.EDMI.API" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
<xs:simpleType name="Rights.AccessRight">
<xs:restriction base="xs:string">
<xs:enumeration value="VIEW_ONLY">
<xs:annotation>
<xs:appinfo>
<EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">1</EnumerationValue>
</xs:appinfo>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="VIEW_EXPORT">
<xs:annotation>
<xs:appinfo>
<EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">2</EnumerationValue>
</xs:appinfo>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="FULL">
<xs:annotation>
<xs:appinfo>
<EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">4</EnumerationValue>
</xs:appinfo>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:element name="Rights.AccessRight" nillable="true" type="tns:Rights.AccessRight" />
</xs:schema>

View File

@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Messages" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Messages" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import namespace="http://schemas.datacontract.org/2004/07/DigitalData.Modules.EDMI.API" />
<xs:complexType name="TableResult">
<xs:complexContent mixed="false">
<xs:extension base="tns:BaseResult">
@ -48,4 +49,14 @@
</xs:complexContent>
</xs:complexType>
<xs:element name="NonQueryResult" nillable="true" type="tns:NonQueryResult" />
<xs:complexType name="AccessRightResult">
<xs:complexContent mixed="false">
<xs:extension base="tns:BaseResult">
<xs:sequence>
<xs:element xmlns:q1="http://schemas.datacontract.org/2004/07/DigitalData.Modules.EDMI.API" minOccurs="0" name="Right" type="q1:Rights.AccessRight" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="AccessRightResult" nillable="true" type="tns:AccessRightResult" />
</xs:schema>

View File

@ -7,6 +7,7 @@
<xsd:import namespace="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Messages" />
<xsd:import namespace="http://schemas.datacontract.org/2004/07/System" />
<xsd:import namespace="http://schemas.datacontract.org/2004/07/System.Data" />
<xsd:import namespace="http://schemas.datacontract.org/2004/07/DigitalData.Modules.EDMI.API" />
<xsd:import namespace="http://schemas.microsoft.com/Message" />
</xsd:schema>
</wsdl:types>
@ -76,6 +77,12 @@
<wsdl:message name="IEDMIService_ExecuteNonQuery_MSSQL_ECM_OutputMessage">
<wsdl:part name="parameters" element="tns:ExecuteNonQuery_MSSQL_ECMResponse" />
</wsdl:message>
<wsdl:message name="IEDMIService_GetAccessRight_InputMessage">
<wsdl:part name="parameters" element="tns:GetAccessRight" />
</wsdl:message>
<wsdl:message name="IEDMIService_GetAccessRight_OutputMessage">
<wsdl:part name="parameters" element="tns:GetAccessRightResponse" />
</wsdl:message>
<wsdl:message name="DocumentImportRequest">
<wsdl:part name="parameters" element="tns:DocumentImportRequest" />
</wsdl:message>
@ -140,6 +147,10 @@
<wsdl:input wsaw:Action="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_MSSQL_ECM" message="tns:IEDMIService_ExecuteNonQuery_MSSQL_ECM_InputMessage" />
<wsdl:output wsaw:Action="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_MSSQL_ECMResponse" message="tns:IEDMIService_ExecuteNonQuery_MSSQL_ECM_OutputMessage" />
</wsdl:operation>
<wsdl:operation name="GetAccessRight">
<wsdl:input wsaw:Action="http://DigitalData.Services.EDMIService/IEDMIService/GetAccessRight" message="tns:IEDMIService_GetAccessRight_InputMessage" />
<wsdl:output wsaw:Action="http://DigitalData.Services.EDMIService/IEDMIService/GetAccessRightResponse" message="tns:IEDMIService_GetAccessRight_OutputMessage" />
</wsdl:operation>
<wsdl:operation name="ImportFile">
<wsdl:input wsaw:Action="http://DigitalData.Services.EDMIService/IEDMIService/ImportFile" name="DocumentImportRequest" message="tns:DocumentImportRequest" />
<wsdl:output wsaw:Action="http://DigitalData.Services.EDMIService/IEDMIService/ImportFileResponse" name="DocumentImportResponse" message="tns:DocumentImportResponse" />

View File

@ -156,6 +156,21 @@
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="GetAccessRight">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="UserId" type="xs:long" />
<xs:element minOccurs="0" name="ObjectId" type="xs:long" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="GetAccessRightResponse">
<xs:complexType>
<xs:sequence>
<xs:element xmlns:q11="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Messages" minOccurs="0" name="GetAccessRightResult" nillable="true" type="q11:AccessRightResult" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="DocumentImportRequest">
<xs:complexType>
<xs:sequence>
@ -184,7 +199,7 @@
<xs:element name="DocumentStreamResponse">
<xs:complexType>
<xs:sequence>
<xs:element xmlns:q11="http://schemas.microsoft.com/Message" name="FileContents" type="q11:StreamBody" />
<xs:element xmlns:q12="http://schemas.microsoft.com/Message" name="FileContents" type="q12:StreamBody" />
</xs:sequence>
</xs:complexType>
</xs:element>

View File

@ -29,6 +29,7 @@
<MetadataFile FileName="DigitalData.Services.EDMIService.Messages.xsd" MetadataType="Schema" ID="e5cf75a6-ec46-4c8a-867b-a1c0a9ce8894" SourceId="1" SourceUrl="net.tcp://172.24.12.39:9000/DigitalData/Services/Main/mex" />
<MetadataFile FileName="System.xsd" MetadataType="Schema" ID="e0db7004-6943-4cf8-b88f-4811ed14a341" SourceId="1" SourceUrl="net.tcp://172.24.12.39:9000/DigitalData/Services/Main/mex" />
<MetadataFile FileName="System.Data.xsd" MetadataType="Schema" ID="6c7bdb47-eea4-4d03-bc52-9747c865bbf0" SourceId="1" SourceUrl="net.tcp://172.24.12.39:9000/DigitalData/Services/Main/mex" />
<MetadataFile FileName="DigitalData.Modules.EDMI.API.xsd" MetadataType="Schema" ID="b498933f-9053-4382-b385-089a8b611e4b" SourceId="1" SourceUrl="net.tcp://172.24.12.39:9000/DigitalData/Services/Main/mex" />
<MetadataFile FileName="Message.xsd" MetadataType="Schema" ID="2589e82f-d68f-4843-b153-a80edf895f82" SourceId="1" SourceUrl="net.tcp://172.24.12.39:9000/DigitalData/Services/Main/mex" />
</Metadata>
<Extensions>

View File

@ -23,6 +23,7 @@ Namespace EDMIServiceReference
System.SerializableAttribute(), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.ScalarResult)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.NonQueryResult)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.AccessRightResult)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.TableResult))> _
Partial Public Class BaseResult
Inherits Object
@ -82,182 +83,229 @@ Namespace EDMIServiceReference
End If
End Sub
End Class
<System.Diagnostics.DebuggerStepThroughAttribute(), _
System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0"), _
System.Runtime.Serialization.DataContractAttribute(Name:="ScalarResult", [Namespace]:="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Messages"& _
""), _
System.SerializableAttribute(), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.TableResult)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.BaseResult)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.NonQueryResult)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(System.DBNull))> _
<System.Diagnostics.DebuggerStepThroughAttribute(),
System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0"),
System.Runtime.Serialization.DataContractAttribute(Name:="ScalarResult", [Namespace]:="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Messages" &
""),
System.SerializableAttribute(),
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.TableResult)),
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.BaseResult)),
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.NonQueryResult)),
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.AccessRightResult)),
System.Runtime.Serialization.KnownTypeAttribute(GetType(System.DBNull)),
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.RightsAccessRight))>
Partial Public Class ScalarResult
Inherits EDMIServiceReference.BaseResult
<System.Runtime.Serialization.OptionalFieldAttribute()> _
<System.Runtime.Serialization.OptionalFieldAttribute()>
Private ScalarField As Object
<System.Runtime.Serialization.DataMemberAttribute()> _
<System.Runtime.Serialization.DataMemberAttribute()>
Public Property Scalar() As Object
Get
Return Me.ScalarField
End Get
Set
If (Object.ReferenceEquals(Me.ScalarField, value) <> true) Then
Me.ScalarField = value
If (Object.ReferenceEquals(Me.ScalarField, Value) <> True) Then
Me.ScalarField = Value
Me.RaisePropertyChanged("Scalar")
End If
End Set
End Property
End Class
<System.Diagnostics.DebuggerStepThroughAttribute(), _
System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0"), _
System.Runtime.Serialization.DataContractAttribute(Name:="NonQueryResult", [Namespace]:="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Messages"& _
""), _
System.SerializableAttribute()> _
<System.Diagnostics.DebuggerStepThroughAttribute(),
System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0"),
System.Runtime.Serialization.DataContractAttribute(Name:="NonQueryResult", [Namespace]:="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Messages" &
""),
System.SerializableAttribute()>
Partial Public Class NonQueryResult
Inherits EDMIServiceReference.BaseResult
End Class
<System.Diagnostics.DebuggerStepThroughAttribute(), _
System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0"), _
System.Runtime.Serialization.DataContractAttribute(Name:="TableResult", [Namespace]:="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Messages"& _
""), _
System.SerializableAttribute()> _
<System.Diagnostics.DebuggerStepThroughAttribute(),
System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0"),
System.Runtime.Serialization.DataContractAttribute(Name:="AccessRightResult", [Namespace]:="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Messages" &
""),
System.SerializableAttribute()>
Partial Public Class AccessRightResult
Inherits EDMIServiceReference.BaseResult
<System.Runtime.Serialization.OptionalFieldAttribute()>
Private RightField As EDMIServiceReference.RightsAccessRight
<System.Runtime.Serialization.DataMemberAttribute()>
Public Property Right() As EDMIServiceReference.RightsAccessRight
Get
Return Me.RightField
End Get
Set
If (Me.RightField.Equals(Value) <> True) Then
Me.RightField = Value
Me.RaisePropertyChanged("Right")
End If
End Set
End Property
End Class
<System.Diagnostics.DebuggerStepThroughAttribute(),
System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0"),
System.Runtime.Serialization.DataContractAttribute(Name:="TableResult", [Namespace]:="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Messages" &
""),
System.SerializableAttribute()>
Partial Public Class TableResult
Inherits EDMIServiceReference.BaseResult
<System.Runtime.Serialization.OptionalFieldAttribute()> _
<System.Runtime.Serialization.OptionalFieldAttribute()>
Private TableField As System.Data.DataTable
<System.Runtime.Serialization.DataMemberAttribute()> _
<System.Runtime.Serialization.DataMemberAttribute()>
Public Property Table() As System.Data.DataTable
Get
Return Me.TableField
End Get
Set
If (Object.ReferenceEquals(Me.TableField, value) <> true) Then
Me.TableField = value
If (Object.ReferenceEquals(Me.TableField, Value) <> True) Then
Me.TableField = Value
Me.RaisePropertyChanged("Table")
End If
End Set
End Property
End Class
<System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0"), _
System.ServiceModel.ServiceContractAttribute([Namespace]:="http://DigitalData.Services.EDMIService", ConfigurationName:="EDMIServiceReference.IEDMIService")> _
<System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0"),
System.Runtime.Serialization.DataContractAttribute(Name:="Rights.AccessRight", [Namespace]:="http://schemas.datacontract.org/2004/07/DigitalData.Modules.EDMI.API")>
Public Enum RightsAccessRight As Integer
<System.Runtime.Serialization.EnumMemberAttribute()>
VIEW_ONLY = 1
<System.Runtime.Serialization.EnumMemberAttribute()>
VIEW_EXPORT = 2
<System.Runtime.Serialization.EnumMemberAttribute()>
FULL = 4
End Enum
<System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0"),
System.ServiceModel.ServiceContractAttribute([Namespace]:="http://DigitalData.Services.EDMIService", ConfigurationName:="EDMIServiceReference.IEDMIService")>
Public Interface IEDMIService
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/Heartbeat", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/HeartbeatResponse")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/Heartbeat", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/HeartbeatResponse")>
Function Heartbeat() As Boolean
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/Heartbeat", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/HeartbeatResponse")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/Heartbeat", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/HeartbeatResponse")>
Function HeartbeatAsync() As System.Threading.Tasks.Task(Of Boolean)
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatableFromCache", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatableFromCacheResp"& _
"onse")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatableFromCache", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatableFromCacheResp" &
"onse")>
Function ReturnDatatableFromCache(ByVal Name As String, ByVal FilterExpression As String, ByVal SortByColumn As String) As EDMIServiceReference.TableResult
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatableFromCache", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatableFromCacheResp"& _
"onse")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatableFromCache", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatableFromCacheResp" &
"onse")>
Function ReturnDatatableFromCacheAsync(ByVal Name As String, ByVal FilterExpression As String, ByVal SortByColumn As String) As System.Threading.Tasks.Task(Of EDMIServiceReference.TableResult)
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatable_Firebird", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatable_FirebirdResp"& _
"onse")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatable_Firebird", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatable_FirebirdResp" &
"onse")>
Function ReturnDatatable_Firebird(ByVal SQL As String) As EDMIServiceReference.TableResult
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatable_Firebird", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatable_FirebirdResp"& _
"onse")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatable_Firebird", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatable_FirebirdResp" &
"onse")>
Function ReturnDatatable_FirebirdAsync(ByVal SQL As String) As System.Threading.Tasks.Task(Of EDMIServiceReference.TableResult)
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnScalar_Firebird", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnScalar_FirebirdRespons"& _
"e")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnScalar_Firebird", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnScalar_FirebirdRespons" &
"e")>
Function ReturnScalar_Firebird(ByVal SQL As String) As EDMIServiceReference.ScalarResult
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnScalar_Firebird", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnScalar_FirebirdRespons"& _
"e")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnScalar_Firebird", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnScalar_FirebirdRespons" &
"e")>
Function ReturnScalar_FirebirdAsync(ByVal SQL As String) As System.Threading.Tasks.Task(Of EDMIServiceReference.ScalarResult)
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_Firebird", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_FirebirdResp"& _
"onse")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_Firebird", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_FirebirdResp" &
"onse")>
Function ExecuteNonQuery_Firebird(ByVal SQL As String) As EDMIServiceReference.NonQueryResult
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_Firebird", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_FirebirdResp"& _
"onse")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_Firebird", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_FirebirdResp" &
"onse")>
Function ExecuteNonQuery_FirebirdAsync(ByVal SQL As String) As System.Threading.Tasks.Task(Of EDMIServiceReference.NonQueryResult)
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatable_MSSQL_IDB", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatable_MSSQL_IDBRes"& _
"ponse")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatable_MSSQL_IDB", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatable_MSSQL_IDBRes" &
"ponse")>
Function ReturnDatatable_MSSQL_IDB(ByVal SQL As String) As EDMIServiceReference.TableResult
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatable_MSSQL_IDB", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatable_MSSQL_IDBRes"& _
"ponse")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatable_MSSQL_IDB", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatable_MSSQL_IDBRes" &
"ponse")>
Function ReturnDatatable_MSSQL_IDBAsync(ByVal SQL As String) As System.Threading.Tasks.Task(Of EDMIServiceReference.TableResult)
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnScalar_MSSQL_IDB", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnScalar_MSSQL_IDBRespon"& _
"se")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnScalar_MSSQL_IDB", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnScalar_MSSQL_IDBRespon" &
"se")>
Function ReturnScalar_MSSQL_IDB(ByVal SQL As String) As EDMIServiceReference.ScalarResult
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnScalar_MSSQL_IDB", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnScalar_MSSQL_IDBRespon"& _
"se")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnScalar_MSSQL_IDB", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnScalar_MSSQL_IDBRespon" &
"se")>
Function ReturnScalar_MSSQL_IDBAsync(ByVal SQL As String) As System.Threading.Tasks.Task(Of EDMIServiceReference.ScalarResult)
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_MSSQL_IDB", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_MSSQL_IDBRes"& _
"ponse")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_MSSQL_IDB", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_MSSQL_IDBRes" &
"ponse")>
Function ExecuteNonQuery_MSSQL_IDB(ByVal SQL As String) As EDMIServiceReference.NonQueryResult
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_MSSQL_IDB", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_MSSQL_IDBRes"& _
"ponse")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_MSSQL_IDB", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_MSSQL_IDBRes" &
"ponse")>
Function ExecuteNonQuery_MSSQL_IDBAsync(ByVal SQL As String) As System.Threading.Tasks.Task(Of EDMIServiceReference.NonQueryResult)
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatable_MSSQL_ECM", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatable_MSSQL_ECMRes"& _
"ponse")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatable_MSSQL_ECM", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatable_MSSQL_ECMRes" &
"ponse")>
Function ReturnDatatable_MSSQL_ECM(ByVal SQL As String) As EDMIServiceReference.TableResult
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatable_MSSQL_ECM", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatable_MSSQL_ECMRes"& _
"ponse")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatable_MSSQL_ECM", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnDatatable_MSSQL_ECMRes" &
"ponse")>
Function ReturnDatatable_MSSQL_ECMAsync(ByVal SQL As String) As System.Threading.Tasks.Task(Of EDMIServiceReference.TableResult)
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnScalar_MSSQL_ECM", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnScalar_MSSQL_ECMRespon"& _
"se")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnScalar_MSSQL_ECM", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnScalar_MSSQL_ECMRespon" &
"se")>
Function ReturnScalar_MSSQL_ECM(ByVal SQL As String) As EDMIServiceReference.ScalarResult
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnScalar_MSSQL_ECM", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnScalar_MSSQL_ECMRespon"& _
"se")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnScalar_MSSQL_ECM", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ReturnScalar_MSSQL_ECMRespon" &
"se")>
Function ReturnScalar_MSSQL_ECMAsync(ByVal SQL As String) As System.Threading.Tasks.Task(Of EDMIServiceReference.ScalarResult)
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_MSSQL_ECM", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_MSSQL_ECMRes"& _
"ponse")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_MSSQL_ECM", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_MSSQL_ECMRes" &
"ponse")>
Function ExecuteNonQuery_MSSQL_ECM(ByVal SQL As String) As EDMIServiceReference.NonQueryResult
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_MSSQL_ECM", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_MSSQL_ECMRes"& _
"ponse")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_MSSQL_ECM", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ExecuteNonQuery_MSSQL_ECMRes" &
"ponse")>
Function ExecuteNonQuery_MSSQL_ECMAsync(ByVal SQL As String) As System.Threading.Tasks.Task(Of EDMIServiceReference.NonQueryResult)
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/GetAccessRight", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/GetAccessRightResponse")>
Function GetAccessRight(ByVal UserId As Long, ByVal ObjectId As Long) As EDMIServiceReference.AccessRightResult
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/GetAccessRight", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/GetAccessRightResponse")>
Function GetAccessRightAsync(ByVal UserId As Long, ByVal ObjectId As Long) As System.Threading.Tasks.Task(Of EDMIServiceReference.AccessRightResult)
'CODEGEN: Der Nachrichtenvertrag wird generiert, da der Wrappername (DocumentImportRequest) von Nachricht "DocumentImportRequest" nicht mit dem Standardwert (ImportFile) übereinstimmt.
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ImportFile", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ImportFileResponse")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ImportFile", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ImportFileResponse")>
Function ImportFile(ByVal request As EDMIServiceReference.DocumentImportRequest) As EDMIServiceReference.DocumentImportResponse
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ImportFile", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ImportFileResponse")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ImportFile", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ImportFileResponse")>
Function ImportFileAsync(ByVal request As EDMIServiceReference.DocumentImportRequest) As System.Threading.Tasks.Task(Of EDMIServiceReference.DocumentImportResponse)
'CODEGEN: Der Nachrichtenvertrag wird generiert, da der Wrappername (DocumentStreamRequest) von Nachricht "DocumentStreamRequest" nicht mit dem Standardwert (GetFileByObjectId) übereinstimmt.
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/GetFileByObjectId", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/GetFileByObjectIdResponse")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/GetFileByObjectId", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/GetFileByObjectIdResponse")>
Function GetFileByObjectId(ByVal request As EDMIServiceReference.DocumentStreamRequest) As EDMIServiceReference.DocumentStreamResponse
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/GetFileByObjectId", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/GetFileByObjectIdResponse")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/GetFileByObjectId", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/GetFileByObjectIdResponse")>
Function GetFileByObjectIdAsync(ByVal request As EDMIServiceReference.DocumentStreamRequest) As System.Threading.Tasks.Task(Of EDMIServiceReference.DocumentStreamResponse)
'CODEGEN: Der Nachrichtenvertrag wird generiert, da der Vorgang ListFilesForUser weder in RPC noch in einem Dokument eingeschlossen ist.
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ListFilesForUser", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ListFilesForUserResponse")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ListFilesForUser", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ListFilesForUserResponse")>
Function ListFilesForUser(ByVal request As EDMIServiceReference.ListFilesForUserRequest) As EDMIServiceReference.DocumentListResponse
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ListFilesForUser", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ListFilesForUserResponse")> _
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/ListFilesForUser", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/ListFilesForUserResponse")>
Function ListFilesForUserAsync(ByVal request As EDMIServiceReference.ListFilesForUserRequest) As System.Threading.Tasks.Task(Of EDMIServiceReference.DocumentListResponse)
End Interface
<System.Diagnostics.DebuggerStepThroughAttribute(), _
System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0"), _
System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced), _
@ -503,6 +551,14 @@ Namespace EDMIServiceReference
Return MyBase.Channel.ExecuteNonQuery_MSSQL_ECMAsync(SQL)
End Function
Public Function GetAccessRight(ByVal UserId As Long, ByVal ObjectId As Long) As EDMIServiceReference.AccessRightResult Implements EDMIServiceReference.IEDMIService.GetAccessRight
Return MyBase.Channel.GetAccessRight(UserId, ObjectId)
End Function
Public Function GetAccessRightAsync(ByVal UserId As Long, ByVal ObjectId As Long) As System.Threading.Tasks.Task(Of EDMIServiceReference.AccessRightResult) Implements EDMIServiceReference.IEDMIService.GetAccessRightAsync
Return MyBase.Channel.GetAccessRightAsync(UserId, ObjectId)
End Function
<System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)> _
Function EDMIServiceReference_IEDMIService_ImportFile(ByVal request As EDMIServiceReference.DocumentImportRequest) As EDMIServiceReference.DocumentImportResponse Implements EDMIServiceReference.IEDMIService.ImportFile
Return MyBase.Channel.ImportFile(request)

View File

@ -140,6 +140,15 @@
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="GetAccessRight">
<soap12:operation soapAction="http://DigitalData.Services.EDMIService/IEDMIService/GetAccessRight" style="document" />
<wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="ImportFile">
<soap12:operation soapAction="http://DigitalData.Services.EDMIService/IEDMIService/ImportFile" style="document" />
<wsdl:input name="DocumentImportRequest">

View File

@ -106,6 +106,9 @@
</ItemGroup>
<ItemGroup>
<None Include="app.config" />
<None Include="Connected Services\EDMIServiceReference\DigitalData.Modules.EDMI.API.EDMIServiceReference.AccessRightResult.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\EDMIServiceReference\DigitalData.Modules.EDMI.API.EDMIServiceReference.DocumentImportResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
@ -124,6 +127,9 @@
<None Include="Connected Services\EDMIServiceReference\DigitalData.Modules.EDMI.API.EDMIServiceReference.TableResult.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\EDMIServiceReference\DigitalData.Modules.EDMI.API.xsd">
<SubType>Designer</SubType>
</None>
<None Include="Connected Services\EDMIServiceReference\DigitalData.Services.EDMIService.Messages.xsd">
<SubType>Designer</SubType>
</None>

View File

@ -3,9 +3,12 @@ Imports DigitalData.Modules.Language
Imports DigitalData.Modules.EDMI.API.Rights
Namespace Messages
<DataContract>
<Serializable>
Public Class AccessRightResult
Inherits BaseResult
<DataMember>
Public Property Right As AccessRight = AccessRight.VIEW_ONLY
Public Sub New(AccessRight As AccessRight)

View File

@ -52,26 +52,49 @@ Public Class Scheduler
Dim oTitle As String = oRow.Item("TITLE")
Dim oGuid As Integer = oRow.Item("GUID")
Dim oTrigger As ITrigger
Dim oCronTrigger As ITrigger
Dim oInitTrigger As ITrigger
Dim oJob As IJobDetail
Dim oInitJob As IJobDetail
Dim oJobData As New JobDataMap From {
{"LogConfig", _LogConfig},
{"MSSQL", _MSSQL},
{"CronJobId", oGuid},
{"CronJobTitle", oTitle}
}
Dim oIdentity As String = $"CRON-JOB-{oGuid}"
oTrigger = TriggerBuilder.Create().
WithIdentity(oIdentity, JOB_GROUP).
oCronTrigger = TriggerBuilder.Create().
WithIdentity(oIdentity & "-TRIGGER", JOB_GROUP).
WithCronSchedule(oDefinition).
Build()
oJob = JobBuilder.Create(Of DatatableJob)().
WithIdentity(oIdentity, JOB_GROUP).
UsingJobData(New JobDataMap From {
{"LogConfig", _LogConfig},
{"MSSQL", _MSSQL},
{"CronJobId", oGuid},
{"CronJobTitle", oTitle}
}).
UsingJobData(oJobData).
Build()
Await _Scheduler.ScheduleJob(oJob, oTrigger)
Await _Scheduler.ScheduleJob(oJob, oCronTrigger)
' Also create variant of the job that runs immediately, once
Dim oInitIdentity As String = $"CRON-JOB-INIT-{oGuid}"
oInitTrigger = TriggerBuilder.Create().
WithIdentity(oInitIdentity & "-TRIGGER", JOB_GROUP).
StartNow().
Build()
oInitJob = JobBuilder.Create(Of DatatableJob)().
WithIdentity(oInitIdentity, JOB_GROUP).
UsingJobData(oJobData).
Build()
Await _Scheduler.ScheduleJob(oInitJob, oInitTrigger)
_Logger.Debug("Scheduled a new job for Cron Job [{0}]", oTitle)
Next
Else
@ -83,6 +106,9 @@ Public Class Scheduler
End Try
End Sub
Public Async Function GetCronJobs() As Task(Of DataTable)
Try
Dim oSQL As String = "SELECT * FROM TBAPPSERV_CRON_JOB WHERE ACTIVE = 1"