Class/Module Index [+]

Quicksearch

MCollective::DDL::DataDDL

A DDL file for the data query plugins.

Query plugins can today take only one input by convention in the DDL that is called :query, otherwise the input is identical to the standard input.

metadata :name => “Agent”,

:description => "Meta data about installed MColletive Agents",
:author      => "R.I.Pienaar <rip@devco.net>",
:license     => "ASL 2.0",
:version     => "1.0",
:url         => "http://marionette-collective.org/",
:timeout     => 1

dataquery :description => “Agent Meta Data” do

input :query,
      :prompt => "Agent Name",
      :description => "Valid agent name",
      :type => :string,
      :validation => /^[\w\_]+$/,
      :maxlength => 20

[:license, :timeout, :description, :url, :version, :author].each do |item|
  output item,
         :description => "Agent #{item}",
         :display_as => item.to_s.capitalize
end

end

Public Instance Methods

dataquery(input, &block) click to toggle source
# File lib/mcollective/ddl/dataddl.rb, line 31
def dataquery(input, &block)
  raise "Data queries need a :description" unless input.include?(:description)
  raise "Data queries can only have one definition" if @entities[:data]

  @entities[:data]  = {:description => input[:description],
                       :input => {},
                       :output => {}}

  @current_entity = :data
  block.call if block_given?
  @current_entity = nil
end
dataquery_interface() click to toggle source

Returns the interface for the data query

# File lib/mcollective/ddl/dataddl.rb, line 51
def dataquery_interface
  @entities[:data] || {}
end
input(argument, properties) click to toggle source
# File lib/mcollective/ddl/dataddl.rb, line 44
def input(argument, properties)
  raise "The only valid input name for a data query is 'query'" if argument != :query

  super
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.