Sha256: f2737749073e7062c070d1a47c6a4936e76f365d539fbc002ca2439af6c9fad6

Contents?: true

Size: 1.5 KB

Versions: 997

Compression:

Stored size: 1.5 KB

Contents

module Aws
  module Resources
    class Documenter
      class ResourceOperationDocumenter < BaseOperationDocumenter

        def initialize(*args)
          super
          @plural = @operation.builder.plural?
        end

        # @return [Boolean] Returns `true` if this operation returns an
        #   array of resource objects. Returns `false` if this method returns
        #   a single resource object.
        attr_reader :plural

        alias plural? plural

        def return_tag
          if plural?
            tag("@return [Array<#{target_resource_class_name}>]")
          else
            tag("@return [#{target_resource_class_name}]")
          end
        end

        def example_tags
          id = target_resource_class.identifiers.last.to_s
          idv = target_resource_class_name.downcase + '-' + id.gsub('_', '-')
          example = []
          example << "@example Basic usage"
          example << "  #{resp_variable} = #{variable_name}.#{operation_name}(options)"
          if plural?
            example << "  #{resp_variable}.map(&:#{id})"
            example << "  #=> [#{idv.inspect}, ...]"
          else
            example << "  #{resp_variable}.#{id}"
            example << "  #=> #{idv.inspect}"
          end
          super + [tag(example.join("\n"))]
        end

        def resp_variable
          if plural?
            target_resource_class_name.downcase + 's'
          else
            target_resource_class_name.downcase
          end
        end

      end
    end
  end
end

Version data entries

997 entries across 997 versions & 2 rubygems

Version Path
aws-sdk-resources-2.11.632 lib/aws-sdk-resources/documenter/resource_operation_documenter.rb
aws-sdk-resources-2.11.631 lib/aws-sdk-resources/documenter/resource_operation_documenter.rb
aws-sdk-resources-2.11.630 lib/aws-sdk-resources/documenter/resource_operation_documenter.rb
aws-sdk-resources-2.11.629 lib/aws-sdk-resources/documenter/resource_operation_documenter.rb
aws-sdk-resources-2.11.628 lib/aws-sdk-resources/documenter/resource_operation_documenter.rb
aws-sdk-resources-2.11.627 lib/aws-sdk-resources/documenter/resource_operation_documenter.rb
aws-sdk-resources-2.11.626 lib/aws-sdk-resources/documenter/resource_operation_documenter.rb
aws-sdk-resources-2.11.625 lib/aws-sdk-resources/documenter/resource_operation_documenter.rb
aws-sdk-resources-2.11.624 lib/aws-sdk-resources/documenter/resource_operation_documenter.rb
aws-sdk-resources-2.11.623 lib/aws-sdk-resources/documenter/resource_operation_documenter.rb
aws-sdk-resources-2.11.622 lib/aws-sdk-resources/documenter/resource_operation_documenter.rb
aws-sdk-resources-2.11.621 lib/aws-sdk-resources/documenter/resource_operation_documenter.rb
aws-sdk-resources-2.11.620 lib/aws-sdk-resources/documenter/resource_operation_documenter.rb
aws-sdk-resources-2.11.619 lib/aws-sdk-resources/documenter/resource_operation_documenter.rb
aws-sdk-resources-2.11.618 lib/aws-sdk-resources/documenter/resource_operation_documenter.rb
aws-sdk-resources-2.11.617 lib/aws-sdk-resources/documenter/resource_operation_documenter.rb
aws-sdk-resources-2.11.616 lib/aws-sdk-resources/documenter/resource_operation_documenter.rb
aws-sdk-resources-2.11.615 lib/aws-sdk-resources/documenter/resource_operation_documenter.rb
aws-sdk-resources-2.11.614 lib/aws-sdk-resources/documenter/resource_operation_documenter.rb
aws-sdk-resources-2.11.613 lib/aws-sdk-resources/documenter/resource_operation_documenter.rb