public async Task <IActionResult> GetObjectMetadata(
            [FromRoute] string objectId,
            [FromQuery(Name = "revisionNr")] uint?revisionNumber)
        {
            try
            {
                var metadata = await readApi.ObjectApi.GetMetadata(objectId, revisionNumber);

                return(metadata switch
                {
                    IFileMetadata fileMetadata => (IActionResult)Ok(new FileMetadataResponse(fileMetadata)),
                    IDirectoryMetadata directoryMetadata => Ok(new DirectoryMetadataResponse(directoryMetadata)),
                    _ => BadRequest()
                });
            }
Beispiel #2
0
 public DirectoryMetadataResponse(IDirectoryMetadata directoryMetadata) : base(directoryMetadata)
 {
     FileChilds      = directoryMetadata.FileChilds.Select(x => new FileMetadataResponse(x)).ToArray();
     DirectoryChilds = directoryMetadata.DirectoryChilds.Select(x => new MinimalDirectoryMetadataResponse(x)).ToArray();
 }