Class: Password

Inherits:
String
  • Object
show all
Defined in:
app/models/password.rb

Direct Known Subclasses

BashpassPassword

Constant Summary collapse

PASSWORD_LENGTH =
12

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.generateObject

This simply creates a new password using ‘pwgen`. Example:

new_password = Password.generate


10
11
12
13
# File 'app/models/password.rb', line 10

def self.generate
  return pwgen_password if pwgen_password.length == PASSWORD_LENGTH
  return Passgen::generate( pronounceable: true )
end

.pwgen_passwordObject



22
23
24
# File 'app/models/password.rb', line 22

def self.pwgen_password
  Password.new( `pwgen #{PASSWORD_LENGTH} -N 1 -n -c -B`.to_s[0..-2] )
end

Instance Method Details

#generate!Object

Example:

new_password = Password.new
new_password.generate!


18
19
20
# File 'app/models/password.rb', line 18

def generate!
  replace self.class.generate
end