private EndpointReference setupListener()

in src/org/apache/kandula/wsat/twopc/ParticipantServiceListener.java [60:107]


	private EndpointReference setupListener() throws IOException {
		String className = ParticipantPortTypeRawXMLSkeleton.class.getName();
		String serviceName = "ParticipantPortType";
		AxisService service = new AxisService(serviceName);
		service.addParameter(new Parameter(
				org.apache.axis2.Constants.SERVICE_CLASS, className));
		service.setFileName((new File(className)).toURL());
		QName prepareOperationName = new QName(Constants.WS_COOR,
				"prepareOperation");
		AxisOperation prepareOperationDesc;
		String prepareMapping = Constants.WS_AT_PREPARE;
		prepareOperationDesc = new InOnlyAxisOperation();
		prepareOperationDesc.setName(prepareOperationName);
		prepareOperationDesc
				.setMessageReceiver(new RawXMLINOnlyMessageReceiver());
		// Adding the WSA Action mapping to the operation
		service.mapActionToOperation(prepareMapping, prepareOperationDesc);
		service.addOperation(prepareOperationDesc);

		QName commitOperationName = new QName(Constants.WS_COOR,
				"commitOperation");
		AxisOperation commitOperationDesc;
		String commitMapping = Constants.WS_AT_COMMIT;
		commitOperationDesc = new InOnlyAxisOperation();
		commitOperationDesc.setName(commitOperationName);
		commitOperationDesc
				.setMessageReceiver(new RawXMLINOnlyMessageReceiver());
		// Adding the WSA Action mapping to the operation
		service.mapActionToOperation(commitMapping, commitOperationDesc);
		service.addOperation(commitOperationDesc);

		QName rollbackOperationName = new QName(Constants.WS_COOR,
				"rollbackOperation");
		AxisOperation rollbackOperationDesc;
		String rollbackMapping = Constants.WS_AT_ROLLBACK;
		rollbackOperationDesc = new InOnlyAxisOperation();
		rollbackOperationDesc.setName(rollbackOperationName);
		rollbackOperationDesc
				.setMessageReceiver(new RawXMLINOnlyMessageReceiver());
		// Adding the WSA Action mapping to the operation
		service.mapActionToOperation(rollbackMapping, rollbackOperationDesc);
		service.addOperation(rollbackOperationDesc);

		KandulaListener listener = KandulaListener.getInstance();
		listener.addService(service);
		listener.start();
		return new EndpointReference(listener.getHost() + serviceName);
	}