C# Class Microsoft.Research.DataOnboarding.FileService.FileServiceProvider

class contains file service provider methods
Inheritance: IFileService
Mostra file Open project: CDLUC3/dataup2 Class Usage Examples

Public Methods

Method Description
CheckFileExists ( string fileName, int userId ) : bool

method to check file exists for the user id

CheckIfFileExistsOnExternalRepository ( Microsoft.Research.DataOnboarding.Utilities.Model.VerifyFileMessage verifyFileMessage ) : OperationStatus

Verifies if the file exists in the repository

DeleteFile ( int userId, int fileId ) : bool

Method to delete the specified file store.

DownLoadFileFromRepository ( Microsoft.Research.DataOnboarding.DomainModel file, Microsoft.Research.DataOnboarding.DomainModel.Repository repository, Microsoft.Research.DataOnboarding.DomainModel.User user, RepositoryCredentials credentials ) : Microsoft.Research.DataOnboarding.Utilities.Model.DataFile

Downloads the File from Repository

DownloadFile ( int userId, int fileId ) : DataDetail

Method to download the file with updated metadata.

FileServiceProvider ( IFileRepository fileDataRepository, IBlobDataRepository blobDataRepository, IUnitOfWork unitOfWork, IRepositoryDetails repositoryDetails, IRepositoryService repositoryService, IRepositoryAdapterFactory repositoryAdapterFactory ) : System

Initializes a new instance of the FileServiceProvider class.

GetAllFiles ( int userId ) : IEnumerable

Method to get all the available files for the specified user.

GetErrors ( int userId, int fileId ) : IList>>.Task

Gets errors in a file.

GetFileByFileId ( int fileId ) : Microsoft.Research.DataOnboarding.DomainModel.File

Method to get the file information by file id.

GetFiles ( bool>.Func predicate ) : IEnumerable

Method to get all the available files for the specified user.

GetFilesToBePurged ( double uploadedFilesExpirationDurationInHours ) : IEnumerable

Get all the files to be purged.

GetUploadedFiles ( ) : IEnumerable

Get files in Uploaded staus.

PublishFile ( PublishMessage postFileData ) : string
RemoveErrors ( int userId, int fileId, string sheetName, IEnumerable errorTypeList ) : System.Threading.Tasks.Task

Removes errors from a file sheet.

RetrieveFileColumnTypes ( ) : IEnumerable

returns the collection of column types

RetrieveFileColumnUnits ( ) : IEnumerable

Method to return the collection of Column Units

RetrieveMetaDataTypes ( ) : IEnumerable

Method to return list of metadata types

SaveColumnLevelMetadata ( int fileId, IEnumerable columnLevelMetadataList ) : void
SaveFileLevelMetadata ( int fileId, int repositoryId, IEnumerable saveFileLevelMetadataList ) : void

Saves File Level Metadata

ValidateForPublish ( PublishMessage message ) : void

Performs the necessary validations required for the file to be published

ValidateForUpload ( string fileName, int userId ) : void

Performs the ncessary validations for uploading the file to a blob storage.

Protected Methods

Method Description
GetIdentifier ( PublishMessage postFileData, string authorization, string identifierUrl, Citation citation ) : string

Helper method to get the identifier from merrit.

GetPostQueryData ( string identifier, Microsoft.Research.DataOnboarding.DomainModel fileData, Citation citation, Microsoft.Research.DataOnboarding.DomainModel.Repository repository, PublishMessage postFileData ) : MerritQueryData

Helper method to get the post query data.

Private Methods

Method Description
GetColumnLevelMetadataFromFile ( Microsoft.Research.DataOnboarding.DomainModel fileDetail ) : Task>
GetDataFile ( Microsoft.Research.DataOnboarding.DomainModel file ) : Microsoft.Research.DataOnboarding.Utilities.Model.DataFile
GetDocumentSheetDetails ( Microsoft.Research.DataOnboarding.DomainModel fileDetail ) : Task>
GetFileStream ( string fileID ) : Stream
GetRepositoryModel ( Microsoft.Research.DataOnboarding.DomainModel repository, string authorization ) : RepositoryModel
SaveFile ( Microsoft.Research.DataOnboarding.Utilities.Model.PostFileModel postFileData ) : bool
UpdateFile ( Microsoft.Research.DataOnboarding.DomainModel fileDetails ) : bool
UploadFile ( DataDetail dataDetail ) : DataDetail
ValidateMetadata ( int repositoryId, int fileId ) : void

Validates the metadata

Method Details

CheckFileExists() public method

method to check file exists for the user id
public CheckFileExists ( string fileName, int userId ) : bool
fileName string file Name
userId int user Id
return bool

CheckIfFileExistsOnExternalRepository() public method

Verifies if the file exists in the repository
public CheckIfFileExistsOnExternalRepository ( Microsoft.Research.DataOnboarding.Utilities.Model.VerifyFileMessage verifyFileMessage ) : OperationStatus
verifyFileMessage Microsoft.Research.DataOnboarding.Utilities.Model.VerifyFileMessage Verify File Message
return Microsoft.Research.DataOnboarding.Utilities.OperationStatus

DeleteFile() public method

Method to delete the specified file store.
public DeleteFile ( int userId, int fileId ) : bool
userId int User id.
fileId int file id.
return bool

DownLoadFileFromRepository() public method

Downloads the File from Repository
public DownLoadFileFromRepository ( Microsoft.Research.DataOnboarding.DomainModel file, Microsoft.Research.DataOnboarding.DomainModel.Repository repository, Microsoft.Research.DataOnboarding.DomainModel.User user, RepositoryCredentials credentials ) : Microsoft.Research.DataOnboarding.Utilities.Model.DataFile
file Microsoft.Research.DataOnboarding.DomainModel File object.
repository Microsoft.Research.DataOnboarding.DomainModel.Repository Repository instance.
user Microsoft.Research.DataOnboarding.DomainModel.User User instance.
credentials Microsoft.Research.DataOnboarding.Utilities.Model.RepositoryCredentials credentials required by the repository.
return Microsoft.Research.DataOnboarding.Utilities.Model.DataFile

DownloadFile() public method

Method to download the file with updated metadata.
public DownloadFile ( int userId, int fileId ) : DataDetail
userId int User id.
fileId int File id.
return Microsoft.Research.DataOnboarding.FileService.Models.DataDetail

FileServiceProvider() public method

Initializes a new instance of the FileServiceProvider class.
public FileServiceProvider ( IFileRepository fileDataRepository, IBlobDataRepository blobDataRepository, IUnitOfWork unitOfWork, IRepositoryDetails repositoryDetails, IRepositoryService repositoryService, IRepositoryAdapterFactory repositoryAdapterFactory ) : System
fileDataRepository IFileRepository IFileRepository instance
blobDataRepository IBlobDataRepository IBlobDataRepository instance
unitOfWork IUnitOfWork IUnitOfWork instance
repositoryDetails IRepositoryDetails IRepositoryDetails instance
repositoryService IRepositoryService IRepositoryService instance
repositoryAdapterFactory IRepositoryAdapterFactory IRepositoryAdapterFactory instance
return System

GetAllFiles() public method

Method to get all the available files for the specified user.
public GetAllFiles ( int userId ) : IEnumerable
userId int User id.
return IEnumerable

GetErrors() public method

Gets errors in a file.
public GetErrors ( int userId, int fileId ) : IList>>.Task
userId int User Id
fileId int File Id
return IList>>.Task

GetFileByFileId() public method

Method to get the file information by file id.
public GetFileByFileId ( int fileId ) : Microsoft.Research.DataOnboarding.DomainModel.File
fileId int File id.
return Microsoft.Research.DataOnboarding.DomainModel.File

GetFiles() public method

Method to get all the available files for the specified user.
public GetFiles ( bool>.Func predicate ) : IEnumerable
predicate bool>.Func Function that is used to filter records
return IEnumerable

GetFilesToBePurged() public method

Get all the files to be purged.
public GetFilesToBePurged ( double uploadedFilesExpirationDurationInHours ) : IEnumerable
uploadedFilesExpirationDurationInHours double Number of days uploaded files can remain in the database.
return IEnumerable

GetIdentifier() protected method

Helper method to get the identifier from merrit.
protected GetIdentifier ( PublishMessage postFileData, string authorization, string identifierUrl, Citation citation ) : string
postFileData Microsoft.Research.DataOnboarding.Utilities.Model.PublishMessage
authorization string
identifierUrl string
citation Microsoft.Research.DataOnboarding.DomainModel.ConceptualModel.Citation
return string

GetPostQueryData() protected method

Helper method to get the post query data.
protected GetPostQueryData ( string identifier, Microsoft.Research.DataOnboarding.DomainModel fileData, Citation citation, Microsoft.Research.DataOnboarding.DomainModel.Repository repository, PublishMessage postFileData ) : MerritQueryData
identifier string Unique identifier.
fileData Microsoft.Research.DataOnboarding.DomainModel File information.
citation Microsoft.Research.DataOnboarding.DomainModel.ConceptualModel.Citation
repository Microsoft.Research.DataOnboarding.DomainModel.Repository
postFileData Microsoft.Research.DataOnboarding.Utilities.Model.PublishMessage Post file indormation.
return MerritQueryData

GetUploadedFiles() public method

Get files in Uploaded staus.
public GetUploadedFiles ( ) : IEnumerable
return IEnumerable

PublishFile() public method

public PublishFile ( PublishMessage postFileData ) : string
postFileData Microsoft.Research.DataOnboarding.Utilities.Model.PublishMessage
return string

RemoveErrors() public method

Removes errors from a file sheet.
public RemoveErrors ( int userId, int fileId, string sheetName, IEnumerable errorTypeList ) : System.Threading.Tasks.Task
userId int User Id
fileId int File Id
sheetName string Sheet Name
errorTypeList IEnumerable Error type list
return System.Threading.Tasks.Task

RetrieveFileColumnTypes() public method

returns the collection of column types
public RetrieveFileColumnTypes ( ) : IEnumerable
return IEnumerable

RetrieveFileColumnUnits() public method

Method to return the collection of Column Units
public RetrieveFileColumnUnits ( ) : IEnumerable
return IEnumerable

RetrieveMetaDataTypes() public method

Method to return list of metadata types
public RetrieveMetaDataTypes ( ) : IEnumerable
return IEnumerable

SaveColumnLevelMetadata() public method

public SaveColumnLevelMetadata ( int fileId, IEnumerable columnLevelMetadataList ) : void
fileId int
columnLevelMetadataList IEnumerable
return void

SaveFileLevelMetadata() public method

Saves File Level Metadata
public SaveFileLevelMetadata ( int fileId, int repositoryId, IEnumerable saveFileLevelMetadataList ) : void
fileId int File Id.
repositoryId int Repository Id.
saveFileLevelMetadataList IEnumerable List of SaveFileLevelMetadata.
return void

ValidateForPublish() public method

Performs the necessary validations required for the file to be published
public ValidateForPublish ( PublishMessage message ) : void
message Microsoft.Research.DataOnboarding.Utilities.Model.PublishMessage Publish Message
return void

ValidateForUpload() public method

Performs the ncessary validations for uploading the file to a blob storage.
public ValidateForUpload ( string fileName, int userId ) : void
fileName string File Name.
userId int User Id.
return void