Sha256: 71b6433535c32c2fef65d51f9db93bf4bfa4809381ce0c80ba02156d5704de29

Contents?: true

Size: 916 Bytes

Versions: 58

Compression:

Stored size: 916 Bytes

Contents

require 'json'
require_relative '../../dsl/intrinsic_functions'
require_relative '../mixin/conditional'

module Convection
  module Model
    class Template
      ##
      # Resource
      ##
      class Output
        include DSL::Helpers
        include Model::Mixin::Conditional

        attribute :name
        attribute :value
        attribute :description
        attribute :export_as
        attr_reader :template

        def initialize(name, parent)
          @name = name
          @template = parent.template

          @type = ''
          @properties = {}
        end

        def render
          {
            'Value' => value.respond_to?(:render) ? value.render : value,
            'Description' => description
          }.tap do |output|
            render_condition(output)
            output['Export'] = { 'Name' => export_as } if export_as
          end
        end
      end
    end
  end
end

Version data entries

58 entries across 58 versions & 1 rubygems

Version Path
convection-2.3.1 lib/convection/model/template/output.rb
convection-2.3.0 lib/convection/model/template/output.rb
convection-2.2.29 lib/convection/model/template/output.rb
convection-2.2.28.pre.beta.2 lib/convection/model/template/output.rb
convection-2.2.28.pre.beta.1 lib/convection/model/template/output.rb
convection-2.2.27 lib/convection/model/template/output.rb
convection-2.2.26 lib/convection/model/template/output.rb
convection-2.2.25 lib/convection/model/template/output.rb
convection-2.2.24 lib/convection/model/template/output.rb
convection-2.2.23 lib/convection/model/template/output.rb
convection-2.2.22 lib/convection/model/template/output.rb
convection-2.2.21 lib/convection/model/template/output.rb
convection-2.2.20 lib/convection/model/template/output.rb
convection-2.2.19 lib/convection/model/template/output.rb
convection-2.2.18 lib/convection/model/template/output.rb
convection-2.2.17 lib/convection/model/template/output.rb
convection-2.2.16 lib/convection/model/template/output.rb
convection-2.2.15 lib/convection/model/template/output.rb
convection-2.2.14 lib/convection/model/template/output.rb
convection-2.2.13 lib/convection/model/template/output.rb