EDMI: First version of Updating files by replacing them!

This commit is contained in:
Jonathan Jenne
2022-01-31 16:31:13 +01:00
parent ab10268c99
commit 17bbaac7a0
30 changed files with 581 additions and 241 deletions

View File

@@ -196,6 +196,16 @@ Public Class Client
End Try
End Function
Public Async Function UpdateFileAsync(pObjectId As Long, pFilePath As String, Optional pImportOptions As Options.UpdateFileOptions = Nothing) As Task(Of Long)
Try
Dim oUpdateFile As New Modules.IDB.UpdateFile(LogConfig, Channel)
Return Await oUpdateFile.RunAsync(pFilePath, pObjectId, pImportOptions)
Catch ex As Exception
Logger.Error(ex)
Return Nothing
End Try
End Function
Public Async Function Globix_ImportFileAsync(
pFilePath As String,
pProfileId As Integer,

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="UpdateFileResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>DigitalData.Modules.EDMI.API.EDMIServiceReference.UpdateFileResponse, Connected Services.EDMIServiceReference.Reference.vb.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

View File

@@ -24,6 +24,7 @@
<xs:element name="_FileContents" nillable="true" type="xs:base64Binary" />
<xs:element name="_FileExtension" nillable="true" type="xs:string" />
<xs:element name="_FileHash" nillable="true" type="xs:string" />
<xs:element name="_FilePath" nillable="true" type="xs:string" />
<xs:element name="_FileSize" type="xs:long" />
<xs:element name="_ObjectId" type="xs:long" />
</xs:sequence>

View File

@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.IDB.UpdateFile" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.IDB.UpdateFile" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import namespace="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.IDB" />
<xs:import namespace="http://schemas.datacontract.org/2004/07/DigitalData.Modules.ZooFlow.State" />
<xs:import namespace="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Messages" />
<xs:complexType name="UpdateFileRequest">
<xs:sequence>
<xs:element minOccurs="0" name="CreateNewVersion" type="xs:boolean" />
<xs:element xmlns:q1="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.IDB" minOccurs="0" name="File" nillable="true" type="q1:FileProperties" />
<xs:element minOccurs="0" name="ObjectId" type="xs:long" />
<xs:element xmlns:q2="http://schemas.datacontract.org/2004/07/DigitalData.Modules.ZooFlow.State" minOccurs="0" name="User" nillable="true" type="q2:UserState" />
</xs:sequence>
</xs:complexType>
<xs:element name="UpdateFileRequest" nillable="true" type="tns:UpdateFileRequest" />
<xs:complexType name="UpdateFileResponse">
<xs:complexContent mixed="false">
<xs:extension xmlns:q3="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Messages" base="q3:BaseResponse">
<xs:sequence>
<xs:element minOccurs="0" name="ObjectId" type="xs:long" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="UpdateFileResponse" nillable="true" type="tns:UpdateFileResponse" />
</xs:schema>

View File

@@ -19,6 +19,7 @@
<xsd:import namespace="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.IDB" />
<xsd:import namespace="http://schemas.datacontract.org/2004/07/System.IO" />
<xsd:import namespace="http://schemas.datacontract.org/2004/07/DigitalData.Modules.ZooFlow.State" />
<xsd:import namespace="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.IDB.UpdateFile" />
<xsd:import namespace="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.IDB.SetAttributeValue" />
<xsd:import namespace="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.GlobalIndexer.ImportFile" />
<xsd:import namespace="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.IDB.GetFileObject" />
@@ -161,6 +162,12 @@
<wsdl:message name="IEDMIService_NewFile_OutputMessage">
<wsdl:part name="parameters" element="tns:NewFileResponse" />
</wsdl:message>
<wsdl:message name="IEDMIService_UpdateFile_InputMessage">
<wsdl:part name="parameters" element="tns:UpdateFile" />
</wsdl:message>
<wsdl:message name="IEDMIService_UpdateFile_OutputMessage">
<wsdl:part name="parameters" element="tns:UpdateFileResponse" />
</wsdl:message>
<wsdl:message name="IEDMIService_SetAttributeValue_InputMessage">
<wsdl:part name="parameters" element="tns:SetAttributeValue" />
</wsdl:message>
@@ -299,6 +306,10 @@
<wsdl:input wsaw:Action="http://DigitalData.Services.EDMIService/IEDMIService/NewFile" message="tns:IEDMIService_NewFile_InputMessage" />
<wsdl:output wsaw:Action="http://DigitalData.Services.EDMIService/IEDMIService/NewFileResponse" message="tns:IEDMIService_NewFile_OutputMessage" />
</wsdl:operation>
<wsdl:operation name="UpdateFile">
<wsdl:input wsaw:Action="http://DigitalData.Services.EDMIService/IEDMIService/UpdateFile" message="tns:IEDMIService_UpdateFile_InputMessage" />
<wsdl:output wsaw:Action="http://DigitalData.Services.EDMIService/IEDMIService/UpdateFileResponse" message="tns:IEDMIService_UpdateFile_OutputMessage" />
</wsdl:operation>
<wsdl:operation name="SetAttributeValue">
<wsdl:input wsaw:Action="http://DigitalData.Services.EDMIService/IEDMIService/SetAttributeValue" message="tns:IEDMIService_SetAttributeValue_InputMessage" />
<wsdl:output wsaw:Action="http://DigitalData.Services.EDMIService/IEDMIService/SetAttributeValueResponse" message="tns:IEDMIService_SetAttributeValue_OutputMessage" />

View File

@@ -7,6 +7,7 @@
<xs:import namespace="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.Database.GetScalarValue" />
<xs:import namespace="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.Database.ExecuteNonQuery" />
<xs:import namespace="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.IDB.NewFile" />
<xs:import namespace="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.IDB.UpdateFile" />
<xs:import namespace="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.IDB.SetAttributeValue" />
<xs:import namespace="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.GlobalIndexer.ImportFile" />
<xs:import namespace="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.IDB.GetFileObject" />
@@ -246,45 +247,59 @@
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="UpdateFile">
<xs:complexType>
<xs:sequence>
<xs:element xmlns:q21="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.IDB.UpdateFile" minOccurs="0" name="Data" nillable="true" type="q21:UpdateFileRequest" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="UpdateFileResponse">
<xs:complexType>
<xs:sequence>
<xs:element xmlns:q22="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.IDB.UpdateFile" minOccurs="0" name="UpdateFileResult" nillable="true" type="q22:UpdateFileResponse" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SetAttributeValue">
<xs:complexType>
<xs:sequence>
<xs:element xmlns:q21="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.IDB.SetAttributeValue" minOccurs="0" name="Data" nillable="true" type="q21:SetAttributeValueRequest" />
<xs:element xmlns:q23="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.IDB.SetAttributeValue" minOccurs="0" name="Data" nillable="true" type="q23:SetAttributeValueRequest" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SetAttributeValueResponse">
<xs:complexType>
<xs:sequence>
<xs:element xmlns:q22="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.IDB.SetAttributeValue" minOccurs="0" name="SetAttributeValueResult" nillable="true" type="q22:SetAttributeValueResponse" />
<xs:element xmlns:q24="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.IDB.SetAttributeValue" minOccurs="0" name="SetAttributeValueResult" nillable="true" type="q24:SetAttributeValueResponse" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ImportFile">
<xs:complexType>
<xs:sequence>
<xs:element xmlns:q23="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.GlobalIndexer.ImportFile" minOccurs="0" name="Data" nillable="true" type="q23:ImportFileRequest" />
<xs:element xmlns:q25="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.GlobalIndexer.ImportFile" minOccurs="0" name="Data" nillable="true" type="q25:ImportFileRequest" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ImportFileResponse">
<xs:complexType>
<xs:sequence>
<xs:element xmlns:q24="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.GlobalIndexer.ImportFile" minOccurs="0" name="ImportFileResult" nillable="true" type="q24:ImportFileResponse" />
<xs:element xmlns:q26="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.GlobalIndexer.ImportFile" minOccurs="0" name="ImportFileResult" nillable="true" type="q26:ImportFileResponse" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="GetFileObject">
<xs:complexType>
<xs:sequence>
<xs:element xmlns:q25="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.IDB.GetFileObject" minOccurs="0" name="Data" nillable="true" type="q25:GetFileObjectRequest" />
<xs:element xmlns:q27="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.IDB.GetFileObject" minOccurs="0" name="Data" nillable="true" type="q27:GetFileObjectRequest" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="GetFileObjectResponse">
<xs:complexType>
<xs:sequence>
<xs:element xmlns:q26="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.IDB.GetFileObject" minOccurs="0" name="GetFileObjectResult" nillable="true" type="q26:GetFileObjectResponse" />
<xs:element xmlns:q28="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods.IDB.GetFileObject" minOccurs="0" name="GetFileObjectResult" nillable="true" type="q28:GetFileObjectResponse" />
</xs:sequence>
</xs:complexType>
</xs:element>
@@ -298,7 +313,7 @@
<xs:element name="DocumentStreamResponse">
<xs:complexType>
<xs:sequence>
<xs:element xmlns:q27="http://schemas.microsoft.com/Message" name="FileContents" type="q27:StreamBody" />
<xs:element xmlns:q29="http://schemas.microsoft.com/Message" name="FileContents" type="q29:StreamBody" />
</xs:sequence>
</xs:complexType>
</xs:element>
@@ -314,7 +329,7 @@
<xs:element name="DocumentInfoResponse">
<xs:complexType>
<xs:sequence>
<xs:element xmlns:q28="http://schemas.datacontract.org/2004/07/DigitalData.Modules.EDMI.API" minOccurs="0" name="FileRight" type="q28:Rights.AccessRight" />
<xs:element xmlns:q30="http://schemas.datacontract.org/2004/07/DigitalData.Modules.EDMI.API" minOccurs="0" name="FileRight" type="q30:Rights.AccessRight" />
<xs:element minOccurs="0" name="FullPath" nillable="true" type="xs:string" />
</xs:sequence>
</xs:complexType>

View File

@@ -41,6 +41,7 @@
<MetadataFile FileName="DigitalData.Services.EDMIService.Methods.IDB.xsd" MetadataType="Schema" ID="ff8eee6b-9a48-4ecf-9a99-ec43f65d1e5d" SourceId="1" SourceUrl="net.tcp://172.24.12.39:9000/DigitalData/Services/Main/mex" />
<MetadataFile FileName="System.IO.xsd" MetadataType="Schema" ID="88cf8e31-2b3d-4d1a-9172-e7b0ea930e93" SourceId="1" SourceUrl="net.tcp://172.24.12.39:9000/DigitalData/Services/Main/mex" />
<MetadataFile FileName="DigitalData.Modules.ZooFlow.State.xsd" MetadataType="Schema" ID="c9ca2958-d16e-444e-ac34-40fc3c6a86cb" SourceId="1" SourceUrl="net.tcp://172.24.12.39:9000/DigitalData/Services/Main/mex" />
<MetadataFile FileName="DigitalData.Services.EDMIService.Methods.IDB.UpdateFile.xsd" MetadataType="Schema" ID="ee905b55-bae0-4ecb-8e57-f7477bd1a4bc" SourceId="1" SourceUrl="net.tcp://172.24.12.39:9000/DigitalData/Services/Main/mex" />
<MetadataFile FileName="DigitalData.Services.EDMIService.Methods.IDB.SetAttributeValue.xsd" MetadataType="Schema" ID="09473ff2-6558-47e2-89ed-7c8bce746a4c" SourceId="1" SourceUrl="net.tcp://172.24.12.39:9000/DigitalData/Services/Main/mex" />
<MetadataFile FileName="DigitalData.Services.EDMIService.Methods.GlobalIndexer.ImportFile.xsd" MetadataType="Schema" ID="4c9227ac-82b3-4aff-bcb3-eab453dc69c5" SourceId="1" SourceUrl="net.tcp://172.24.12.39:9000/DigitalData/Services/Main/mex" />
<MetadataFile FileName="DigitalData.Services.EDMIService.Methods.IDB.GetFileObject.xsd" MetadataType="Schema" ID="df5739a1-d592-43d7-9307-fa8e5580635c" SourceId="1" SourceUrl="net.tcp://172.24.12.39:9000/DigitalData/Services/Main/mex" />

View File

@@ -28,6 +28,7 @@ Namespace EDMIServiceReference
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.GetScalarValueResponse)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.ExecuteNonQueryResponse)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.NewFileResponse)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.UpdateFileResponse)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.SetAttributeValueResponse)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.ImportFileResponse)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.GetFileObjectResponse)), _
@@ -165,6 +166,8 @@ Namespace EDMIServiceReference
System.Runtime.Serialization.KnownTypeAttribute(GetType(System.IO.FileInfo)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(System.IO.FileSystemInfo)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.UserState)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.UpdateFileRequest)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.UpdateFileResponse)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.SetAttributeValueRequest)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.SetAttributeValueResponse)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.ImportFileRequest)), _
@@ -260,6 +263,8 @@ Namespace EDMIServiceReference
System.Runtime.Serialization.KnownTypeAttribute(GetType(System.IO.FileInfo)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(System.IO.FileSystemInfo)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.UserState)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.UpdateFileRequest)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.UpdateFileResponse)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.SetAttributeValueRequest)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.SetAttributeValueResponse)), _
System.Runtime.Serialization.KnownTypeAttribute(GetType(EDMIServiceReference.ImportFileRequest)), _
@@ -338,6 +343,31 @@ Namespace EDMIServiceReference
End Property
End Class
<System.Diagnostics.DebuggerStepThroughAttribute(), _
System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0"), _
System.Runtime.Serialization.DataContractAttribute(Name:="UpdateFileResponse", [Namespace]:="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods."& _
"IDB.UpdateFile"), _
System.SerializableAttribute()> _
Partial Public Class UpdateFileResponse
Inherits EDMIServiceReference.BaseResponse
<System.Runtime.Serialization.OptionalFieldAttribute()> _
Private ObjectIdField As Long
<System.Runtime.Serialization.DataMemberAttribute()> _
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
<System.Diagnostics.DebuggerStepThroughAttribute(), _
System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0"), _
System.Runtime.Serialization.DataContractAttribute(Name:="SetAttributeValueResponse", [Namespace]:="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods."& _
@@ -1488,6 +1518,102 @@ Namespace EDMIServiceReference
End Sub
End Class
<System.Diagnostics.DebuggerStepThroughAttribute(), _
System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0"), _
System.Runtime.Serialization.DataContractAttribute(Name:="UpdateFileRequest", [Namespace]:="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods."& _
"IDB.UpdateFile"), _
System.SerializableAttribute()> _
Partial Public Class UpdateFileRequest
Inherits Object
Implements System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged
<System.NonSerializedAttribute()> _
Private extensionDataField As System.Runtime.Serialization.ExtensionDataObject
<System.Runtime.Serialization.OptionalFieldAttribute()> _
Private CreateNewVersionField As Boolean
<System.Runtime.Serialization.OptionalFieldAttribute()> _
Private FileField As EDMIServiceReference.FileProperties
<System.Runtime.Serialization.OptionalFieldAttribute()> _
Private ObjectIdField As Long
<System.Runtime.Serialization.OptionalFieldAttribute()> _
Private UserField As EDMIServiceReference.UserState
<Global.System.ComponentModel.BrowsableAttribute(false)> _
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
<System.Runtime.Serialization.DataMemberAttribute()> _
Public Property CreateNewVersion() As Boolean
Get
Return Me.CreateNewVersionField
End Get
Set
If (Me.CreateNewVersionField.Equals(value) <> true) Then
Me.CreateNewVersionField = value
Me.RaisePropertyChanged("CreateNewVersion")
End If
End Set
End Property
<System.Runtime.Serialization.DataMemberAttribute()> _
Public Property File() As EDMIServiceReference.FileProperties
Get
Return Me.FileField
End Get
Set
If (Object.ReferenceEquals(Me.FileField, value) <> true) Then
Me.FileField = value
Me.RaisePropertyChanged("File")
End If
End Set
End Property
<System.Runtime.Serialization.DataMemberAttribute()> _
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
<System.Runtime.Serialization.DataMemberAttribute()> _
Public Property User() As EDMIServiceReference.UserState
Get
Return Me.UserField
End Get
Set
If (Object.ReferenceEquals(Me.UserField, value) <> true) Then
Me.UserField = value
Me.RaisePropertyChanged("User")
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
<System.Diagnostics.DebuggerStepThroughAttribute(), _
System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0"), _
System.Runtime.Serialization.DataContractAttribute(Name:="SetAttributeValueRequest", [Namespace]:="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Methods."& _
@@ -1828,6 +1954,8 @@ Namespace EDMIServiceReference
Private _FileHashField As String
Private _FilePathField As String
Private _FileSizeField As Long
Private _ObjectIdField As Long
@@ -1894,6 +2022,19 @@ Namespace EDMIServiceReference
End Set
End Property
<System.Runtime.Serialization.DataMemberAttribute(IsRequired:=true)> _
Public Property _FilePath() As String
Get
Return Me._FilePathField
End Get
Set
If (Object.ReferenceEquals(Me._FilePathField, value) <> true) Then
Me._FilePathField = value
Me.RaisePropertyChanged("_FilePath")
End If
End Set
End Property
<System.Runtime.Serialization.DataMemberAttribute(IsRequired:=true)> _
Public Property _FileSize() As Long
Get
@@ -2103,6 +2244,12 @@ Namespace EDMIServiceReference
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/NewFile", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/NewFileResponse")> _
Function NewFileAsync(ByVal Data As EDMIServiceReference.NewFileRequest) As System.Threading.Tasks.Task(Of EDMIServiceReference.NewFileResponse)
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/UpdateFile", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/UpdateFileResponse")> _
Function UpdateFile(ByVal Data As EDMIServiceReference.UpdateFileRequest) As EDMIServiceReference.UpdateFileResponse
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/UpdateFile", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/UpdateFileResponse")> _
Function UpdateFileAsync(ByVal Data As EDMIServiceReference.UpdateFileRequest) As System.Threading.Tasks.Task(Of EDMIServiceReference.UpdateFileResponse)
<System.ServiceModel.OperationContractAttribute(Action:="http://DigitalData.Services.EDMIService/IEDMIService/SetAttributeValue", ReplyAction:="http://DigitalData.Services.EDMIService/IEDMIService/SetAttributeValueResponse")> _
Function SetAttributeValue(ByVal Data As EDMIServiceReference.SetAttributeValueRequest) As EDMIServiceReference.SetAttributeValueResponse
@@ -2494,6 +2641,14 @@ Namespace EDMIServiceReference
Return MyBase.Channel.NewFileAsync(Data)
End Function
Public Function UpdateFile(ByVal Data As EDMIServiceReference.UpdateFileRequest) As EDMIServiceReference.UpdateFileResponse Implements EDMIServiceReference.IEDMIService.UpdateFile
Return MyBase.Channel.UpdateFile(Data)
End Function
Public Function UpdateFileAsync(ByVal Data As EDMIServiceReference.UpdateFileRequest) As System.Threading.Tasks.Task(Of EDMIServiceReference.UpdateFileResponse) Implements EDMIServiceReference.IEDMIService.UpdateFileAsync
Return MyBase.Channel.UpdateFileAsync(Data)
End Function
Public Function SetAttributeValue(ByVal Data As EDMIServiceReference.SetAttributeValueRequest) As EDMIServiceReference.SetAttributeValueResponse Implements EDMIServiceReference.IEDMIService.SetAttributeValue
Return MyBase.Channel.SetAttributeValue(Data)
End Function

View File

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

View File

@@ -167,6 +167,9 @@
<None Include="Connected Services\EDMIServiceReference\DigitalData.Modules.EDMI.API.EDMIServiceReference.TestObjectIdExistsResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\EDMIServiceReference\DigitalData.Modules.EDMI.API.EDMIServiceReference.UpdateFileResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\EDMIServiceReference\DigitalData.Modules.EDMI.API.xsd">
<SubType>Designer</SubType>
</None>
@@ -206,6 +209,9 @@
<None Include="Connected Services\EDMIServiceReference\DigitalData.Services.EDMIService.Methods.IDB.SetAttributeValue.xsd">
<SubType>Designer</SubType>
</None>
<None Include="Connected Services\EDMIServiceReference\DigitalData.Services.EDMIService.Methods.IDB.UpdateFile.xsd">
<SubType>Designer</SubType>
</None>
<None Include="Connected Services\EDMIServiceReference\DigitalData.Services.EDMIService.Methods.IDB.xsd">
<SubType>Designer</SubType>
</None>

View File

@@ -10,29 +10,43 @@ Namespace Modules.IDB
MyBase.New(pLogConfig, pChannel)
End Sub
Public Async Function RunAsync(pFilePath As String, pObjectId As Long, Optional pOptions As UpdateFileOptions = Nothing) As Task
' Set default options
If pOptions Is Nothing Then
pOptions = New UpdateFileOptions()
End If
Public Async Function RunAsync(pFilePath As String, pObjectId As Long, Optional pOptions As UpdateFileOptions = Nothing) As Task(Of Long)
Try
' Set default options
If pOptions Is Nothing Then
pOptions = New UpdateFileOptions()
End If
' Check if file exists
If IO.File.Exists(pFilePath) = False Then
Throw New IO.FileNotFoundException("Path does not exist")
End If
' Check if file exists
If IO.File.Exists(pFilePath) = False Then
Throw New IO.FileNotFoundException("Path does not exist")
End If
' Importing the file now
Dim oFileProperties = Helpers.GetFileProperties(pFilePath, Date.Now)
'Dim oFileImportResponse = Await Channel.(New NewFileRequest With {
' .BusinessEntity = pBusinessEntity,
' .File = oFileProperties,
' .KindType = pObjectKind,
' .StoreName = pObjectStoreName,
' .User = New UserState With {
' .Language = pOptions.Language,
' .UserName = pOptions.Username
' }
'})
' Importing the file now
Dim oFileProperties = Helpers.GetFileProperties(pFilePath, Date.Now)
Dim oUpdateFileResponse = Await Channel.UpdateFileAsync(New UpdateFileRequest With {
.File = oFileProperties,
.ObjectId = pObjectId,
.CreateNewVersion = pOptions.CreateNewFileVersion,
.User = New UserState With {
.Language = pOptions.Language,
.UserName = pOptions.Username
}
})
If oUpdateFileResponse.OK = False Then
Throw New ApplicationException("Could not Import File Contents!")
End If
Return oUpdateFileResponse.ObjectId
Catch ex As Exception
Logger.Error(ex)
Return Constants.INVALID_OBEJCT_ID
End Try
End Function
End Class