package helloworld;
//
import java.io.*;
import java.util.*;
//
import org.apache.axis.AxisFault;
import org.apache.axis.Handler;
import org.apache.axis.MessageContext;
import org.apache.axis.handlers.BasicHandler;
//
public class HelloWorldHandler extends BasicHandler {
	//
	public void invoke (MessageContext messageContext) throws AxisFault {
		try {
			// Collect data from the request
			String targetServiceName = messageContext.getTargetService();
			String transportName = messageContext.getTransportName();
			//
			Date timeNow = new Date();
			//
			String logFileName = (String) getOption("logfilename");
			//
			boolean appendFlag = true;
			FileOutputStream fos = new FileOutputStream(logFileName,appendFlag);
			PrintWriter writer = new PrintWriter(fos);
			StringBuffer buffer = new StringBuffer();
			buffer.append("Request made at: " + timeNow + "\n");
			buffer.append("Service Name: " + targetServiceName + "\n");
			buffer.append("Transport Name: " + transportName + "\n");
			writer.println(buffer);
			writer.close(); 
			
		} catch (Exception e) {
			throw AxisFault.makeFault(e);
		}
	}
	//
}
//