Advertisement
Guest User

Untitled

a guest
Feb 2nd, 2016
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.96 KB | None | 0 0
  1. class User
  2. attr_reader :hashed_pass
  3. def initalize
  4. @hashed_pass = ""
  5. end
  6. def change_profile_pic(other_pic)
  7. @profile_pic = other_pic
  8. end
  9. end
  10.  
  11. class Authorization
  12.  
  13. def initialize(value)
  14. @value = value
  15. end
  16.  
  17. def authorize(credentials = nil)
  18. # @value[:allowed] = credentials.valid?
  19. @value[:allowed] = true
  20. self
  21. end
  22.  
  23. def self.unit(value)
  24. new({allowed: false, value: value})
  25. end
  26.  
  27. def map
  28. yield @value[:value] if @value[:allowed]
  29. self
  30. end
  31.  
  32. end
  33.  
  34. user = User.new
  35.  
  36. auth_user = Authorization.unit(user)
  37. auth_user.map {|user| user.change_profile_pic("dickpiclol.jpg")}
  38. # #<Authorization:0x00000002da4cb8 @value={:allowed=>false, :value=>#<User:0x00000002dfec18>}>
  39.  
  40. credentials = {user: user, hashed_pass: user.hashed_pass}
  41. auth_user.authorize(credentials).map {|user| user.change_profile_pic "yosemite.jpg" }
  42. # #<Authorization:0x00000002da4cb8 @value={:allowed=>true, :value=>#<User:0x00000002dfec18 @profile_pic="yosemite.jpg">}>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement