All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.distributeme.generator.ws.ConfigurationGenerator Maven / Gradle / Ivy

package org.distributeme.generator.ws;

import java.io.PrintWriter;

import com.sun.mirror.apt.Filer;
import com.sun.mirror.declaration.TypeDeclaration;

public class ConfigurationGenerator extends WSStructureGenerator implements WebServiceMeGenerator {

	public ConfigurationGenerator(Filer filer) {
		super(filer);
	}

	@Override
	public void generate(TypeDeclaration type) {
		// create WebContent folder structure
		// create META-INF directory
		PrintWriter writer = createTextFile(type.getSimpleName(), getMetaInfDir(), "MANIFEST", "MF");
		writer.print("Manifest-Version: 1.0\n");
		writer.print("Class-Path: \n");
		closeWriter(writer);
		// create libraries directory
		writer = createTextFile(type.getSimpleName(), getWebInfLibDir(), "readme", "txt");
		writer.print("Directory for project libraries");
		closeWriter(writer);

		// generate web.xml
		generateWebXml(type);

		// generate sun-jaxws.xml
		generateSunJaxWsXml(type);
	}

	private void generateWebXml(TypeDeclaration type) {
		PrintWriter writer = createXmlFile(type.getSimpleName(), getWebInfDir(), "web");

		writer.print("");
		writer.print("\n");
		writer.print("\t" + type.getSimpleName() + "\n");
		writer.print("\t\n");
		writer.print("\t\tcom.sun.xml.ws.transport.http.servlet.WSServletContextListener\n");
		writer.print("\t\n");
		writer.print("\t\n");
		writer.print("\t\t" + type.getSimpleName() + "\n");
		writer.print("\t\tcom.sun.xml.ws.transport.http.servlet.WSServlet\n");
		writer.print("\t\t1\n");
		writer.print("\t\n");
		writer.print("\t\n");
		writer.print("\t\t" + type.getSimpleName() + "\n");
		writer.print("\t\t/" + type.getSimpleName() + "\n");
		writer.print("\t\n");
		writer.print("\n");

		closeWriter(writer);
	}

	private void generateSunJaxWsXml(TypeDeclaration type) {
		PrintWriter writer = createXmlFile(type.getSimpleName(), getWebInfDir(), "sun-jaxws");

		writer.print("\n");
		writer.print("\n");
		writer.print("\t\n");
		writer.print("");

		closeWriter(writer);
	}

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy