Sha256: 40c5d10baf65ba644513e72f4a4e7aac4a138726e3d3f6e24dbf96ed8086afe5

Contents?: true

Size: 1.08 KB

Versions: 1

Compression:

Stored size: 1.08 KB

Contents

class Fastly
  class BelongsToServiceAndVersion < Base
    # Return the Service object this belongs to
    def service
      @service ||= fetcher.get(Fastly::Service, service_id)
    end
    
    # Set the Version object this belongs to
    def version=(version)
      @version = version
    end
    
    # Get the Version object this belongs to
    def version
      @version_obj ||= fetcher.get(Fastly::Version, service_id, version_number)
    end
    
    # Get the number of the Version this belongs to
    def version_number
      @version
    end

    # :nodoc:
    def as_hash 
      super.delete_if { |var| ["service_id", "version"].include?(var) }
    end
    
    private
    
    def self.get_path(service, version, name, options={})
      "/service/#{service}/version/#{version}/#{path}/#{name}"
    end
    
    def self.post_path(opts)
    "/service/#{opts[:service_id]}/version/#{opts[:version]}/#{path}"
    end
    
    def self.put_path(obj)
      get_path(obj.service_id, obj.version_number,obj.name)
    end
    
    def self.delete_path(obj)
      put_path(obj)
    end
    
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
fastly-1.01 lib/fastly/belongs_to_service_and_version.rb