Class: RockRMS::Client

Inherits:
Object
  • Object
show all
Includes:
RecurringFrequencies, Attribute, AttributeValue, Batch, BinaryFile, Block, BlockAction, BlockType, Campus, ContentChannel, ContentChannelItem, ContentChannelType, DefinedType, DefinedValue, EntityType, ExceptionLog, Fund, Gateway, Group, GroupMember, History, HtmlContent, Lava, LavaShortcode, Page, PaymentDetail, Person, PhoneNumber, RecurringDonation, RecurringDonationDetail, Refund, RefundReason, Registration, RegistrationSession, SavedPaymentMethod, ServiceJob, SystemCommunication, SystemEmail, Transaction, TransactionDetail, TransactionImage, UserLogin, Utility, WorkflowActionType, WorkflowActivityType, WorkflowType, TransformHashKeys
Defined in:
lib/rock_rms/client.rb,
lib/rock_rms/resources/fund.rb,
lib/rock_rms/resources/lava.rb,
lib/rock_rms/resources/page.rb,
lib/rock_rms/resources/batch.rb,
lib/rock_rms/resources/block.rb,
lib/rock_rms/resources/group.rb,
lib/rock_rms/resources/campus.rb,
lib/rock_rms/resources/person.rb,
lib/rock_rms/resources/refund.rb,
lib/rock_rms/resources/gateway.rb,
lib/rock_rms/resources/history.rb,
lib/rock_rms/resources/version.rb,
lib/rock_rms/resources/attribute.rb,
lib/rock_rms/resources/block_type.rb,
lib/rock_rms/resources/user_login.rb,
lib/rock_rms/resources/binary_file.rb,
lib/rock_rms/resources/entity_type.rb,
lib/rock_rms/resources/service_job.rb,
lib/rock_rms/resources/transaction.rb,
lib/rock_rms/resources/block_action.rb,
lib/rock_rms/resources/defined_type.rb,
lib/rock_rms/resources/group_member.rb,
lib/rock_rms/resources/html_content.rb,
lib/rock_rms/resources/phone_number.rb,
lib/rock_rms/resources/registration.rb,
lib/rock_rms/resources/system_email.rb,
lib/rock_rms/resources/defined_value.rb,
lib/rock_rms/resources/exception_log.rb,
lib/rock_rms/resources/refund_reason.rb,
lib/rock_rms/resources/workflow_type.rb,
lib/rock_rms/resources/lava_shortcode.rb,
lib/rock_rms/resources/payment_detail.rb,
lib/rock_rms/resources/attribute_value.rb,
lib/rock_rms/resources/content_channel.rb,
lib/rock_rms/resources/transaction_image.rb,
lib/rock_rms/resources/recurring_donation.rb,
lib/rock_rms/resources/transaction_detail.rb,
lib/rock_rms/resources/content_channel_item.rb,
lib/rock_rms/resources/content_channel_type.rb,
lib/rock_rms/resources/registration_session.rb,
lib/rock_rms/resources/saved_payment_method.rb,
lib/rock_rms/resources/system_communication.rb,
lib/rock_rms/resources/workflow_action_type.rb,
lib/rock_rms/resources/workflow_activity_type.rb,
lib/rock_rms/resources/recurring_donation_detail.rb

Defined Under Namespace

Modules: Attribute, AttributeValue, Batch, BinaryFile, Block, BlockAction, BlockType, Campus, ContentChannel, ContentChannelItem, ContentChannelType, DefinedType, DefinedValue, EntityType, ExceptionLog, Fund, Gateway, Group, GroupMember, History, HtmlContent, Lava, LavaShortcode, Page, PaymentDetail, Person, PhoneNumber, RecurringDonation, RecurringDonationDetail, Refund, RefundReason, Registration, RegistrationSession, SavedPaymentMethod, ServiceJob, SystemCommunication, SystemEmail, Transaction, TransactionDetail, TransactionImage, UserLogin, Utility, WorkflowActionType, WorkflowActivityType, WorkflowType

Constant Summary

Constants included from WorkflowType

WorkflowType::PATH

Constants included from WorkflowActivityType

WorkflowActivityType::PATH

Constants included from WorkflowActionType

WorkflowActionType::PATH

Constants included from Transaction

Transaction::PATH

Constants included from RegistrationSession

RegistrationSession::PATH

Constants included from Registration

Registration::PATH

Constants included from Refund

Refund::PATH

Constants included from Person

Person::NAME_SEARCH_DEFAULTS

Constants included from Gateway

Gateway::PATH

Constants included from EntityType

EntityType::PATH

Constants included from RecurringFrequencies

RecurringFrequencies::RECURRING_FREQUENCIES

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from WorkflowType

#find_workflow_type, #list_workflow_types

Methods included from WorkflowActivityType

#find_workflow_activity_type, #list_workflow_activity_types

Methods included from WorkflowActionType

#find_workflow_action_type, #list_workflow_action_types

Methods included from Utility

#find_rock_version

Methods included from UserLogin

#create_user_login, #list_user_logins, #update_user_login

Methods included from TransactionImage

#create_transaction_image

Methods included from TransactionDetail

#create_transaction_detail, #delete_transaction_detail, #find_transaction_detail, #list_transaction_details, #update_transaction_detail

Methods included from Transaction

#create_transaction, #delete_transaction, #find_donations_by_giving_id, #find_transaction, #launch_transaction_workflow, #list_transactions, #refund_transaction, #update_transaction

Methods included from SystemEmail

#list_system_emails, #update_system_email

Methods included from SystemCommunication

#list_system_communications, #update_system_communcation

Methods included from ServiceJob

#list_service_jobs, #update_service_job

Methods included from SavedPaymentMethod

#create_saved_payment_method, #delete_saved_payment_method, #list_saved_payment_methods, #update_saved_payment_method

Methods included from RegistrationSession

#find_registration_session, #list_registration_sessions

Methods included from Registration

#delete_registration, #find_registration, #list_registrations, #update_registration

Methods included from RefundReason

#create_refund_reason, #list_refund_reasons

Methods included from Refund

#create_refund

Methods included from RecurringDonationDetail

#create_recurring_donation_detail, #delete_recurring_donation_detail, #update_recurring_donation_detail

Methods included from RecurringDonation

#create_recurring_donation, #delete_recurring_donation, #find_recurring_donation, #launch_scheduled_transaction_workflow, #list_recurring_donations, #update_recurring_donation

Methods included from PhoneNumber

#create_phone_number, #list_phone_numbers

Methods included from Person

#create_business, #create_person, #find_person, #find_person_by_alias_id, #find_person_by_email, #find_person_by_name, #launch_person_workflow, #list_people, #update_person

Methods included from PaymentDetail

#create_payment_detail, #delete_payment_detail, #list_payment_details, #update_payment_detail

Methods included from Page

#list_pages, #page_path

Methods included from LavaShortcode

#create_lava_shortcode, #find_lava_shortcode, #list_lava_shortcodes, #update_lava_shortcode

Methods included from Lava

#render_template

Methods included from HtmlContent

#create_html_content, #html_content_path

Methods included from History

#list_history

Methods included from GroupMember

#create_group_member, #create_known_relationship, #delete_group_member, #list_group_members

Methods included from Group

#create_group, #find_group, #list_families_for_person, #list_groups, #list_groups_for_person, #save_group_address

Methods included from Gateway

#delete_gateway, #list_gateways

Methods included from ExceptionLog

#list_exception_logs

Methods included from EntityType

#find_entity_type, #list_entity_types

Methods included from DefinedValue

#create_defined_value, #list_defined_values

Methods included from DefinedType

#find_defined_type, #list_defined_types

Methods included from ContentChannelItem

#list_content_channel_items

Methods included from ContentChannelType

#list_content_channel_types

Methods included from ContentChannel

#find_content_channel, #list_content_channels, #update_content_channel

Methods included from Campus

#find_campus

Methods included from Fund

#create_fund, #find_fund, #list_funds

Methods included from BlockType

#block_type_path, #delete_block_type, #list_block_types

Methods included from BlockAction

#create_block_action

Methods included from Block

#block_path, #create_block, #delete_block, #list_blocks

Methods included from BinaryFile

#upload_binary_file

Methods included from Batch

#create_batch, #delete_batch, #find_batch, #list_batches, #update_batch

Methods included from AttributeValue

#create_attribute_value, #list_attribute_values, #update_attribute_value

Methods included from Attribute

#create_attribute, #list_attributes

Methods included from TransformHashKeys

camelize, camelize_keys

Constructor Details

#initialize(url:, username: nil, password: nil, authorization_token: nil, logger: true, adapter: Faraday.default_adapter, ssl: nil, proxy: nil) ⇒ Client

Returns a new instance of Client.



62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# File 'lib/rock_rms/client.rb', line 62

def initialize(url:, username: nil, password: nil, authorization_token: nil, logger: true, adapter: Faraday.default_adapter, ssl: nil, proxy: nil)
  if username.nil? && password.nil? && authorization_token.nil?
    raise ArgumentError, 'either username and password or authorization_token is required'
  end

  @url      = "#{url}/api/"
  @username = username unless authorization_token
  @password = password unless authorization_token
  @authorization_token = authorization_token unless username && password
  @logger   = logger
  @adapter  = adapter
  @ssl      = ssl
  @proxy    = proxy
  @cookie   = auth['set-cookie'] unless auth.nil?
end

Instance Attribute Details

#adapterObject (readonly)

Returns the value of attribute adapter.



60
61
62
# File 'lib/rock_rms/client.rb', line 60

def adapter
  @adapter
end

#authorization_tokenObject (readonly)

Returns the value of attribute authorization_token.



60
61
62
# File 'lib/rock_rms/client.rb', line 60

def authorization_token
  @authorization_token
end

Returns the value of attribute cookie.



60
61
62
# File 'lib/rock_rms/client.rb', line 60

def cookie
  @cookie
end

#loggerObject (readonly)

Returns the value of attribute logger.



60
61
62
# File 'lib/rock_rms/client.rb', line 60

def logger
  @logger
end

#passwordObject (readonly)

Returns the value of attribute password.



60
61
62
# File 'lib/rock_rms/client.rb', line 60

def password
  @password
end

#proxyObject (readonly)

Returns the value of attribute proxy.



60
61
62
# File 'lib/rock_rms/client.rb', line 60

def proxy
  @proxy
end

#sslObject (readonly)

Returns the value of attribute ssl.



60
61
62
# File 'lib/rock_rms/client.rb', line 60

def ssl
  @ssl
end

#urlObject (readonly)

Returns the value of attribute url.



60
61
62
# File 'lib/rock_rms/client.rb', line 60

def url
  @url
end

#usernameObject (readonly)

Returns the value of attribute username.



60
61
62
# File 'lib/rock_rms/client.rb', line 60

def username
  @username
end

Instance Method Details

#delete(path, options = {}) ⇒ Object



78
79
80
# File 'lib/rock_rms/client.rb', line 78

def delete(path, options = {})
  connection.delete(path, options).body
end

#get(path, options = {}) ⇒ Object



82
83
84
# File 'lib/rock_rms/client.rb', line 82

def get(path, options = {})
  connection.get(path, options).body
end

#patch(path, options = {}) ⇒ Object



86
87
88
# File 'lib/rock_rms/client.rb', line 86

def patch(path, options = {})
  connection.patch(path, options).body
end

#post(path, options = {}) ⇒ Object



90
91
92
# File 'lib/rock_rms/client.rb', line 90

def post(path, options = {})
  connection.post(path, options).body
end

#put(path, options = {}) ⇒ Object



94
95
96
# File 'lib/rock_rms/client.rb', line 94

def put(path, options = {})
  connection.put(path, options).body
end