Sha256: c6a894805c409b63962f7ef22672e22ed47d33231ba5e530791f5184b626801a

Contents?: true

Size: 884 Bytes

Versions: 2

Compression:

Stored size: 884 Bytes

Contents

require 'dm-is-read_only/exceptions/read_only_error'

module DataMapper
  module Resource
    class State
      #
      # A lazy-loaded and unmodifiable resource.
      #
      class ReadOnly < Clean

        #
        # Receives modifications attempts on a read-only resource.
        #
        # @raise [ReadOnlyError]
        #   A read-only resource cannot be modified.
        #
        # @since 0.2.0
        #
        def set(subject,value)
          raise(ReadOnlyError,"ReadOnly resource cannot be modified",caller)
        end

        #
        # Receives deletion attempts on a read-only resource.
        #
        # @raise [ReadOnlyError]
        #   A read-only resource cannot be deleted.
        #
        # @since 0.2.0
        #
        def delete
          raise(ReadOnlyError,"ReadOnly resource cannot be deleted",caller)
        end

      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
dm-is-read_only-0.2.1 lib/dm-is-read_only/resource/state/read_only.rb
dm-is-read_only-0.2.0 lib/dm-is-read_only/resource/state/read_only.rb