Skip to content

Refactor to ArgumentException.ThrowIfNullOrEmpty() / .ThrowIfNullOrWhitespace() usage #269

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Sep 19, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Orm/Xtensive.Orm.Tests.Framework/Measurement.cs
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ public string Name
get { return name; }
[DebuggerStepThrough]
set {
ArgumentValidator.EnsureArgumentNotNullOrEmpty(value, "value");
ArgumentException.ThrowIfNullOrEmpty(value);
name = value;
UpdateFullName();
}
Expand Down Expand Up @@ -231,4 +231,4 @@ void IDisposable.Dispose()
Complete();
}
}
}
}
8 changes: 4 additions & 4 deletions Orm/Xtensive.Orm.Tests.Framework/TestSqlDriver.cs
Original file line number Diff line number Diff line change
Expand Up @@ -24,14 +24,14 @@ public static SqlDriver Create(UrlInfo connectionUrl)

public static SqlDriver Create(string connectionUrl)
{
ArgumentValidator.EnsureArgumentNotNullOrEmpty(connectionUrl, "connectionUrl");
ArgumentException.ThrowIfNullOrEmpty(connectionUrl);
return BuildDriver(new ConnectionInfo(connectionUrl));
}

public static SqlDriver Create(string provider, string connectionString)
{
ArgumentValidator.EnsureArgumentNotNullOrEmpty(provider, "provider");
ArgumentValidator.EnsureArgumentNotNullOrEmpty(connectionString, "connectionString");
ArgumentException.ThrowIfNullOrEmpty(provider);
ArgumentException.ThrowIfNullOrEmpty(connectionString);
return BuildDriver(new ConnectionInfo(provider, connectionString));
}

Expand Down Expand Up @@ -59,4 +59,4 @@ private static SqlDriverFactory GetFactory(string provider)
}
}
}
}
}
2 changes: 1 addition & 1 deletion Orm/Xtensive.Orm/Collections/TypeRegistry.cs
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ public void Register(Assembly assembly, string @namespace)
{
EnsureNotLocked();
ArgumentNullException.ThrowIfNull(assembly);
ArgumentValidator.EnsureArgumentNotNullOrEmpty(@namespace, "@namespace");
ArgumentException.ThrowIfNullOrEmpty(@namespace);
Register(new TypeRegistration(assembly, @namespace));
}

Expand Down
37 changes: 0 additions & 37 deletions Orm/Xtensive.Orm/Core/ArgumentValidator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -37,43 +37,6 @@ public static void EnsureArgumentIsNotDefault<T>(T value, [InvokerParameterName]
}
}

/// <summary>
/// Ensures argument (<paramref name="value"/>) is not
/// <see langoword="null"/> or <see cref="string.Empty"/> string.
/// </summary>
/// <param name="value">Value to check.</param>
/// <param name="parameterName">Name of the method parameter.</param>
[MethodImpl(MethodImplOptions.AggressiveInlining)]
#if NET7_0_OR_GREATER
[Obsolete("Use ArgumentException.ThrowIfNullOrEmpty()")]
#endif
internal static void EnsureArgumentNotNullOrEmpty(string value, [InvokerParameterName] string parameterName)
{
#if NET7_0_OR_GREATER
ArgumentException.ThrowIfNullOrEmpty(value, parameterName);
#else
ArgumentNullException.ThrowIfNull(value, parameterName);
if (value.Length == 0) {
throw new ArgumentException(Strings.ExArgumentCannotBeEmptyString, parameterName);
}
#endif
}

[Obsolete("Use CommunityToolkit.Diagnostics.Guard.IsNotNullOrWhiteSpace()")]
[MethodImpl(MethodImplOptions.AggressiveInlining)]
internal static void EnsureArgumentNotNullOrEmptyOrWhiteSpace(string value, [InvokerParameterName] string parameterName)
{
ArgumentNullException.ThrowIfNull(value, parameterName);

if (value.Length==0) {
throw new ArgumentException(Strings.ExArgumentCannotBeEmptyString, parameterName);
}

if (value.Trim().Length==0) {
throw new ArgumentException(Strings.ExArgumentCannotBeWhiteSpacesOnlyString, parameterName);
}
}

/// <summary>
/// Ensures argument (<paramref name="value"/>) is not <see langword="null"/>
/// and of <typeparamref name="T"/> type.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ public static ConstructorInfo GetConstructorFromSerializableForm(this string ser

public static void AddArray<T>(this SerializationInfo info, string key, T[] array)
{
ArgumentValidator.EnsureArgumentNotNullOrEmpty(key, "key");
ArgumentException.ThrowIfNullOrEmpty(key);
ArgumentNullException.ThrowIfNull(array);

info.AddValue($"{key}Count", array.Length);
Expand All @@ -97,7 +97,7 @@ public static void AddArray<T>(this SerializationInfo info, string key, T[] arra

public static T[] GetArrayFromSerializableForm<T>(this SerializationInfo info, string key)
{
ArgumentValidator.EnsureArgumentNotNullOrEmpty(key, "key");
ArgumentException.ThrowIfNullOrEmpty(key);

var count = info.GetInt32($"{key}Count");
var array = new T[count];
Expand Down
4 changes: 2 additions & 2 deletions Orm/Xtensive.Orm/Modelling/Actions/CreateNodeAction.cs
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ public Type Type {
public string Name {
get { return name; }
set {
ArgumentValidator.EnsureArgumentNotNullOrEmpty(value, "value");
ArgumentException.ThrowIfNullOrEmpty(value);
EnsureNotLocked();
name = value;
}
Expand Down Expand Up @@ -122,4 +122,4 @@ protected override void GetParameters(List<Pair<string>> parameters)
parameters.Add(new Pair<string>("Parameters", this.parameters.ToCommaDelimitedString()));
}
}
}
}
4 changes: 2 additions & 2 deletions Orm/Xtensive.Orm/Modelling/Comparison/Hints/DataHint.cs
Original file line number Diff line number Diff line change
Expand Up @@ -49,11 +49,11 @@ public override List<HintTarget> GetTargets()
/// </summary>
protected DataHint(string sourceTablePath, IReadOnlyList<IdentityPair> identities)
{
ArgumentValidator.EnsureArgumentNotNullOrEmpty(sourceTablePath, "sourceTablePath");
ArgumentException.ThrowIfNullOrEmpty(sourceTablePath);
ArgumentNullException.ThrowIfNull(identities, "pairs");

SourceTablePath = sourceTablePath;
Identities = identities.AsSafeWrapper();
}
}
}
}
4 changes: 2 additions & 2 deletions Orm/Xtensive.Orm/Modelling/Comparison/Hints/IgnoreHint.cs
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,8 @@ public override string ToString()
/// <param name="path">The ignored node path.</param>
public IgnoreHint(string path)
{
ArgumentValidator.EnsureArgumentNotNullOrEmpty(path, "path");
ArgumentException.ThrowIfNullOrEmpty(path);
Path = path;
}
}
}
}
4 changes: 2 additions & 2 deletions Orm/Xtensive.Orm/Modelling/Nesting.cs
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ internal virtual void Initialize()
internal Nesting(Node node, string propertyName)
{
ArgumentNullException.ThrowIfNull(node);
ArgumentValidator.EnsureArgumentNotNullOrEmpty(propertyName, "propertyName");
ArgumentException.ThrowIfNullOrEmpty(propertyName);
Node = node;
PropertyName = propertyName;
Initialize();
Expand All @@ -86,4 +86,4 @@ internal Nesting(Node node)
Initialize();
}
}
}
}
6 changes: 3 additions & 3 deletions Orm/Xtensive.Orm/Modelling/Node.cs
Original file line number Diff line number Diff line change
Expand Up @@ -428,7 +428,7 @@ protected virtual void CopyPropertyValue(Node target, PropertyAccessor accessor)
/// <exception cref="InvalidOperationException">newName!=newIndex for <see cref="IUnnamedNode"/>.</exception>
protected virtual void ValidateMove(Node newParent, string newName, int newIndex)
{
ArgumentValidator.EnsureArgumentNotNullOrEmpty(newName, nameof(newName));
ArgumentException.ThrowIfNullOrEmpty(newName);
if (this is IModel) {
ArgumentValidator.EnsureArgumentIsInRange(newIndex, 0, 0, nameof(newIndex));
return;
Expand Down Expand Up @@ -1012,7 +1012,7 @@ protected Node(Node parent, string name)
}

if (!(this is IUnnamedNode)) {
ArgumentValidator.EnsureArgumentNotNullOrEmpty(name, nameof(name));
ArgumentException.ThrowIfNullOrEmpty(name);
}

Initialize();
Expand Down Expand Up @@ -1044,4 +1044,4 @@ void IDeserializationCallback.OnDeserialization(object sender)
}
}
}
}
}
3 changes: 1 addition & 2 deletions Orm/Xtensive.Orm/Modelling/NodeCollection.cs
Original file line number Diff line number Diff line change
Expand Up @@ -372,7 +372,7 @@ protected virtual void Initialize()
protected NodeCollection(Node parent, string name)
{
ArgumentNullException.ThrowIfNull(parent);
ArgumentValidator.EnsureArgumentNotNullOrEmpty(name, "name");
ArgumentException.ThrowIfNullOrEmpty(name);
this.name = name;
this.parent = parent;
Initialize();
Expand All @@ -394,4 +394,3 @@ void IDeserializationCallback.OnDeserialization(object sender)
}
}
}

4 changes: 2 additions & 2 deletions Orm/Xtensive.Orm/Orm/Building/Definitions/TypeDef.cs
Original file line number Diff line number Diff line change
Expand Up @@ -171,7 +171,7 @@ public FieldDef DefineField(PropertyInfo property)
/// <returns></returns>
public FieldDef DefineField(string name, Type valueType)
{
ArgumentValidator.EnsureArgumentNotNullOrEmpty(name, nameof(name));
ArgumentException.ThrowIfNullOrEmpty(name);
ArgumentNullException.ThrowIfNull(valueType);

var field = builder.DefineField(UnderlyingType, name, valueType);
Expand Down Expand Up @@ -221,4 +221,4 @@ internal TypeDef(ModelDefBuilder builder, Type type, Validator validator)
: NodeCollection<TypeDef>.Empty;
}
}
}
}
6 changes: 3 additions & 3 deletions Orm/Xtensive.Orm/Orm/Configuration/DatabaseConfiguration.cs
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ public string Name
get { return name; }
set
{
ArgumentValidator.EnsureArgumentNotNullOrEmpty(value, "value");
ArgumentException.ThrowIfNullOrEmpty(value);
EnsureNotLocked();
name = value;
}
Expand Down Expand Up @@ -109,10 +109,10 @@ public DatabaseConfiguration Clone()
/// <param name="name">Database name.</param>
public DatabaseConfiguration(string name)
{
ArgumentValidator.EnsureArgumentNotNullOrEmpty(name, "name");
ArgumentException.ThrowIfNullOrEmpty(name);
Name = name;
minTypeId = TypeInfo.MinTypeId;
maxTypeId = int.MaxValue;
}
}
}
}
2 changes: 1 addition & 1 deletion Orm/Xtensive.Orm/Orm/Configuration/DomainConfiguration.cs
Original file line number Diff line number Diff line change
Expand Up @@ -170,7 +170,7 @@ public static string SectionName
{
get => sectionName;
set {
ArgumentValidator.EnsureArgumentNotNullOrEmpty(value, "value");
ArgumentException.ThrowIfNullOrEmpty(value);
if (sectionNameIsDefined) {
throw Exceptions.AlreadyInitialized(nameof(SectionName));
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ public string Name
get { return name; }
set
{
ArgumentValidator.EnsureArgumentNotNullOrEmpty(value, "value");
ArgumentException.ThrowIfNullOrEmpty(value);
EnsureNotLocked();
name = value;
}
Expand Down Expand Up @@ -96,4 +96,4 @@ public KeyGeneratorConfiguration(string name)
CacheSize = DomainConfiguration.DefaultKeyGeneratorCacheSize;
}
}
}
}
4 changes: 2 additions & 2 deletions Orm/Xtensive.Orm/Orm/Configuration/LoggingConfiguration.cs
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ public static LoggingConfiguration Load()
/// <returns>Loaded configuration.</returns>
public static LoggingConfiguration Load(string sectionName)
{
ArgumentValidator.EnsureArgumentNotNullOrEmpty(sectionName, "sectionName");
ArgumentException.ThrowIfNullOrEmpty(sectionName);

var section = (ConfigurationSection)ConfigurationManager.GetSection(sectionName);
if (section==null)
Expand Down Expand Up @@ -71,7 +71,7 @@ public static LoggingConfiguration Load(System.Configuration.Configuration confi
public static LoggingConfiguration Load(System.Configuration.Configuration configuration, string sectionName)
{
ArgumentNullException.ThrowIfNull(configuration);
ArgumentValidator.EnsureArgumentNotNullOrEmpty(sectionName, "sectionName");
ArgumentException.ThrowIfNullOrEmpty(sectionName);

var section = (ConfigurationSection) configuration.GetSection(sectionName);
if (section==null)
Expand Down
10 changes: 5 additions & 5 deletions Orm/Xtensive.Orm/Orm/Configuration/NameMappingCollection.cs
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,8 @@ public class NameMappingCollection : LockableBase, IEnumerable<KeyValuePair<stri
/// <param name="mappedName"></param>
public void Add([NotNull] string originalName, [NotNull] string mappedName)
{
ArgumentValidator.EnsureArgumentNotNullOrEmpty(originalName, "originalName");
ArgumentValidator.EnsureArgumentNotNullOrEmpty(mappedName, "mappedName");
ArgumentException.ThrowIfNullOrEmpty(originalName);
ArgumentException.ThrowIfNullOrEmpty(mappedName);
EnsureNotLocked();
items[originalName] = mappedName;
}
Expand All @@ -50,7 +50,7 @@ public void Add([NotNull] string originalName, [NotNull] string mappedName)
/// <param name="originalName"></param>
public bool Remove([NotNull] string originalName)
{
ArgumentValidator.EnsureArgumentNotNullOrEmpty(originalName, "originalName");
ArgumentException.ThrowIfNullOrEmpty(originalName);
EnsureNotLocked();
return items.Remove(originalName);
}
Expand All @@ -61,7 +61,7 @@ public bool Remove([NotNull] string originalName)
/// <param name="name">Mapped name for <paramref name="name"/>.</param>
public string Apply([NotNull] string name)
{
ArgumentValidator.EnsureArgumentNotNullOrEmpty(name, "name");
ArgumentException.ThrowIfNullOrEmpty(name);
string result;
if (items.TryGetValue(name, out result))
return result;
Expand Down Expand Up @@ -126,4 +126,4 @@ static NameMappingCollection()
Empty.Lock();
}
}
}
}
2 changes: 1 addition & 1 deletion Orm/Xtensive.Orm/Orm/Configuration/SessionConfiguration.cs
Original file line number Diff line number Diff line change
Expand Up @@ -305,7 +305,7 @@ public SessionConfiguration(string name)
/// <param name="name">Value for <see cref="Name"/>.</param>
public SessionConfiguration(string name, SessionOptions sessionOptions)
{
ArgumentValidator.EnsureArgumentNotNullOrEmpty(name, "name");
ArgumentException.ThrowIfNullOrEmpty(name);

Name = name;
Options = sessionOptions;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ public override void AddRange(IEnumerable<SessionConfiguration> items)

private void EnsureItemIsValid(SessionConfiguration item)
{
ArgumentValidator.EnsureArgumentNotNullOrEmpty(item.Name, "SessionConfiguration.Name");
ArgumentException.ThrowIfNullOrEmpty(item.Name, "SessionConfiguration.Name");
var current = this[item.Name];
if (current != null)
throw new InvalidOperationException(string.Format(Strings.ExConfigurationWithXNameAlreadyRegistered, current.Name));
Expand Down
4 changes: 2 additions & 2 deletions Orm/Xtensive.Orm/Orm/ConnectionInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -93,8 +93,8 @@ public bool Equals(ConnectionInfo other)
/// <param name="connectionString">A value for <see cref="ConnectionString"/>.</param>
public ConnectionInfo(string provider, string connectionString)
{
ArgumentValidator.EnsureArgumentNotNullOrEmpty(provider, "provider");
ArgumentValidator.EnsureArgumentNotNullOrEmpty(connectionString, "connectionString");
ArgumentException.ThrowIfNullOrEmpty(provider);
ArgumentException.ThrowIfNullOrEmpty(connectionString);

ConnectionString = connectionString;
Provider = provider.ToLowerInvariant();
Expand Down
2 changes: 1 addition & 1 deletion Orm/Xtensive.Orm/Orm/ConnectionInitEventData.cs
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ public class ConnectionInitEventData : ConnectionEventData
public ConnectionInitEventData(string initializationScript, DbConnection connection, bool reconnect = false)
: base(connection, reconnect)
{
ArgumentValidator.EnsureArgumentNotNullOrEmpty(initializationScript, nameof(initializationScript));
ArgumentException.ThrowIfNullOrEmpty(initializationScript);
InitializationScript = initializationScript;
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,8 @@ internal PrefixTerm(string prefix)
internal PrefixTerm(IOperator source, string prefix)
: base(SearchConditionNodeType.Prefix, source)
{
ArgumentValidator.EnsureArgumentNotNullOrEmptyOrWhiteSpace(prefix, "prefix");
ArgumentException.ThrowIfNullOrWhiteSpace(prefix);
Prefix = prefix;
}
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ internal SimpleTerm(string term)
internal SimpleTerm(IOperator source, string term)
: base(SearchConditionNodeType.SimpleTerm, source)
{
ArgumentValidator.EnsureArgumentNotNullOrEmptyOrWhiteSpace(term, "term");
ArgumentException.ThrowIfNullOrWhiteSpace(term);
Term = term;
}
}
Expand Down
Loading