<?php
/**
 * SOAP client class for accessing the gnuviech adminstration tool SOAP
 * service.
 * @author Jan Dittberner <jan@dittberner.info>
 * @version $Id$
 */
require_once('SOAP/Client.php');

/**
 * SOAP requester.
 */
class SOAPRequester {
	/**
	 * SOAP_Client-Instanz.
	 * @access private
	 */
	var $soapclient;

	/**
	 * Constructor expecting a settings array.
	 * @param settings with options protocol, hostname, portnumber, path
	 * @access public
	 */
	function SOAPRequester($settings) {
		$this->soapclient = new SOAP_Client(sprintf("%s://%s:%d/%s",
																								$settings['protocol'],
																								$settings['hostname'],
																								$settings['portnumber'],
																								$settings['path']));
	}

	/**
	 * Calls the echo method at the remote SOAP server.
	 * @param String parameter
	 * @return twice the String if the remote call is successful
	 */
	function callecho($param) {
		$options = array('trace' => 1);

		$ret = $this->soapclient->call('echo',
																	 $params = array('param0' => $param),
																	 $options);
		
		return $ret;
	}
}
?>