Move all localizable strings from Aaru.Helpers project to resources.

This commit is contained in:
2022-11-28 10:15:47 +00:00
parent c67c6dcc8f
commit cfd9069429
18 changed files with 420 additions and 89 deletions

View File

@@ -43,6 +43,12 @@
<NrtShowRevision>true</NrtShowRevision>
</PropertyGroup>
<ItemGroup>
<Compile Include="Authors.cs"/>
<Compile Include="Localization\Localization.Designer.cs">
<DesignTime>True</DesignTime>
<AutoGen>True</AutoGen>
<DependentUpon>Localization.resx</DependentUpon>
</Compile>
<Compile Include="OffsetStream.cs"/>
<Compile Include="Register.cs"/>
<Compile Include="SplitJoinStream.cs"/>
@@ -61,6 +67,10 @@
<EmbeddedResource Include="..\LICENSE.LGPL">
<Link>LICENSE.LGPL</Link>
</EmbeddedResource>
<EmbeddedResource Update="Localization\Localization.resx">
<Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>Localization.Designer.cs</LastGenOutput>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Aaru.CommonTypes\Aaru.CommonTypes.csproj"/>

View File

@@ -0,0 +1,5 @@
<wpf:ResourceDictionary xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:s="clr-namespace:System;assembly=mscorlib"
xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xml:space="preserve">
<s:Boolean
x:Key="/Default/CodeInspection/NamespaceProvider/NamespaceFoldersToSkip/=localization/@EntryIndexedValue">True</s:Boolean></wpf:ResourceDictionary>

View File

@@ -81,11 +81,11 @@ public sealed class AppleDouble : IFilter
Entry _rsrcFork;
/// <inheritdoc />
public string Name => "AppleDouble";
public string Name => Localization.AppleDouble_Name;
/// <inheritdoc />
public Guid Id => new("1B2165EE-C9DF-4B21-BBBB-9E5892B2DF4D");
/// <inheritdoc />
public string Author => "Natalia Portillo";
public string Author => Authors.NataliaPortillo;
/// <inheritdoc />
public void Close() {}

View File

@@ -83,11 +83,11 @@ public sealed class AppleSingle : IFilter
Stream _stream;
/// <inheritdoc />
public string Name => "AppleSingle";
public string Name => Localization.AppleSingle_Name;
/// <inheritdoc />
public Guid Id => new("A69B20E8-F4D3-42BB-BD2B-4A7263394A05");
/// <inheritdoc />
public string Author => "Natalia Portillo";
public string Author => Authors.NataliaPortillo;
/// <inheritdoc />
public void Close()

37
Aaru.Filters/Authors.cs Normal file
View File

@@ -0,0 +1,37 @@
// /***************************************************************************
// Aaru Data Preservation Suite
// ----------------------------------------------------------------------------
//
// Filename : Authors.cs
// Author(s) : Natalia Portillo <claunia@claunia.com>
//
// Component : Filters.
//
// --[ License ] --------------------------------------------------------------
//
// This library is free software; you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as
// published by the Free Software Foundation; either version 2.1 of the
// License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful, but
// WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public
// License along with this library; if not, see <http://www.gnu.org/licenses/>.
//
// ----------------------------------------------------------------------------
// Copyright © 2011-2022 Natalia Portillo
// ****************************************************************************/
using System.Diagnostics.CodeAnalysis;
namespace Aaru.Filters;
[SuppressMessage("ReSharper", "InconsistentNaming")]
static class Authors
{
internal const string NataliaPortillo = "Natalia Portillo";
}

View File

@@ -47,11 +47,11 @@ public class BZip2 : IFilter
Stream _innerStream;
/// <inheritdoc />
public string Name => "BZip2";
public string Name => Localization.BZip2_Name;
/// <inheritdoc />
public Guid Id => new("FCCFB0C3-32EF-40D8-9714-2333F6AC72A9");
/// <inheritdoc />
public string Author => "Natalia Portillo";
public string Author => Authors.NataliaPortillo;
/// <inheritdoc />
public void Close()

View File

@@ -213,14 +213,14 @@ public sealed class ForcedSeekStream<T> : Stream where T : Stream
{
case SeekOrigin.Begin:
if(offset < 0)
throw new IOException("Cannot seek before stream start.");
throw new IOException(Localization.Cannot_seek_before_stream_start);
SetPosition(offset);
break;
case SeekOrigin.End:
if(offset > 0)
throw new IOException("Cannot seek after stream end.");
throw new IOException(Localization.Cannot_seek_after_stream_end);
if(_streamLength == 0)
CalculateLength();

View File

@@ -48,11 +48,11 @@ public sealed class GZip : IFilter
Stream _zStream;
/// <inheritdoc />
public string Name => "GZip";
public string Name => Localization.GZip_Name;
/// <inheritdoc />
public Guid Id => new("F4996661-4A29-42C9-A2C7-3904EF40F3B0");
/// <inheritdoc />
public string Author => "Natalia Portillo";
public string Author => Authors.NataliaPortillo;
/// <inheritdoc />
public void Close()

View File

@@ -48,11 +48,11 @@ public sealed class LZip : IFilter
Stream _innerStream;
/// <inheritdoc />
public string Name => "LZip";
public string Name => Localization.LZip_Name;
/// <inheritdoc />
public Guid Id => new("09D715E9-20C0-48B1-A8D9-D8897CEC57C9");
/// <inheritdoc />
public string Author => "Natalia Portillo";
public string Author => Authors.NataliaPortillo;
/// <inheritdoc />
public void Close()

View File

@@ -0,0 +1,186 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace Aaru.Filters {
using System;
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class Localization {
private static System.Resources.ResourceManager resourceMan;
private static System.Globalization.CultureInfo resourceCulture;
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Localization() {
}
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
internal static System.Resources.ResourceManager ResourceManager {
get {
if (object.Equals(null, resourceMan)) {
System.Resources.ResourceManager temp = new System.Resources.ResourceManager("Aaru.Filters.Localization.Localization", typeof(Localization).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
internal static System.Globalization.CultureInfo Culture {
get {
return resourceCulture;
}
set {
resourceCulture = value;
}
}
internal static string AppleDouble_Name {
get {
return ResourceManager.GetString("AppleDouble_Name", resourceCulture);
}
}
internal static string AppleSingle_Name {
get {
return ResourceManager.GetString("AppleSingle_Name", resourceCulture);
}
}
internal static string BZip2_Name {
get {
return ResourceManager.GetString("BZip2_Name", resourceCulture);
}
}
internal static string Cannot_seek_before_stream_start {
get {
return ResourceManager.GetString("Cannot_seek_before_stream_start", resourceCulture);
}
}
internal static string Cannot_seek_after_stream_end {
get {
return ResourceManager.GetString("Cannot_seek_after_stream_end", resourceCulture);
}
}
internal static string GZip_Name {
get {
return ResourceManager.GetString("GZip_Name", resourceCulture);
}
}
internal static string LZip_Name {
get {
return ResourceManager.GetString("LZip_Name", resourceCulture);
}
}
internal static string MacBinary_Name {
get {
return ResourceManager.GetString("MacBinary_Name", resourceCulture);
}
}
internal static string Start_cant_be_a_negative_number {
get {
return ResourceManager.GetString("Start_cant_be_a_negative_number", resourceCulture);
}
}
internal static string End_cant_be_a_negative_number {
get {
return ResourceManager.GetString("End_cant_be_a_negative_number", resourceCulture);
}
}
internal static string End_is_after_stream_end {
get {
return ResourceManager.GetString("End_is_after_stream_end", resourceCulture);
}
}
internal static string Cannot_set_position_past_stream_end {
get {
return ResourceManager.GetString("Cannot_set_position_past_stream_end", resourceCulture);
}
}
internal static string Cannot_read_past_stream_end {
get {
return ResourceManager.GetString("Cannot_read_past_stream_end", resourceCulture);
}
}
internal static string Cannot_write_past_stream_end {
get {
return ResourceManager.GetString("Cannot_write_past_stream_end", resourceCulture);
}
}
internal static string Cannot_seek_past_stream_end {
get {
return ResourceManager.GetString("Cannot_seek_past_stream_end", resourceCulture);
}
}
internal static string Growing_OffsetStream_is_not_supported {
get {
return ResourceManager.GetString("Growing_OffsetStream_is_not_supported", resourceCulture);
}
}
internal static string PcExchange_Name {
get {
return ResourceManager.GetString("PcExchange_Name", resourceCulture);
}
}
internal static string Non_seekable_streams_are_not_supported {
get {
return ResourceManager.GetString("Non_seekable_streams_are_not_supported", resourceCulture);
}
}
internal static string Non_readable_streams_are_not_supported {
get {
return ResourceManager.GetString("Non_readable_streams_are_not_supported", resourceCulture);
}
}
internal static string Asynchronous_IO_is_not_supported {
get {
return ResourceManager.GetString("Asynchronous_IO_is_not_supported", resourceCulture);
}
}
internal static string This_stream_is_read_only {
get {
return ResourceManager.GetString("This_stream_is_read_only", resourceCulture);
}
}
internal static string XZ_Name {
get {
return ResourceManager.GetString("XZ_Name", resourceCulture);
}
}
internal static string ZZZNoFilter_Name {
get {
return ResourceManager.GetString("ZZZNoFilter_Name", resourceCulture);
}
}
}
}

View File

@@ -0,0 +1,93 @@
<?xml version="1.0" encoding="utf-8" ?>
<root>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root"
xmlns="">
<xsd:element name="root" msdata:IsDataSet="true"></xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>1.3</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089
</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089
</value>
</resheader>
<data name="AppleDouble_Name" xml:space="preserve">
<value>AppleDouble</value>
</data>
<data name="AppleSingle_Name" xml:space="preserve">
<value>AppleSingle</value>
</data>
<data name="BZip2_Name" xml:space="preserve">
<value>BZip2</value>
</data>
<data name="Cannot_seek_before_stream_start" xml:space="preserve">
<value>Cannot seek before stream start.</value>
</data>
<data name="Cannot_seek_after_stream_end" xml:space="preserve">
<value>Cannot seek after stream end.</value>
</data>
<data name="GZip_Name" xml:space="preserve">
<value>GZip</value>
</data>
<data name="LZip_Name" xml:space="preserve">
<value>LZip</value>
</data>
<data name="MacBinary_Name" xml:space="preserve">
<value>MacBinary</value>
</data>
<data name="Start_cant_be_a_negative_number" xml:space="preserve">
<value>Start can't be a negative number.</value>
</data>
<data name="End_cant_be_a_negative_number" xml:space="preserve">
<value>End can't be a negative number.</value>
</data>
<data name="End_is_after_stream_end" xml:space="preserve">
<value>End is after stream end.</value>
</data>
<data name="Cannot_set_position_past_stream_end" xml:space="preserve">
<value>Cannot set position past stream end.</value>
</data>
<data name="Cannot_read_past_stream_end" xml:space="preserve">
<value>Cannot read past stream end.</value>
</data>
<data name="Cannot_write_past_stream_end" xml:space="preserve">
<value>Cannot write past stream end.</value>
</data>
<data name="Cannot_seek_past_stream_end" xml:space="preserve">
<value>Cannot seek past stream end.</value>
</data>
<data name="Growing_OffsetStream_is_not_supported" xml:space="preserve">
<value>Growing OffsetStream is not supported.</value>
</data>
<data name="PcExchange_Name" xml:space="preserve">
<value>PCExchange</value>
</data>
<data name="Non_seekable_streams_are_not_supported" xml:space="preserve">
<value>Non-seekable streams are not supported</value>
</data>
<data name="Non_readable_streams_are_not_supported" xml:space="preserve">
<value>Non-readable streams are not supported</value>
</data>
<data name="Asynchronous_IO_is_not_supported" xml:space="preserve">
<value>Asynchronous I/O is not supported.</value>
</data>
<data name="This_stream_is_read_only" xml:space="preserve">
<value>This stream is read-only</value>
</data>
<data name="XZ_Name" xml:space="preserve">
<value>XZ</value>
</data>
<data name="ZZZNoFilter_Name" xml:space="preserve">
<value>No filter</value>
</data>
</root>

View File

@@ -55,11 +55,11 @@ public sealed class MacBinary : IFilter
Stream _stream;
/// <inheritdoc />
public string Name => "MacBinary";
public string Name => Localization.MacBinary_Name;
/// <inheritdoc />
public Guid Id => new("D7C321D3-E51F-45DF-A150-F6BFDF0D7704");
/// <inheritdoc />
public string Author => "Natalia Portillo";
public string Author => Authors.NataliaPortillo;
/// <inheritdoc />
public void Close()

View File

@@ -60,10 +60,10 @@ namespace Aaru.Filters
public OffsetStream(Stream stream, long start, long end)
{
if(start < 0)
throw new ArgumentOutOfRangeException(nameof(start), "Start can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(start), Localization.Start_cant_be_a_negative_number);
if(end < 0)
throw new ArgumentOutOfRangeException(nameof(end), "End can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_cant_be_a_negative_number);
_streamStart = start;
_streamEnd = end;
@@ -71,7 +71,7 @@ namespace Aaru.Filters
_baseStream = stream;
if(end > _baseStream.Length)
throw new ArgumentOutOfRangeException(nameof(end), "End is after stream end.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_is_after_stream_end);
_baseStream.Position = start;
}
@@ -103,10 +103,10 @@ namespace Aaru.Filters
FileOptions options, long start, long end)
{
if(start < 0)
throw new ArgumentOutOfRangeException(nameof(start), "Start can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(start), Localization.Start_cant_be_a_negative_number);
if(end < 0)
throw new ArgumentOutOfRangeException(nameof(end), "End can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_cant_be_a_negative_number);
_streamStart = start;
_streamEnd = end;
@@ -114,7 +114,7 @@ namespace Aaru.Filters
_baseStream = new FileStream(path, mode, access, share, bufferSize, options);
if(end > _baseStream.Length)
throw new ArgumentOutOfRangeException(nameof(end), "End is after stream end.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_is_after_stream_end);
_baseStream.Position = start;
}
@@ -135,10 +135,10 @@ namespace Aaru.Filters
public OffsetStream(SafeFileHandle handle, FileAccess access, long start, long end)
{
if(start < 0)
throw new ArgumentOutOfRangeException(nameof(start), "Start can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(start), Localization.Start_cant_be_a_negative_number);
if(end < 0)
throw new ArgumentOutOfRangeException(nameof(end), "End can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_cant_be_a_negative_number);
_streamStart = start;
_streamEnd = end;
@@ -146,7 +146,7 @@ namespace Aaru.Filters
_baseStream = new FileStream(handle, access);
if(end > _baseStream.Length)
throw new ArgumentOutOfRangeException(nameof(end), "End is after stream end.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_is_after_stream_end);
_baseStream.Position = start;
}
@@ -171,10 +171,10 @@ namespace Aaru.Filters
public OffsetStream(SafeFileHandle handle, FileAccess access, int bufferSize, long start, long end)
{
if(start < 0)
throw new ArgumentOutOfRangeException(nameof(start), "Start can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(start), Localization.Start_cant_be_a_negative_number);
if(end < 0)
throw new ArgumentOutOfRangeException(nameof(end), "End can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_cant_be_a_negative_number);
_streamStart = start;
_streamEnd = end;
@@ -182,7 +182,7 @@ namespace Aaru.Filters
_baseStream = new FileStream(handle, access, bufferSize);
if(end > _baseStream.Length)
throw new ArgumentOutOfRangeException(nameof(end), "End is after stream end.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_is_after_stream_end);
_baseStream.Position = start;
}
@@ -209,10 +209,10 @@ namespace Aaru.Filters
long end)
{
if(start < 0)
throw new ArgumentOutOfRangeException(nameof(start), "Start can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(start), Localization.Start_cant_be_a_negative_number);
if(end < 0)
throw new ArgumentOutOfRangeException(nameof(end), "End can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_cant_be_a_negative_number);
_streamStart = start;
_streamEnd = end;
@@ -220,7 +220,7 @@ namespace Aaru.Filters
_baseStream = new FileStream(handle, access, bufferSize, isAsync);
if(end > _baseStream.Length)
throw new ArgumentOutOfRangeException(nameof(end), "End is after stream end.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_is_after_stream_end);
_baseStream.Position = start;
}
@@ -252,10 +252,10 @@ namespace Aaru.Filters
bool useAsync, long start, long end)
{
if(start < 0)
throw new ArgumentOutOfRangeException(nameof(start), "Start can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(start), Localization.Start_cant_be_a_negative_number);
if(end < 0)
throw new ArgumentOutOfRangeException(nameof(end), "End can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_cant_be_a_negative_number);
_streamStart = start;
_streamEnd = end;
@@ -263,7 +263,7 @@ namespace Aaru.Filters
_baseStream = new FileStream(path, mode, access, share, bufferSize, useAsync);
if(end > _baseStream.Length)
throw new ArgumentOutOfRangeException(nameof(end), "End is after stream end.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_is_after_stream_end);
_baseStream.Position = start;
}
@@ -294,10 +294,10 @@ namespace Aaru.Filters
long end)
{
if(start < 0)
throw new ArgumentOutOfRangeException(nameof(start), "Start can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(start), Localization.Start_cant_be_a_negative_number);
if(end < 0)
throw new ArgumentOutOfRangeException(nameof(end), "End can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_cant_be_a_negative_number);
_streamStart = start;
_streamEnd = end;
@@ -305,7 +305,7 @@ namespace Aaru.Filters
_baseStream = new FileStream(path, mode, access, share, bufferSize);
if(end > _baseStream.Length)
throw new ArgumentOutOfRangeException(nameof(end), "End is after stream end.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_is_after_stream_end);
_baseStream.Position = start;
}
@@ -331,10 +331,10 @@ namespace Aaru.Filters
public OffsetStream(string path, FileMode mode, FileAccess access, FileShare share, long start, long end)
{
if(start < 0)
throw new ArgumentOutOfRangeException(nameof(start), "Start can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(start), Localization.Start_cant_be_a_negative_number);
if(end < 0)
throw new ArgumentOutOfRangeException(nameof(end), "End can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_cant_be_a_negative_number);
_streamStart = start;
_streamEnd = end;
@@ -342,7 +342,7 @@ namespace Aaru.Filters
_baseStream = new FileStream(path, mode, access, share);
if(end > _baseStream.Length)
throw new ArgumentOutOfRangeException(nameof(end), "End is after stream end.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_is_after_stream_end);
_baseStream.Position = start;
}
@@ -364,10 +364,10 @@ namespace Aaru.Filters
public OffsetStream(string path, FileMode mode, FileAccess access, long start, long end)
{
if(start < 0)
throw new ArgumentOutOfRangeException(nameof(start), "Start can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(start), Localization.Start_cant_be_a_negative_number);
if(end < 0)
throw new ArgumentOutOfRangeException(nameof(end), "End can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_cant_be_a_negative_number);
_streamStart = start;
_streamEnd = end;
@@ -375,7 +375,7 @@ namespace Aaru.Filters
_baseStream = new FileStream(path, mode, access);
if(end > _baseStream.Length)
throw new ArgumentOutOfRangeException(nameof(end), "End is after stream end.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_is_after_stream_end);
_baseStream.Position = start;
}
@@ -393,10 +393,10 @@ namespace Aaru.Filters
public OffsetStream(string path, FileMode mode, long start, long end)
{
if(start < 0)
throw new ArgumentOutOfRangeException(nameof(start), "Start can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(start), Localization.Start_cant_be_a_negative_number);
if(end < 0)
throw new ArgumentOutOfRangeException(nameof(end), "End can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_cant_be_a_negative_number);
_streamStart = start;
_streamEnd = end;
@@ -404,7 +404,7 @@ namespace Aaru.Filters
_baseStream = new FileStream(path, mode);
if(end > _baseStream.Length)
throw new ArgumentOutOfRangeException(nameof(end), "End is after stream end.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_is_after_stream_end);
_baseStream.Position = start;
}
@@ -426,10 +426,10 @@ namespace Aaru.Filters
long end)
{
if(start < 0)
throw new ArgumentOutOfRangeException(nameof(start), "Start can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(start), Localization.Start_cant_be_a_negative_number);
if(end < 0)
throw new ArgumentOutOfRangeException(nameof(end), "End can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_cant_be_a_negative_number);
_streamStart = start;
_streamEnd = end;
@@ -437,7 +437,7 @@ namespace Aaru.Filters
_baseStream = new MemoryStream(buffer, index, count, writable, publiclyVisible);
if(end > _baseStream.Length)
throw new ArgumentOutOfRangeException(nameof(end), "End is after stream end.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_is_after_stream_end);
_baseStream.Position = start;
}
@@ -457,10 +457,10 @@ namespace Aaru.Filters
public OffsetStream(byte[] buffer, int index, int count, bool writable, long start, long end)
{
if(start < 0)
throw new ArgumentOutOfRangeException(nameof(start), "Start can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(start), Localization.Start_cant_be_a_negative_number);
if(end < 0)
throw new ArgumentOutOfRangeException(nameof(end), "End can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_cant_be_a_negative_number);
_streamStart = start;
_streamEnd = end;
@@ -468,7 +468,7 @@ namespace Aaru.Filters
_baseStream = new MemoryStream(buffer, index, count, writable);
if(end > _baseStream.Length)
throw new ArgumentOutOfRangeException(nameof(end), "End is after stream end.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_is_after_stream_end);
_baseStream.Position = start;
}
@@ -487,10 +487,10 @@ namespace Aaru.Filters
public OffsetStream(byte[] buffer, int index, int count, long start, long end)
{
if(start < 0)
throw new ArgumentOutOfRangeException(nameof(start), "Start can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(start), Localization.Start_cant_be_a_negative_number);
if(end < 0)
throw new ArgumentOutOfRangeException(nameof(end), "End can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_cant_be_a_negative_number);
_streamStart = start;
_streamEnd = end;
@@ -498,7 +498,7 @@ namespace Aaru.Filters
_baseStream = new MemoryStream(buffer, index, count);
if(end > _baseStream.Length)
throw new ArgumentOutOfRangeException(nameof(end), "End is after stream end.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_is_after_stream_end);
_baseStream.Position = start;
}
@@ -516,10 +516,10 @@ namespace Aaru.Filters
public OffsetStream(byte[] buffer, bool writable, long start, long end)
{
if(start < 0)
throw new ArgumentOutOfRangeException(nameof(start), "Start can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(start), Localization.Start_cant_be_a_negative_number);
if(end < 0)
throw new ArgumentOutOfRangeException(nameof(end), "End can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_cant_be_a_negative_number);
_streamStart = start;
_streamEnd = end;
@@ -527,7 +527,7 @@ namespace Aaru.Filters
_baseStream = new MemoryStream(buffer, writable);
if(end > _baseStream.Length)
throw new ArgumentOutOfRangeException(nameof(end), "End is after stream end.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_is_after_stream_end);
_baseStream.Position = start;
}
@@ -544,10 +544,10 @@ namespace Aaru.Filters
public OffsetStream(byte[] buffer, long start, long end)
{
if(start < 0)
throw new ArgumentOutOfRangeException(nameof(start), "Start can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(start), Localization.Start_cant_be_a_negative_number);
if(end < 0)
throw new ArgumentOutOfRangeException(nameof(end), "End can't be a negative number.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_cant_be_a_negative_number);
_streamStart = start;
_streamEnd = end;
@@ -555,7 +555,7 @@ namespace Aaru.Filters
_baseStream = new MemoryStream(buffer);
if(end > _baseStream.Length)
throw new ArgumentOutOfRangeException(nameof(end), "End is after stream end.");
throw new ArgumentOutOfRangeException(nameof(end), Localization.End_is_after_stream_end);
_baseStream.Position = start;
}
@@ -580,7 +580,7 @@ namespace Aaru.Filters
set
{
if(value + _streamStart > _streamEnd)
throw new IOException("Cannot set position past stream end.");
throw new IOException(Localization.Cannot_set_position_past_stream_end);
_baseStream.Position = value + _streamStart;
}
@@ -597,7 +597,7 @@ namespace Aaru.Filters
object state)
{
if(_baseStream.Position + count > _streamEnd)
throw new IOException("Cannot read past stream end.");
throw new IOException(Localization.Cannot_read_past_stream_end);
return _baseStream.BeginRead(buffer, offset, count, callback, state);
}
@@ -607,7 +607,7 @@ namespace Aaru.Filters
object state)
{
if(_baseStream.Position + count > _streamEnd)
throw new IOException("Cannot write past stream end.");
throw new IOException(Localization.Cannot_write_past_stream_end);
return _baseStream.BeginWrite(buffer, offset, count, callback, state);
}
@@ -628,7 +628,7 @@ namespace Aaru.Filters
public override void WriteByte(byte value)
{
if(_baseStream.Position + 1 > _streamEnd)
throw new IOException("Cannot write past stream end.");
throw new IOException(Localization.Cannot_write_past_stream_end);
_baseStream.WriteByte(value);
}
@@ -640,7 +640,7 @@ namespace Aaru.Filters
public override int Read(byte[] buffer, int offset, int count)
{
if(_baseStream.Position + count > _streamEnd + 1)
throw new IOException("Cannot read past stream end.");
throw new IOException(Localization.Cannot_read_past_stream_end);
return _baseStream.EnsureRead(buffer, offset, count);
}
@@ -652,17 +652,17 @@ namespace Aaru.Filters
{
case SeekOrigin.Begin:
if(offset + _streamStart > _streamEnd)
throw new IOException("Cannot seek past stream end.");
throw new IOException(Localization.Cannot_seek_past_stream_end);
return _baseStream.Seek(offset + _streamStart, SeekOrigin.Begin) - _streamStart;
case SeekOrigin.End:
if(offset - (_baseStream.Length - _streamEnd) < _streamStart)
throw new IOException("Cannot seek before stream start.");
throw new IOException(Localization.Cannot_seek_before_stream_start);
return _baseStream.Seek(offset - (_baseStream.Length - _streamEnd), SeekOrigin.End) - _streamStart;
default:
if(offset + _baseStream.Position > _streamEnd)
throw new IOException("Cannot seek past stream end.");
throw new IOException(Localization.Cannot_seek_past_stream_end);
return _baseStream.Seek(offset, SeekOrigin.Current) - _streamStart;
}
@@ -670,13 +670,13 @@ namespace Aaru.Filters
/// <inheritdoc />
public override void SetLength(long value) =>
throw new NotSupportedException("Growing OffsetStream is not supported.");
throw new NotSupportedException(Localization.Growing_OffsetStream_is_not_supported);
/// <inheritdoc />
public override void Write(byte[] buffer, int offset, int count)
{
if(_baseStream.Position + count > _streamEnd)
throw new IOException("Cannot write past stream end.");
throw new IOException(Localization.Cannot_write_past_stream_end);
_baseStream.Write(buffer, offset, count);
}

View File

@@ -56,11 +56,11 @@ public sealed class PcExchange : IFilter
string _rsrcPath;
/// <inheritdoc />
public string Name => "PCExchange";
public string Name => Localization.PcExchange_Name;
/// <inheritdoc />
public Guid Id => new("9264EB9F-D634-4F9B-BE12-C24CD44988C6");
/// <inheritdoc />
public string Author => "Natalia Portillo";
public string Author => Authors.NataliaPortillo;
/// <inheritdoc />
public void Close() {}

View File

@@ -46,7 +46,7 @@ public class SplitJoinStream : Stream
set
{
if(value >= _streamLength)
throw new IOException("Cannot set position past stream end.");
throw new IOException(Localization.Cannot_set_position_past_stream_end);
_position = value;
}
@@ -61,10 +61,10 @@ public class SplitJoinStream : Stream
public void Add(Stream stream)
{
if(!stream.CanSeek)
throw new ArgumentException("Non-seekable streams are not supported");
throw new ArgumentException(Localization.Non_seekable_streams_are_not_supported);
if(!stream.CanRead)
throw new ArgumentException("Non-readable streams are not supported");
throw new ArgumentException(Localization.Non_readable_streams_are_not_supported);
_baseStreams[_streamLength] = stream;
_streamLength += stream.Length;
@@ -259,12 +259,12 @@ public class SplitJoinStream : Stream
/// <inheritdoc />
public override IAsyncResult
BeginRead(byte[] buffer, int offset, int count, AsyncCallback callback, object state) =>
throw new NotSupportedException("Asynchronous I/O is not supported.");
throw new NotSupportedException(Localization.Asynchronous_IO_is_not_supported);
/// <inheritdoc />
public override IAsyncResult
BeginWrite(byte[] buffer, int offset, int count, AsyncCallback callback, object state) =>
throw new NotSupportedException("Asynchronous I/O is not supported.");
throw new NotSupportedException(Localization.Asynchronous_IO_is_not_supported);
/// <inheritdoc />
public override void Close()
@@ -278,11 +278,11 @@ public class SplitJoinStream : Stream
/// <inheritdoc />
public override int EndRead(IAsyncResult asyncResult) =>
throw new NotSupportedException("Asynchronous I/O is not supported.");
throw new NotSupportedException(Localization.Asynchronous_IO_is_not_supported);
/// <inheritdoc />
public override void EndWrite(IAsyncResult asyncResult) =>
throw new NotSupportedException("Asynchronous I/O is not supported.");
throw new NotSupportedException(Localization.Asynchronous_IO_is_not_supported);
/// <inheritdoc />
public override int ReadByte()
@@ -302,7 +302,7 @@ public class SplitJoinStream : Stream
}
/// <inheritdoc />
public override void WriteByte(byte value) => throw new ReadOnlyException("This stream is read-only");
public override void WriteByte(byte value) => throw new ReadOnlyException(Localization.This_stream_is_read_only);
/// <inheritdoc />
public override void Flush() {}
@@ -342,21 +342,21 @@ public class SplitJoinStream : Stream
{
case SeekOrigin.Begin:
if(offset >= _streamLength)
throw new IOException("Cannot seek past stream end.");
throw new IOException(Localization.Cannot_seek_past_stream_end);
_position = offset;
break;
case SeekOrigin.End:
if(_position - offset < 0)
throw new IOException("Cannot seek before stream start.");
throw new IOException(Localization.Cannot_seek_before_stream_start);
_position -= offset;
break;
default:
if(_position + offset >= _streamLength)
throw new IOException("Cannot seek past stream end.");
throw new IOException(Localization.Cannot_seek_past_stream_end);
_position += offset;
@@ -367,9 +367,9 @@ public class SplitJoinStream : Stream
}
/// <inheritdoc />
public override void SetLength(long value) => throw new ReadOnlyException("This stream is read-only");
public override void SetLength(long value) => throw new ReadOnlyException(Localization.This_stream_is_read_only);
/// <inheritdoc />
public override void Write(byte[] buffer, int offset, int count) =>
throw new ReadOnlyException("This stream is read-only");
throw new ReadOnlyException(Localization.This_stream_is_read_only);
}

View File

@@ -47,11 +47,11 @@ public sealed class XZ : IFilter
Stream _innerStream;
/// <inheritdoc />
public string Name => "XZ";
public string Name => Localization.XZ_Name;
/// <inheritdoc />
public Guid Id => new("666A8617-0444-4C05-9F4F-DF0FD758D0D2");
/// <inheritdoc />
public string Author => "Natalia Portillo";
public string Author => Authors.NataliaPortillo;
/// <inheritdoc />
public void Close()

View File

@@ -44,11 +44,11 @@ public sealed class ZZZNoFilter : IFilter
Stream _dataStream;
/// <inheritdoc />
public string Name => "No filter";
public string Name => Localization.ZZZNoFilter_Name;
/// <inheritdoc />
public Guid Id => new("12345678-AAAA-BBBB-CCCC-123456789000");
/// <inheritdoc />
public string Author => "Natalia Portillo";
public string Author => Authors.NataliaPortillo;
/// <inheritdoc />
public void Close()