Class: Yookassa::ResourceShortcut Abstract

Inherits:
Object
  • Object
show all
Defined in:
lib/yookassarb.rb

Overview

This class is abstract.

Subclass and call delegates_to :resource_method

Base class for convenience shortcuts that delegate CRUD to the default client.

Subclasses call ResourceShortcut.delegates_to to specify which resource method on Client to use for delegation.

Direct Known Subclasses

Deal, Payout, Receipt, Refund

Class Method Summary collapse

Class Method Details

.create(params, idempotency_key: nil) ⇒ Entities::Base

Creates a new resource.

Parameters:

  • params (Hash)

    resource parameters

  • idempotency_key (String, nil) (defaults to: nil)

    optional idempotency key

Returns:

Raises:



190
191
192
# File 'lib/yookassarb.rb', line 190

def create(params, idempotency_key: nil)
  resource.create(params, idempotency_key: idempotency_key)
end

.delegates_to(method) ⇒ void

This method returns an undefined value.

Declares which Client method this shortcut delegates to.

Parameters:

  • method (Symbol)

    the client resource method name



180
181
182
# File 'lib/yookassarb.rb', line 180

def delegates_to(method)
  @resource_method = method
end

.find(resource_id) ⇒ Entities::Base

Retrieves a resource by ID.

Parameters:

  • resource_id (String)

    the resource ID

Returns:

Raises:



199
200
201
# File 'lib/yookassarb.rb', line 199

def find(resource_id)
  resource.find(resource_id)
end

.list(**filters) ⇒ Entities::Collection

Lists resources matching the given filters.

Parameters:

  • filters (Hash)

    query filters

Returns:



207
208
209
# File 'lib/yookassarb.rb', line 207

def list(**filters)
  resource.list(**filters)
end