class Confluency::Client

Public Class Methods

new(server_url) click to toggle source
# File lib/confluency/client.rb, line 6
def initialize(server_url)
  server_url += "/rpc/xmlrpc" unless server_url[-11..-1] == "/rpc/xmlrpc"
  @server_url = server_url
  server = XMLRPC::Client.new2(server_url)
  @conf = server.proxy("confluence2")
  @token = "12345"
end

Public Instance Methods

login(username, password) click to toggle source
# File lib/confluency/client.rb, line 14
def login(username, password)
  @user = username
  @pass = password
  do_login()
end
method_missing(method_name, *args) click to toggle source
# File lib/confluency/client.rb, line 20
def method_missing(method_name, *args)
  begin
    @conf.send(method_name, *([@token] + args))
  rescue XMLRPC::FaultException => e
    if (e.faultString.include?("InvalidSessionException"))
      do_login
      retry
    else
      raise e.faultString
    end
  end
end

Private Instance Methods

do_login() click to toggle source
# File lib/confluency/client.rb, line 35
def do_login()
  begin
    @token = @conf.login(@user, @pass)
  rescue XMLRPC::FaultException => e
    raise e.faultString
  end
end