Sha256: 4709f5de756a005562dcf743237fce0ba92175820a0183bab727257a380e0988

Contents?: true

Size: 905 Bytes

Versions: 10

Compression:

Stored size: 905 Bytes

Contents

module RelatonBipm
  class CommentPeriond
    # @return [Date]
    attr_reader :from

    # @return [Date, NilClass]
    attr_reader :to

    # @param from [String] date
    # @parma to [String, NilClass] date
    def initialize(from:, to: nil)
      @from = Date.parse from
      @to = Date.parse to if to
    end

    # @param builder [Nokogiri::XML::builder]
    def to_xml(builder)
      builder.send "comment-period" do
        builder.from from.to_s
        builder.to to.to_s if to
      end
    end

    # @return [Hash]
    def to_hash
      hash = { "from" => from.to_s }
      hash["to"] = to.to_s if to
      hash
    end

    # @param prefix [String]
    # @return [String]
    def to_asciibib(prefix)
      pref = prefix.empty? ? prefix : prefix + "."
      pref += "commentperiod"
      out = "#{pref}.from:: #{from}\n"
      out += "#{pref}.to:: #{to}\n" if to
      out
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
relaton-bipm-1.8.2 lib/relaton_bipm/comment_periond.rb
relaton-bipm-1.8.1 lib/relaton_bipm/comment_periond.rb
relaton-bipm-1.8.0 lib/relaton_bipm/comment_periond.rb
relaton-bipm-1.7.2 lib/relaton_bipm/comment_periond.rb
relaton-bipm-1.7.1 lib/relaton_bipm/comment_periond.rb
relaton-bipm-1.7.0 lib/relaton_bipm/comment_periond.rb
relaton-bipm-1.6.1 lib/relaton_bipm/comment_periond.rb
relaton-bipm-1.6.0 lib/relaton_bipm/comment_periond.rb
relaton-bipm-1.6.pre1 lib/relaton_bipm/comment_periond.rb
relaton-bipm-1.5.0 lib/relaton_bipm/comment_periond.rb