Sha256: c1db887a79c28d09763887212c6ec5c0380e14aff992f7453ac50d3e3afd3c4d

Contents?: true

Size: 1.17 KB

Versions: 1

Compression:

Stored size: 1.17 KB

Contents

require "zabbixapi/version"
require "zabbixapi/client"
require "zabbixapi/server"
require "zabbixapi/applications"
require "zabbixapi/templates"
require "zabbixapi/hostgroups"
require "zabbixapi/users"
require "zabbixapi/hosts"
require "zabbixapi/triggers"
require "zabbixapi/items"
require "zabbixapi/graphs"
require "zabbixapi/screens"

class ZabbixApi

  attr :client
  attr :server
  attr :users
  attr :items
  attr :applications
  attr :templates
  attr :hostgroups
  attr :hosts
  attr :triggers
  attr :graphs
  attr :screens

  def self.connect(options = {})
    new(options)
  end

  def self.current
    @current ||= ZabbixApi.new
  end

  def query(data)
    @client.api_request(:method => data[:method], :params => data[:params])
  end

  def initialize(options = {})
    @client = Client.new(options)
    @server = Server.new(options)
    @users   = Users.new(options)
    @items   = Items.new(options)
    @hosts   = Hosts.new(options)
    @applications = Applications.new(options)
    @templates    = Templates.new(options)
    @hostgroups   = HostGroups.new(options)
    @triggers = Triggers.new(options)
    @graphs = Graphs.new(options)
    @screens = Screens.new(options)
  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
zabbixapi-0.4.8 lib/zabbixapi.rb