Sha256: 8704de2af330adea2dcf2bbc7ef160e7092e6158d54a64886c6688ecfef11485

Contents?: true

Size: 715 Bytes

Versions: 1

Compression:

Stored size: 715 Bytes

Contents

module Troo
  module Commands
    module Refresh
      class Resource
        include CommandHelpers

        attr_accessor :type
        attr_reader :id

        class << self
          def dispatch(id = nil)
            new(id).refresh
          end
        end

        def initialize(id = nil)
          @id = id
        end

        def refresh
          if resource.one?
            success
          elsif resource.count > 1
            many_success
          else
            error
          end
        end

        private

        def success
          "'#{resource_name}' refreshed."
        end

        def resource_name
          resource.first.decorator.name
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
troo-0.0.8 lib/troo/commands/refresh/resource.rb