Skip to content

Instantly share code, notes, and snippets.

@davidlesches
Created December 27, 2013 18:09
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save davidlesches/9caa4fe36d706d0b6996 to your computer and use it in GitHub Desktop.
Save davidlesches/9caa4fe36d706d0b6996 to your computer and use it in GitHub Desktop.
Yodlee and Rails Implementation, Part 4: User Management - app/models/yodlee/user.rb
module Yodlee
class User < Base
attr_reader :user
def initialize user
@user = user
end
def token
@token ||= login
end
def register
response = query({
:endpoint => '/jsonsdk/UserRegistration/register3',
:method => :POST,
:params => {
:cobSessionToken => cobrand_token,
:'userCredentials.loginName' => user.yodlee_username,
:'userCredentials.password' => user.yodlee_password,
:'userCredentials.objectInstanceType' => 'com.yodlee.ext.login.PasswordCredentials',
:'userProfile.emailAddress' => user.yodlee_username
}
})
@token = response.userContext.conversationCredentials.sessionToken
end
def login
response = query({
:endpoint => '/authenticate/login',
:method => :POST,
:params => {
:cobSessionToken => cobrand_token,
:login => user.yodlee_username,
:password => user.yodlee_password
}
})
@token = response.userContext.conversationCredentials.sessionToken
end
def destroy
response = query({
:endpoint => '/jsonsdk/UserRegistration/unregister',
:method => :POST,
:params => {
:cobSessionToken => cobrand_token,
:userSessionToken => token
}
})
@token = nil
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment