Sha256: fead9f01e84dc03c5894d69f44484a0b49182cb97a804894c59c7cce7b3c99cb

Contents?: true

Size: 1.43 KB

Versions: 3

Compression:

Stored size: 1.43 KB

Contents

class Fastly
  # A logical collection of backends - for example all the asset servers in one data center
  class Director < BelongsToServiceAndVersion
    attr_accessor :service_id, :name, :type, :comment, :retries, :capacity, :quorum

    ## 
    # :attr: service
    # 
    # The id of the service this belongs to.
    # 

    ## 
    # :attr: version
    # 
    # The number of the version this belongs to.
    # 

    ## 
    # :attr: name
    # 
    # The domain name of this domain
    # 

    ## 
    # :attr: type
    # 
    # what kind of Load Balancer group (currently always 1 meaning random)
    # 

    ## 
    # :attr: retries
    # 
    # how many backends to search if it fails (default 5)
    # 

    ## 
    # :attr: quorum
    # 
    # the percentage of capacity that needs to be up for a director to be considered up (default 75)
    # 

    ## 
    # :attr: comment 
    # 
    # a free form comment field
    
    # Add a Backend object to a Director
    #
    # Return true on success and false on failure
    def add_backend(backend) 
      hash = fetcher.client.post(Fastly::Director.put_path(self)+"/backend/#{backend.name}")
      return !hash.nil?
    end
    
    # Delete a Backend object from a Director
    #
    # Return true on success and false on failure
    def delete_backend(backend) 
      hash = fetcher.client.delete(Fastly::Director.put_path(self)+"/backend/#{backend.name}")
      return !hash.nil?
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
fastly-1.1.2 lib/fastly/director.rb
fastly-1.1.1 lib/fastly/director.rb
fastly-1.1.0 lib/fastly/director.rb