Refactor IMediaImage.ReadMediaTag to return error status instead of buffer.

This commit is contained in:
2021-09-18 15:01:31 +01:00
parent ef2fc1788a
commit fbccfb2ca9
68 changed files with 1013 additions and 651 deletions

View File

@@ -1568,14 +1568,19 @@ namespace Aaru.DiscImages
}
/// <inheritdoc />
public byte[] ReadDiskTag(MediaTagType tag)
public ErrorNumber ReadMediaTag(MediaTagType tag, out byte[] buffer)
{
buffer = null;
switch(tag)
{
case MediaTagType.CD_MCN: return _upc;
case MediaTagType.CD_TEXT: throw new NotImplementedException("Not yet implemented");
default:
throw new FeaturedNotSupportedByDiscImageException("Requested disk tag not supported by image");
case MediaTagType.CD_MCN:
buffer = _upc?.Clone() as byte[];
return buffer != null ? ErrorNumber.NoError : ErrorNumber.NoData;
case MediaTagType.CD_TEXT: return ErrorNumber.NotImplemented;
default: return ErrorNumber.NotSupported;
}
}