class OrbitActivities::Request
Attributes
action[R]
activity_id[R]
api_key[R]
body[R]
filters[R]
member_id[R]
response[RW]
user_agent[R]
workspace_id[R]
Public Class Methods
new(params = {})
click to toggle source
# File lib/orbit_activities/request.rb, line 10 def initialize(params = {}) @action = params.fetch(:action) @api_key = params.fetch(:api_key) @workspace_id = params.fetch(:workspace_id) @user_agent = params.fetch(:user_agent, "ruby-orbit-activities/#{OrbitActivities::VERSION}") @body = params.fetch(:body, nil) @filters = params.fetch(:filters, nil) @member_id = params.fetch(:member_id, nil) @activity_id = params.fetch(:activity_id, nil) @response = nil after_initialize! end
Public Instance Methods
after_initialize!()
click to toggle source
# File lib/orbit_activities/request.rb, line 24 def after_initialize! case @action when "new_activity" new_activity when "list_activities" list_activities when "get_activity" get_activity when "list_member_activities" list_member_activities when "create_post" create_post when "delete_post" delete_post when "update_activity" update_activity when "latest_activity_timestamp" latest_activity_timestamp else raise ArgumentError, "Activity type is unrecognized. Must be one of: new_activity, list_activities, get_activity, list_member_activities, create_post, delete_post, update_activity" end end
create_post()
click to toggle source
# File lib/orbit_activities/request.rb, line 102 def create_post @response = OrbitActivities::HTTP.post( url: "https://app.orbit.love/api/v1/#{@workspace_id}/members/#{@member_id}/activities", user_agent: @user_agent, api_key: @api_key, body: @body ) end
delete_post()
click to toggle source
# File lib/orbit_activities/request.rb, line 111 def delete_post @response = OrbitActivities::HTTP.delete( url: "https://app.orbit.love/api/v1/#{@workspace_id}/members/#{@member_id}/activities/#{@activity_id}", user_agent: @user_agent, api_key: @api_key ) end
get_activity()
click to toggle source
# File lib/orbit_activities/request.rb, line 85 def get_activity @response = OrbitActivities::HTTP.get( url: "https://app.orbit.love/api/v1/#{@workspace_id}/activities/#{@activity_id}", user_agent: @user_agent, api_key: @api_key ) end
latest_activity_timestamp()
click to toggle source
# File lib/orbit_activities/request.rb, line 66 def latest_activity_timestamp filters = { items: 10, direction: "DESC" } filters.merge!(@filters) response = OrbitActivities::HTTP.get( url: "https://app.orbit.love/api/v1/#{@workspace_id}/activities", user_agent: @user_agent, api_key: @api_key, filters: filters ) return nil if response["data"].nil? || response["data"].empty? @response = response["data"][0]["attributes"]["created_at"] end
list_activities()
click to toggle source
# File lib/orbit_activities/request.rb, line 57 def list_activities @response = OrbitActivities::HTTP.get( url: "https://app.orbit.love/api/v1/#{@workspace_id}/activities", user_agent: @user_agent, api_key: @api_key, filters: @filters ) end
list_member_activities()
click to toggle source
# File lib/orbit_activities/request.rb, line 93 def list_member_activities @response = OrbitActivities::HTTP.get( url: "https://app.orbit.love/api/v1/#{@workspace_id}/members/#{@member_id}/activities", user_agent: @user_agent, api_key: @api_key, filters: @filters ) end
new_activity()
click to toggle source
# File lib/orbit_activities/request.rb, line 48 def new_activity @response = OrbitActivities::HTTP.post( url: "https://app.orbit.love/api/v1/#{@workspace_id}/activities", user_agent: @user_agent, api_key: @api_key, body: @body ) end
update_activity()
click to toggle source
# File lib/orbit_activities/request.rb, line 119 def update_activity @response = OrbitActivities::HTTP.put( url: "https://app.orbit.love/api/v1/#{@workspace_id}/members/#{@member_id}/activities/#{@activity_id}", user_agent: @user_agent, api_key: @api_key, body: @body ) end