class Cloudflair::Zone

Attributes

zone_id[R]

Public Class Methods

new(zone_id) click to toggle source
# File lib/cloudflair/api/zone.rb, line 26
def initialize(zone_id)
  @zone_id = zone_id
end

Public Instance Methods

analytics() click to toggle source
# File lib/cloudflair/api/zone.rb, line 42
def analytics
  Cloudflair::Analytics.new zone_id
end
available_plan(plan_id) click to toggle source
# File lib/cloudflair/api/zone__available_plans.rb, line 17
def available_plan(plan_id)
  Cloudflair::AvailablePlan.new zone_id, plan_id
end
available_plans() click to toggle source
# File lib/cloudflair/api/zone__available_plans.rb, line 7
def available_plans
  raw_plans = response connection.get("#{path}/available_plans")

  raw_plans.map do |raw_plan|
    zone = available_plan raw_plan['id']
    zone.data = raw_plan
    zone
  end
end
available_rate_plans() click to toggle source
# File lib/cloudflair/api/zone.rb, line 38
def available_rate_plans
  Cloudflair::AvailableRatePlan.new zone_id
end
custom_hostname(custom_hostname_id) click to toggle source
# File lib/cloudflair/api/zone__custom_hostnames.rb, line 13
def custom_hostname(custom_hostname_id)
  Cloudflair::CustomHostname.new zone_id, custom_hostname_id
end
custom_hostnames(filter = {}) click to toggle source
# File lib/cloudflair/api/zone__custom_hostnames.rb, line 7
def custom_hostnames(filter = {})
  raw_hostnames = response connection.get("#{path}/custom_hostnames", filter)

  raw_hostnames.map { |raw_hostname| build_custom_hostname(raw_hostname) }
end
dns_record(record_id) click to toggle source
# File lib/cloudflair/api/zone__dns_records.rb, line 12
def dns_record(record_id)
  Cloudflair::DnsRecord.new zone_id, record_id
end
dns_records(filter = {}) click to toggle source
# File lib/cloudflair/api/zone__dns_records.rb, line 7
def dns_records(filter = {})
  raw_records = response connection.get("#{path}/dns_records", filter)
  raw_records.map { |raw_record| build_dns_record(raw_record) }
end
new_custom_hostname(hostname_data) click to toggle source
# File lib/cloudflair/api/zone__custom_hostnames.rb, line 17
def new_custom_hostname(hostname_data)
  raw_hostname = response connection.post("#{path}/custom_hostnames", hostname_data)

  build_custom_hostname raw_hostname
end
new_dns_record(record_data) click to toggle source
# File lib/cloudflair/api/zone__dns_records.rb, line 16
def new_dns_record(record_data)
  raw_record = response connection.post("#{path}/dns_records", record_data)
  build_dns_record raw_record
end
purge_cache() click to toggle source
# File lib/cloudflair/api/zone.rb, line 34
def purge_cache
  Cloudflair::PurgeCache.new zone_id
end
railgun(railgun_id) click to toggle source
# File lib/cloudflair/api/zone__railguns.rb, line 17
def railgun(railgun_id)
  Cloudflair::Railgun.new zone_id, railgun_id
end
railguns(filter = {}) click to toggle source
# File lib/cloudflair/api/zone__railguns.rb, line 7
def railguns(filter = {})
  raw_railguns = response connection.get("#{path}/railguns", filter)

  raw_railguns.map do |raw_railgun|
    railgun = railgun raw_railgun['id']
    railgun.data = raw_railgun
    railgun
  end
end
settings() click to toggle source
# File lib/cloudflair/api/zone.rb, line 30
def settings
  Cloudflair::Settings.new zone_id
end

Private Instance Methods

build_custom_hostname(raw_hostname) click to toggle source
# File lib/cloudflair/api/zone__custom_hostnames.rb, line 25
def build_custom_hostname(raw_hostname)
  hostname = custom_hostname raw_hostname['id']
  hostname.data = raw_hostname
  hostname
end
build_dns_record(raw_record) click to toggle source
# File lib/cloudflair/api/zone__dns_records.rb, line 23
def build_dns_record(raw_record)
  record = dns_record raw_record['id']
  record.data = raw_record
  record
end