<?xml version="1.0" encoding="UTF-8" ?>
<canvas debug="true">

	<soap name="WidgetFactory" wsdl="file:../xml/WidgetFactoryRPC.wsdl"
		port="localWidgetFactoryPort">

		<attribute name="createWidgetHandlerDel" value="null"
			type="expression" />

		<handler name="onload">
			Debug.write('WidgetFactory SOAP Service loaded');
			Debug.write('----------------');
			Debug.write('WidgetFactory proxy:');
			Debug.inspect(this.proxy);
			Debug.write('----------------');
			Debug.write('WidgetFactory proto:');
			Debug.inspect(WidgetFactory.proto)
			Debug.write('----------------');

			wfUI.setAttribute('visible', true);
		</handler>

		<handler name="onerror" args="error">
			Debug.write('WidgetFactory Error:', error);
		</handler>

		<method name="createWidget" args="name,description,jedi">
		
            var createReqParam = new this.proto.createWidgetRequestType();

            createReqParam.Name = name;
            if (description) {
				createReqParam.Description = description;
            }
            createReqParam.JediWidget = jedi;
            createReqParam.version = '1.0';

            if (this.createWidgetHandlerDel == null) {
                this.createWidgetHandlerDel = new LzDelegate(this, 'createWidgetHandler');
            }

            Debug.write('Invoking WidgetFactory createWidget(', name, ', ',
            	description, ', ', jedi, ')');

            this.proxy.createWidget( [ createReqParam ], this.createWidgetHandlerDel);

		</method>

		<method name="createWidgetHandler" args="response">
            Debug.write(this.name, ' createWidget response: ', response);
        </method>

	</soap>

	<view name="wfUI" x="10" y="10" layout="spacing: 5"
		visible="false">

		<view layout="axis: x; spacing: 5">
			<text>Name:</text>
			<edittext id="addName" />
		</view>

		<view layout="axis: x; spacing: 5">
			<text>Description:</text>
			<edittext id="addDescription" />
		</view>

		<checkbox id="addJedi">Jedi</checkbox>
		<button
			onclick="WidgetFactory.createWidget(addName.text,addDescription.text,addJedi.value)">
			Create Widget
		</button>
	</view>


</canvas>
