class LaunchdTools::ProgramArgsParser

Attributes

element[R]
xml_doc[R]

Public Class Methods

new(xml_doc) click to toggle source
# File lib/launchd_tools/program_args_parser.rb, line 6
def initialize(xml_doc)
  @xml_doc = xml_doc
end

Public Instance Methods

parse() click to toggle source
# File lib/launchd_tools/program_args_parser.rb, line 10
def parse
  element = REXML::XPath.first(xml_doc, "plist/dict/key[text()='ProgramArguments']/following-sibling::array")
  if element
    args_strings = XPath.match(element, 'string')
    args_strings.map {|e| e.text }
  else
    program_string_element = REXML::XPath.first(xml_doc, "plist/dict/key[text()='Program']/following-sibling::string")
    [program_string_element.text]
  end
end