From: <rm...@hy...> - 2008-12-22 16:09:18
|
Author: rmorgan Date: 2008-12-22 08:09:12 -0800 (Mon, 22 Dec 2008) New Revision: 384 URL: http://svn.hyperic.org/?view=rev&root=HQApi&revision=384 Added: trunk/bin/metricTemplateList.sh trunk/src/org/hyperic/hq/hqapi1/tools/MetricTemplateList.java Log: Add metric template listing. Added: trunk/bin/metricTemplateList.sh =================================================================== --- trunk/bin/metricTemplateList.sh (rev 0) +++ trunk/bin/metricTemplateList.sh 2008-12-22 16:09:12 UTC (rev 384) @@ -0,0 +1,6 @@ +#!/bin/sh + +cd `dirname $0` +RUNDIR=`pwd` + +${RUNDIR}/runCommand.sh org.hyperic.hq.hqapi1.tools.MetricTemplateList "$@" Added: trunk/src/org/hyperic/hq/hqapi1/tools/MetricTemplateList.java =================================================================== --- trunk/src/org/hyperic/hq/hqapi1/tools/MetricTemplateList.java (rev 0) +++ trunk/src/org/hyperic/hq/hqapi1/tools/MetricTemplateList.java 2008-12-22 16:09:12 UTC (rev 384) @@ -0,0 +1,50 @@ +package org.hyperic.hq.hqapi1.tools; + +import joptsimple.OptionParser; +import joptsimple.OptionSet; +import org.hyperic.hq.hqapi1.HQApi; +import org.hyperic.hq.hqapi1.XmlUtil; +import org.hyperic.hq.hqapi1.types.ResourcePrototypeResponse; +import org.hyperic.hq.hqapi1.types.MetricTemplatesResponse; + +public class MetricTemplateList extends ToolsBase { + + private static String OPT_PROTOTYPE = "prototype"; + + private static void listMetricTemplates(String[] args) throws Exception { + + OptionParser p = getOptionParser(); + + p.accepts(OPT_PROTOTYPE, "The resource prototype to query for metric " + + "templates"). + withRequiredArg().ofType(String.class); + + OptionSet options = getOptions(p, args); + + HQApi api = getApi(options); + + if (!options.has(OPT_PROTOTYPE)) { + System.err.println("No resource type given."); + System.exit(-1); + } + + String prototype = (String) options.valueOf(OPT_PROTOTYPE); + ResourcePrototypeResponse protoResponse = + api.getResourceApi().getResourcePrototype(prototype); + checkSuccess(protoResponse); + + MetricTemplatesResponse templates = + api.getMetricApi().getMetricTemplates(protoResponse.getResourcePrototype()); + checkSuccess(templates); + XmlUtil.serialize(templates, System.out, Boolean.TRUE); + } + + public static void main(String[] args) throws Exception { + try { + listMetricTemplates(args); + } catch (Exception e) { + System.err.println("Error listing resources: " + e.getMessage()); + System.exit(-1); + } + } +} |