Sha256: 4adb080b8baea42e20a0ec2f48f4e03d3e9282ef9c9d3bb98f71aaee0c9f1d41

Contents?: true

Size: 710 Bytes

Versions: 10

Compression:

Stored size: 710 Bytes

Contents

module Wordnik

  class Endpoint
    require 'active_model'
    include ActiveModel::Validations
    include ActiveModel::Conversion
    extend ActiveModel::Naming

    attr_accessor :path, :description, :operations

    validates_presence_of :path, :description, :operations

    def initialize(attributes = {})
      attributes.each do |name, value|
        send("#{name.to_s.underscore.to_sym}=", value)
      end

      # Generate Operations instances from JSON
      if self.operations
        self.operations = self.operations.map do |operationData|
          Operation.new(operationData)
        end
      end
    end

    # It's an ActiveModel thing..
    def persisted?
      false
    end

  end

end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
wordnik-0.4.0 lib/wordnik/endpoint.rb
wordnik-0.3.9 lib/wordnik/endpoint.rb
wordnik-0.3.8 lib/wordnik/endpoint.rb
wordnik-0.3.7 lib/wordnik/endpoint.rb
wordnik-0.3.6 lib/wordnik/endpoint.rb
wordnik-0.3.5 lib/wordnik/endpoint.rb
wordnik-0.3.4 lib/wordnik/endpoint.rb
wordnik-0.3.2 lib/wordnik/endpoint.rb
wordnik-0.3.1 lib/wordnik/endpoint.rb
wordnik-0.3.0 lib/wordnik/endpoint.rb