コード例 #1
0
 /// <summary>
 /// Initialize a new instance of <see cref="StaticAnswerCaptchaFactory{TAnswer}"/> 。
 /// </summary>
 /// <param name="answerSaver">The answer saver.</param>
 /// <param name="ticketFactory">The ticket factory.</param>
 /// <param name="disposeSaverAndFactory">Whether to dispose the saver and the factory or not when being disposed.</param>
 public StaticAnswerCaptchaFactory(ICaptchaAnswerSaver <TAnswer> answerSaver,
                                   ITicketFactory ticketFactory, bool disposeSaverAndFactory = false)
 {
     if (answerSaver == null)
     {
         throw new ArgumentNullException(nameof(answerSaver));
     }
     if (ticketFactory == null)
     {
         throw new ArgumentNullException(nameof(ticketFactory));
     }
     this.answerSaver            = answerSaver;
     this.disposeSaverAndFactory = disposeSaverAndFactory;
     this.ticketFactory          = ticketFactory;
 }
コード例 #2
0
 /// <summary>
 /// Initialize a new instance of <see cref="ImageCaptchaFactory"/>.
 /// </summary>
 /// <param name="answerSaver">The answer saver.</param>
 /// <param name="ticketFactory">The ticket factory.</param>
 /// <param name="settings">The settings.</param>
 /// <param name="disposeSaverAndFactory">Whether to dispose the saver and the factory or not when being disposed.</param>
 public ImageCaptchaFactory(ICaptchaAnswerSaver <string> answerSaver,
                            ITicketFactory ticketFactory, Settings settings, bool disposeSaverAndFactory = false)
     : base(answerSaver, ticketFactory, disposeSaverAndFactory)
 {
     if (this.IsDisposed)
     {
         throw new ObjectDisposedException(null);
     }
     if (answerSaver == null)
     {
         throw new ArgumentNullException(nameof(answerSaver));
     }
     if (settings == null)
     {
         throw new ArgumentNullException(nameof(settings));
     }
     this.lengths    = settings.AllowedLengths.ToArray();
     this.fonts      = settings.AllowedFonts.ToArray();
     this.characters = settings.AllowedCharacters.ToArray();
 }