| #!/usr/bin/env perl | |
| # | |
| # Sample client to print out the search graph | |
| # | |
| use Encode; | |
| use XMLRPC::Lite; | |
| use utf8; | |
| $url = "http://localhost:8086/RPC2"; | |
| $proxy = XMLRPC::Lite->proxy($url); | |
| $text = "il a souhaité que la présidence trace à nice le chemin pour l' avenir ."; | |
| #$text = "je ne sais pas"; | |
| # Work-around for XMLRPC::Lite bug | |
| $encoded = SOAP::Data->type(string => Encode::encode("utf8",$text)); | |
| #my %param = ("text" => $encoded ); | |
| my %param = ("text" => $encoded , "sg" => "true", "topt" => "true"); | |
| #my %param = ("text" => $encoded , "topt" => "true"); | |
| die "translation failed" unless $result = $proxy->call("translate",\%param)->result; | |
| print $result->{'text'} . "\n"; | |
| exit; | |
| if ($result->{'sg'}) { | |
| print "Search graph: \n"; | |
| $sg = $result->{'sg'}; | |
| foreach my $sgn (@$sg) { | |
| foreach my $key (keys %$sgn) { | |
| my $value = $sgn->{$key}; | |
| print "$key=$value "; | |
| } | |
| print "\n"; | |
| } | |
| } | |
| if ($result->{'topt'}) { | |
| print "Translation options: \n"; | |
| $sg = $result->{'topt'}; | |
| foreach my $sgn (@$sg) { | |
| foreach my $key (keys %$sgn) { | |
| my $value = $sgn->{$key}; | |
| if (ref($value) eq 'ARRAY') { | |
| $value = join(",", @$value); | |
| } | |
| print "$key=$value "; | |
| } | |
| print "\n"; | |
| } | |
| } | |