rtoken 0.0.1 → 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/rtoken.rb +14 -0
- metadata +1 -1
data/lib/rtoken.rb
CHANGED
@@ -5,6 +5,7 @@
|
|
5
5
|
#
|
6
6
|
# @example Generate 10 length token
|
7
7
|
# RToken.rtoken(:size => 10) #=> Random sequence 10 chars
|
8
|
+
# RTolen.rtoken(10) #=> Less verbose fashion
|
8
9
|
#
|
9
10
|
# @example Generate 16 length token with special chars
|
10
11
|
# RToken.rtoken(:size => 16, :special_chars => '!@#$%%&')
|
@@ -48,11 +49,13 @@ class RToken
|
|
48
49
|
# @param [Hash] opts options that will be merged to the predefined on initialize
|
49
50
|
# @return [String] token
|
50
51
|
def rtoken(opts=nil)
|
52
|
+
opts = RToken.check_param(opts)
|
51
53
|
RToken.rtoken @options.merge(opts || {})
|
52
54
|
end
|
53
55
|
|
54
56
|
# Generates a token
|
55
57
|
#
|
58
|
+
# @param [Integer] opts Sames as :size => n
|
56
59
|
# @param [Hash] opts The options to configure the token generator
|
57
60
|
# @param opts [Fixnum] :size The size of token string. Default 8
|
58
61
|
# @param opts :uppercase if true all chars will be replaced by uppercase. Default false
|
@@ -61,6 +64,7 @@ class RToken
|
|
61
64
|
# @param opts [String] :special_chars special chars to be include on token generation, by default include alphanumeric chars
|
62
65
|
# @return [String] token
|
63
66
|
def self.rtoken(opts=nil)
|
67
|
+
opts = check_param(opts)
|
64
68
|
options = DEAFULT_OPTIONS.merge(opts || {})
|
65
69
|
size = options[:size] || 8
|
66
70
|
# Merge available chars
|
@@ -80,4 +84,14 @@ class RToken
|
|
80
84
|
end
|
81
85
|
token_chars.join
|
82
86
|
end
|
87
|
+
|
88
|
+
private
|
89
|
+
|
90
|
+
# @return If param is a Integer then convert it to {:size => param}
|
91
|
+
def self.check_param(param)
|
92
|
+
if param && param.is_a?(Integer)
|
93
|
+
return {:size => param}
|
94
|
+
end
|
95
|
+
param
|
96
|
+
end
|
83
97
|
end
|