コード例 #1
0
        private void SetAllowedParameter(CharactersAllowed charactersAllowed)
        {
            switch (charactersAllowed)
            {
                case Parameter.CharactersAllowed.Alpha:
                    CharactersAllowed = RandomOrgConstants.CHARACTERS_ALLOWED_ALPHA;
                    break;

                case Parameter.CharactersAllowed.UpperOnly:
                    CharactersAllowed = RandomOrgConstants.CHARACTERS_ALLOWED_UPPER_ONLY;
                    break;

                case Parameter.CharactersAllowed.LowerOnly:
                    CharactersAllowed = RandomOrgConstants.CHARACTERS_ALLOWED_LOWER_ONLY;
                    break;

                case Parameter.CharactersAllowed.UpperNumeric:
                    CharactersAllowed = RandomOrgConstants.CHARACTERS_ALLOWED_UPPER_NUMERIC;
                    break;

                case Parameter.CharactersAllowed.LowerNumeric:
                    CharactersAllowed = RandomOrgConstants.CHARACTERS_ALLOWED_LOWER_NUMERIC;
                    break;

                default:
                    CharactersAllowed = RandomOrgConstants.CHARACTERS_ALLOWED_ALPHA_NUMERIC;
                    break;
            }
        }
コード例 #2
0
 /// <summary>
 /// Build an instance of <see cref="StringParameters"/>
 /// </summary>
 /// <param name="numberOfItemsToReturn">How many random string values you need. Must be between 1 and 10,000.</param>
 /// <param name="length">The length of each string. Must be within the [1,20] range. All strings will be of the same length</param>
 /// <param name="charactersAllowed">Build of common character sets that are allowed to occur in the random strings</param>
 /// <param name="allowDuplicates">True if duplicate values are allowed in the random values, default to <c>true</c></param>
 /// <param name="verifyOriginator">Verify that the response is what was sent by random.org and it was not tampered with before receieved</param>
 /// <returns>Instance of <see cref="StringParameters"/></returns>
 public static StringParameters Create(int numberOfItemsToReturn, int length, CharactersAllowed charactersAllowed, bool allowDuplicates = true, bool verifyOriginator = false)
 {
     var parameters = new StringParameters(MethodType.String, verifyOriginator);
     parameters.SetAllowedParameter(charactersAllowed);
     parameters.SetParameters(numberOfItemsToReturn, length, allowDuplicates);
     return parameters;
 }
コード例 #3
0
        /// <summary>
        /// Retrieves a list of random blob values
        /// </summary>
        /// <param name="numberOfItemsToReturn">How many random string values you need. Must be between 1 and 10,000.</param>
        /// <param name="length">The length of each string. Must be within the [1,20] range. All strings will be of the same length</param>
        /// <param name="charactersAllowed">Build of common character sets that are allowed to occur in the random strings</param>
        /// <param name="allowDuplicates">True if duplicate values are allowed in the random values, default to <c>true</c></param>
        /// <returns>List of random blob values</returns>
        public virtual IEnumerable<string> GenerateStrings(int numberOfItemsToReturn, int length, CharactersAllowed charactersAllowed, bool allowDuplicates = true)
        {
            IParameters requestParameters = StringParameters.Create(numberOfItemsToReturn, length, charactersAllowed, allowDuplicates);
            IMethodCallBroker broker = new MethodCallBroker(RequestBuilder, RandomService, BeforeRequestCommandFactory, ResponseHandlerFactory);
            broker.Generate(requestParameters);

            return (ResponseParser.ResponseInfo as DataResponseInfo<string>)?.Data;
        }
コード例 #4
0
        /// <summary>
        /// Retrieve a list of random integer values as an asynchronous operation
        /// </summary>
        /// <param name="numberOfItemsToReturn">How many random string values you need. Must be between 1 and 10,000.</param>
        /// <param name="length">The length of each string. Must be within the [1,20] range. All strings will be of the same length</param>
        /// <param name="charactersAllowed">Create of common character sets that are allowed to occur in the random strings</param>
        /// <param name="allowDuplicates">True if duplicate values are allowed in the random values, default to <c>true</c></param>
        /// <returns>All information returned from random service, include the list of guassian values</returns>
        public async Task<DataResponseInfo<string>> GenerateStringsAsync(int numberOfItemsToReturn, int length, CharactersAllowed charactersAllowed, bool allowDuplicates = true)
        {
            var parameters = StringParameters.Create(numberOfItemsToReturn, length, charactersAllowed, allowDuplicates, _verifyOriginater);
            _verifyOriginater = false;

            var response = await _methodCallBroker.GenerateAsync(parameters);
            return response as DataResponseInfo<string>;
        }