Sha256: 543a075104d19c76ab27dcc99166641dcec1d8a35aebc041ddd3fff5474e6320

Contents?: true

Size: 1.01 KB

Versions: 55

Compression:

Stored size: 1.01 KB

Contents

class ZabbixApi
  class Applications

    def initialize(client)
      @client = client
    end

    def create(data)
      result = @client.api_request(:method => "application.create", :params => [data])
      result.empty? ? nil : result['applicationids'][0].to_i
    end

    def add(data)
      create(data)
    end

    def delete(data)
      result = @client.api_request(:method => "application.delete", :params => [data])
      result.empty? ? nil : result['applicationids'][0].to_i
    end

    def get_or_create(data)
      unless (appid = get_id(data))
        appid = create(data)
      end
      appid
    end

    def destroy(data)
      delete(data)
    end

    def get_full_data(data)
      @client.api_request(:method => "application.get", :params => {:filter => data, :output => "extend"})
    end

    def get_id(data)
      result = get_full_data(data)
      applicationid = nil
      result.each { |app| applicationid = app['applicationid'].to_i if app['name'] == data[:name] }
      applicationid
    end

  end
end

Version data entries

55 entries across 36 versions & 1 rubygems

Version Path
zabbixapi-2.4.1 lib/zabbixapi/classes/applications.rb
zabbixapi-2.4.0 lib/zabbixapi/classes/applications.rb
zabbixapi-2.2.1 lib/zabbixapi/classes/applications.rb
zabbixapi-2.2.0 lib/zabbixapi/classes/applications.rb
zabbixapi-2.0.0 lib/zabbixapi/classes/applications.rb
zabbixapi-0.6.6 lib/zabbixapi/2.0/classes/applications.rb
zabbixapi-0.6.6 lib/zabbixapi/1.8/classes/applications.rb
zabbixapi-0.6.4 lib/zabbixapi/2.0/classes/applications.rb
zabbixapi-0.6.4 lib/zabbixapi/1.8/classes/applications.rb
zabbixapi-0.6.3 lib/zabbixapi/2.0/classes/applications.rb
zabbixapi-0.6.3 lib/zabbixapi/1.8/classes/applications.rb
zabbixapi-0.6.2 lib/zabbixapi/1.8/classes/applications.rb
zabbixapi-0.6.2 lib/zabbixapi/2.0/classes/applications.rb
zabbixapi-0.6.1 lib/zabbixapi/1.8/classes/applications.rb
zabbixapi-0.6.1 lib/zabbixapi/2.0/classes/applications.rb
zabbixapi-0.6.0 lib/zabbixapi/1.8/classes/applications.rb
zabbixapi-0.6.0 lib/zabbixapi/2.0/classes/applications.rb
zabbixapi-0.5.9 lib/zabbixapi/2.0/classes/applications.rb
zabbixapi-0.5.9 lib/zabbixapi/1.8/classes/applications.rb
zabbixapi-0.5.8 lib/zabbixapi/1.8/classes/applications.rb