Imports System.Runtime.Serialization
Imports DigitalData.Modules.ZooFlow.State
Imports DigitalData.Services.EDMIService.Methods.IDB

Namespace Methods.GlobalIndexer.ImportFile
    <Serializable>
    <DataContract>
    Public Class ImportFileRequest
        ''' <summary>
        ''' Important File properties like, Name, Contents, CreatedAt, ModifiedAt, Checksum
        ''' </summary>
        <DataMember>
        Public Property File As FileProperties

        ''' <summary>
        ''' The ProfileId the file will be imported with
        ''' </summary>
        <DataMember>
        Public Property ProfileId As Integer

        ''' <summary>
        ''' The business entity of the file, ex DEFAULT
        ''' </summary>
        <DataMember>
        Public Property BusinessEntity As String

        ''' <summary>
        ''' The kind of object to be created, ex. DOC
        ''' </summary>
        <DataMember>
        Public Property KindType As String

        ''' <summary>
        ''' Name/title of the ObjectStore to save the file to, ex. Work
        ''' </summary>
        <DataMember>
        Public Property StoreName As String

        ''' <summary>
        ''' The attribute values given by the user in the form of
        ''' Attribute Name/Attribute Value/ControlName
        ''' </summary>
        <DataMember>
        Public Property AttributeValues As New List(Of UserAttributeValue)

        ''' <summary>
        ''' User Importing the file
        ''' </summary>
        ''' <returns></returns>
        <DataMember>
        Public Property User As UserState
    End Class
End Namespace