Sha256: 11fc07f6793f037979a72a06dd2edfef47912eac679e56fc4f852dd3a21e8aa0

Contents?: true

Size: 1.37 KB

Versions: 2

Compression:

Stored size: 1.37 KB

Contents

require "picasa/presenter/base"

module Picasa
  module Presenter
    class Comment < Base
      # @return [Presenter::Author]
      def author
        @author ||= Author.new(safe_retrieve(parsed_body, "author"))
      end

      # @return [Array<Presenter::Link>]
      def links
        @links ||= array_wrap(safe_retrieve(parsed_body, "link")).map { |link| Link.new(link) }
      end

      # @return [DateTime]
      def published
        @published ||= map_to_date(safe_retrieve(parsed_body, "published"))
      end

      # @return [DateTime]
      def updated
        @updated ||= map_to_date(safe_retrieve(parsed_body, "updated"))
      end

      # @return [DateTime]
      def edited
        @edited ||= map_to_date(safe_retrieve(parsed_body, "edited"))
      end

      # @return [String]
      def title
        @title ||= safe_retrieve(parsed_body, "title")
      end

      # @return [String]
      def etag
        @etag ||= safe_retrieve(parsed_body, "etag")
      end

      # @return [String]
      def content
        @content ||= safe_retrieve(parsed_body, "content", "__content__") || safe_retrieve(parsed_body, "content")
      end

      # @return [String]
      def id
        @id ||= array_wrap(safe_retrieve(parsed_body, "id")).last
      end

      # @return [String]
      def photo_id
        @photo_id ||= safe_retrieve(parsed_body, "photoid")
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
picasa-0.5.4 lib/picasa/presenter/comment.rb
picasa-0.5.3 lib/picasa/presenter/comment.rb