FixAntenna/NetCore/Validation/IValidatorFactory.cs (9 lines of code) (raw):
// Copyright (c) 2021 EPAM Systems
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
namespace Epam.FixAntenna.NetCore.Validation
{
/// <summary>
/// The common interface for creating validators.
/// </summary>
public interface IValidatorFactory
{
/// <summary>
/// Creates the validator.
/// </summary>
/// <param name="validatorType"> the type of validator
/// </param>
IValidator CreateValidator(ValidatorType validatorType);
/// <summary>
/// Creates list of validator.
/// </summary>
/// <seealso cref="ValidatorType"> </seealso>
/// <returns> validator container
/// </returns>
IValidatorContainer CreateAllValidators();
/// <summary>
/// Creates message type validator.
/// </summary>
/// <returns> Container with instance of <c>MessageTypeValidator</c>. </returns>
IValidatorContainer CreateRequiredValidator();
}
}