Class: MetaProject::Tracker::Jira::JiraTracker::Session

Inherits:
Object
  • Object
show all
Defined in:
lib/meta_project/tracker/jira/jira_tracker.rb

Overview

This wrapper around XMLRPC::Client that allows simpler method calls via method_missing and doesn’t require to manage the token

Instance Method Summary collapse

Constructor Details

#initialize(client, token) ⇒ Session

Returns a new instance of Session.



108
109
110
# File 'lib/meta_project/tracker/jira/jira_tracker.rb', line 108

def initialize(client, token)
  @client, @token = client, token
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(sym, *args, &block) ⇒ Object



112
113
114
115
116
# File 'lib/meta_project/tracker/jira/jira_tracker.rb', line 112

def method_missing(sym, *args, &block)
  token_args = [@token] + args
  xmlrpc_method = "#{JIRA_API}.#{sym.to_s}"
  @client.call(xmlrpc_method, *token_args)
end