protected override void OnValidate(ICurrentProvider curr, object obj)
 {
     if (null != curr.CurrentScore)
     {
         throw new ScoringModelAlreadyExistsException();
     }
 }
 protected override void OnValidate(ICurrentProvider curr, object obj)
 {
     if (null == curr.CurrentMeet)
     {
         throw new NoActiveMeetException();
     }
 }
        /// <summary>
        /// Helper method for validating current provider with specified validator.
        /// </summary>
        /// <typeparam name="TValidatorBuilder">The type of the validator builder.</typeparam>
        /// <param name="curr">The curr.</param>
        /// <param name="obj">The object.</param>
        public static void ValidateWith <TValidatorBuilder> (ICurrentProvider curr, object obj = null)
            where TValidatorBuilder : IValidatorBuilder <ICurrentProvider>, new()
        {
            var builder   = new TValidatorBuilder();
            var validator = builder.Build();

            validator.Validate(curr, obj);
        }
            protected override void OnValidate(ICurrentProvider curr, object obj)
            {
                if (!(obj is int))      // do not perform validation, if unknonw type
                {
                    return;
                }

                var skill = (int)obj;
                var completedElementCount = curr.CurrentScore.CompletedElements;

                if (skill >= completedElementCount)
                {
                    throw new SkillOutOfCompletedRangeException(skill, completedElementCount);
                }
            }
Ejemplo n.º 5
0
 /// <summary>
 /// Initializes a new instance of the <see cref="ScoringController"/> class.
 /// </summary>
 /// <param name="currentProvider">The current provider.</param>
 /// <param name="current">The current.</param>
 public ScoringController([NotNull] ICurrentProvider currentProvider, [NotNull] IDataProvider current)
     : base(current)
 {
     this.currentProvider = currentProvider;
 }
Ejemplo n.º 6
0
 public CurrentController([NotNull] ICurrentProvider currentProvider, [NotNull] IDataProvider provider, [NotNull] IModelFactoryContainer modelFactoryContainer)
     : base(provider)
 {
     this.currentProvider       = currentProvider;
     this.modelFactoryContainer = modelFactoryContainer;
 }