Sha256: d0d6d461f911ff37305a7a32cd945c3c1cbda06e3f0e3eff77208722f41bfc25

Contents?: true

Size: 652 Bytes

Versions: 3

Compression:

Stored size: 652 Bytes

Contents

module ClickSession
  class ResponseSerializer
    def serialize_success(click_session)
      {
        id: click_session.id,
        status: {
          success: true
        },
        data: serializer.serialize(click_session.model)
      }
    end

    def serialize_failure(click_session)
      {
        id: click_session.id,
        status: {
          success: false
        }
      }
    end

    private

    delegate :serializer_class, :notifier_class, to: :clicksession_configuration

    def serializer
      @serializer ||= serializer_class.new
    end

    def clicksession_configuration
      ClickSession.configuration
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
click_session-0.1.1 lib/click_session/response_serializer.rb
click_session-0.1.0 lib/click_session/response_serializer.rb
click_session-0.0.1 lib/click_session/response_serializer.rb