ReadOnlyCollection
A collection of input types.
Inputs in the Splunk REST API are arranged in what looks like a directory structure, as in
monitor/ tcp/ cooked/ raw/ udp/
You get the top level directory by calling inputs on your Service. Then you can use it as if it were a Hash. If you fetch an entry that has subtypes, such as tcp, you get another InputKinds containing the types in that entry. If you fetch an entry that doesn't have subtypes, such as "udp", then you get an Inputs object (a subclass of Collection) containing specific inputs.
Example:
# Returns an InputKinds collection tcp_inputs = service.inputs["tcp"] tcp_inputs.has_key?("raw") # ==> true tcp_inputs.has_key?("cooked") # ==> true # A read only collection of all the inputs in Splunk. service.inputs["all"] # An Inputs object containing all the UDP inputs in Splunk. service.inputs["udp"]
# File lib/splunk-sdk-ruby/collection/input_kinds.rb, line 56 def fetch(name, namespace=nil) request_args = {:resource => @resource + [name]} if not namespace.nil? request_args[:namespace] = namespace end begin response = @service.request(request_args) rescue SplunkHTTPError => err if err.code == 404 return nil else raise err end end feed = AtomFeed.new(response.body) if feed.metadata["links"].has_key?("create") Inputs.new(@service, resource + [name]) elsif name == "all" ReadOnlyCollection.new(@service, resource + [name]) else InputKinds.new(@service, resource + [name]) end end
Generated with the Darkfish Rdoc Generator 2.