From a44ae9b2e1cb6a9b26eb72fe90de113d03393d0d Mon Sep 17 00:00:00 2001 From: =?utf8?q?Ale=C5=A1=20K=C5=99enek?= Date: Fri, 7 Aug 2009 14:00:04 +0000 Subject: [PATCH] a complex example -- query a job within given submit time and given exit code --- org.glite.lb.ws-test/examples/ws_comlex.pl | 68 ++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100755 org.glite.lb.ws-test/examples/ws_comlex.pl diff --git a/org.glite.lb.ws-test/examples/ws_comlex.pl b/org.glite.lb.ws-test/examples/ws_comlex.pl new file mode 100755 index 0000000..7c45b9b --- /dev/null +++ b/org.glite.lb.ws-test/examples/ws_comlex.pl @@ -0,0 +1,68 @@ +#!/usr/bin/perl + +# version known to support enough from document/literal to work +use SOAP::Lite 0.69; + +use Data::Dumper; + +$ENV{HTTPS_CA_DIR}='/etc/grid-security/certificates'; +$ENV{HTTPS_VERSION}='3'; + +$ENV{HTTPS_CA_FILE}= $ENV{HTTPS_CERT_FILE} = $ENV{HTTPS_KEY_FILE} = + $ENV{X509_USER_PROXY} ? $ENV{X509_USER_PROXY} : "/tmp/x509up_u$<"; + + +$srv = shift; +$when = shift; + +die "usage: $0 service when\n" unless $when; + +$c = SOAP::Lite + -> uri('http://glite.org/wsdl/services/lb') + -> proxy($srv) ; + + +# TODO: replace with $srv/lb/?wsdl once it works +service $c 'http://egee.cesnet.cz/en/WSDL/HEAD/LB.wsdl'; + +$c->serializer->register_ns('http://glite.org/wsdl/types/lb','lbt'); + +ns $c 'http://glite.org/wsdl/elements/lb'; + +$req = SOAP::Data->value( + SOAP::Data->name(conditions => \SOAP::Data->value( + SOAP::Data->name(attr => 'TIME')->type('lbt:queryAttr'), + SOAP::Data->name(statName => 'SUBMITTED')->type('lbt:statName'), + SOAP::Data->name(record=>\SOAP::Data->value( + SOAP::Data->name(op => 'LESS')->type('lbt:queryOp'), + SOAP::Data->name(value1 => \SOAP::Data->value( + SOAP::Data->name(t => \SOAP::Data->value( + SOAP::Data->name(tvSec => $when+1), + SOAP::Data->name(tvUsec => 0), + )) + )) + )) + )), + SOAP::Data->name(conditions => \SOAP::Data->value( + SOAP::Data->name(attr => 'EXITCODE')->type('lbt:queryAttr'), + SOAP::Data->name(record=>\SOAP::Data->value( + SOAP::Data->name(op => 'EQUAL')->type('lbt:queryOp'), + SOAP::Data->name(value1 => \SOAP::Data->value( + SOAP::Data->name(i => $when) + )) + )) + )), + SOAP::Data->name(flags => \SOAP::Data->value( + SOAP::Data->name(flag => 'CLASSADS')->type('lbt:jobFlagsValue'), + SOAP::Data->name(flag => 'CHILDSTAT')->type('lbt:jobFlagsValue') + )), + ); + +on_fault $c sub { print Dumper($_[1]->fault); $fault = 1; }; + +$resp = $c -> QueryJobs($req); + +@res = $resp->paramsout; + +print Dumper(@res),"\n"; + -- 1.8.2.3