Sha256: 1364376dd657d47a253fd9211c1590d7dbe38c0760dc844ad5ad53cc28f6cace

Contents?: true

Size: 582 Bytes

Versions: 1

Compression:

Stored size: 582 Bytes

Contents

# frozen_string_literal: true

module Servitium
  module TransactionalMixin
    class << self
      def included(base)
        base.extend ClassMethods
      end
    end

    module ClassMethods
      def transactional(value = nil)
        @transactional = value unless value.nil?
        @transactional = nil unless defined?(@transactional)
        if @transactional.nil?
          @transactional = if superclass < Servitium::Service
            superclass.transactional
          else
            false
          end
        end
        @transactional
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
servitium-1.3.1 lib/servitium/transactional_mixin.rb