class Github::Client::Repos::PubSubHubbub

def _merge_action!(action, topic, callback, params) # :nodoc:

:nodoc:
def _merge_action!(action, topic, callback, params) # :nodoc:
  options = {
    "hub.mode"     => action.to_s,
    "hub.topic"    => topic.to_s,
    "hub.callback" => callback,
    "hub.verify"   => params.delete('verify') || 'sync',
    "hub.secret"   => params.delete('secret') || ''
  }
  params.merge! options
end

def subscribe(*args)

Other tags:
    Api: - public

Parameters:
  • params (Hash) --
def subscribe(*args)
  params = arguments(args, required: [:topic, :callback]).params
  _merge_action!("subscribe", arguments.topic, arguments.callback, params)
  params['headers'] = HEADERS
  post_request("/hub", params)
end

def subscribe_service(*args)

Other tags:
    Api: - public

Parameters:
  • params (Hash) --
def subscribe_service(*args)
  params   = arguments(args, required: [:user, :repo, :service]).params
  event    = params.delete('event') || 'push'
  topic    = "#{site}/#{arguments.user}/#{arguments.repo}/events/#{event}"
  callback = "github://#{arguments.service}?#{params.serialize}"
  subscribe(topic, callback)
end

def unsubscribe(*args)

Other tags:
    Api: - public

Parameters:
  • params (Hash) --
def unsubscribe(*args)
  params = arguments(args, required: [:topic, :callback]).params
  _merge_action!("unsubscribe", arguments.topic, arguments.callback, params)
  params['headers'] = HEADERS
  post_request("/hub", params)
end

def unsubscribe_service(*args)

Other tags:
    Api: - public

Parameters:
  • params (Hash) --
def unsubscribe_service(*args)
  params   = arguments(args, required: [:user, :repo, :service]).params
  event    = params.delete('event') || 'push'
  topic    = "#{site}/#{arguments.user}/#{arguments.repo}/events/#{event}"
  callback = "github://#{arguments.service}"
  unsubscribe(topic, callback)
end