org.apache.tools.ant.taskdefs.optional.dotnet
Class WsdlToDotnet

java.lang.Object
  |
  +--org.apache.tools.ant.ProjectComponent
        |
        +--org.apache.tools.ant.Task
              |
              +--org.apache.tools.ant.taskdefs.optional.dotnet.WsdlToDotnet

public class WsdlToDotnet
extends Task

Converts a WSDL file or URL resource into a .NET language. Why add a wrapper to the MS WSDL tool? So that you can verify that your web services, be they written with Axis or anyone else's SOAP toolkit, work with .NET clients. This task is dependency aware when using a file as a source and destination; so if you <get> the file (with usetimestamp="true") then you only rebuild stuff when the WSDL file is changed. Of course, if the server generates a new timestamp every time you ask for the WSDL, this is not enough...use the <filesmatch> <condition> to to byte for byte comparison against a cached WSDL file then make the target conditional on that test failing. See "Creating an XML Web Service Proxy", "wsdl.exe" docs in the framework SDK documentation

Since:
Ant 1.5
Version:
0.5

Field Summary
protected  java.lang.String extraOptions
          any extra command options?
 
Fields inherited from class org.apache.tools.ant.Task
description, location, target, taskName, taskType, wrapper
 
Fields inherited from class org.apache.tools.ant.ProjectComponent
project
 
Constructor Summary
WsdlToDotnet()
           
 
Method Summary
 void execute()
          do the work by building the command line and then calling it
 void setDestFile(java.io.File destFile)
          Name of the file to generate.
 void setExtraOptions(java.lang.String extraOptions)
          Any extra WSDL.EXE options which aren't explicitly supported by the ant wrapper task; optional
 void setFailOnError(boolean failOnError)
          Whether or not a failure should halt the build.
 void setLanguage(java.lang.String language)
          set the language; one of "CS", "JS", or "VB" optional, default is CS for C# source
 void setNamespace(java.lang.String namespace)
          namespace to place the source in.
 void setServer(boolean server)
          flag to enable server side code generation; optional, default=false
 void setSrcFile(java.io.File srcFile)
          The local WSDL file to parse; either url or srcFile is required.
 void setUrl(java.lang.String url)
          Sets the URL to fetch.
protected  void validate()
          validation code
 
Methods inherited from class org.apache.tools.ant.Task
getDescription, getLocation, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, maybeConfigure, perform, reconfigure, setDescription, setLocation, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType
 
Methods inherited from class org.apache.tools.ant.ProjectComponent
getProject, setProject
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

extraOptions

protected java.lang.String extraOptions
any extra command options?

Constructor Detail

WsdlToDotnet

public WsdlToDotnet()
Method Detail

setDestFile

public void setDestFile(java.io.File destFile)
Name of the file to generate. Required

Parameters:
destFile - filename

setUrl

public void setUrl(java.lang.String url)
Sets the URL to fetch. Fetching is by wsdl.exe; Ant proxy settings are ignored; either url or srcFile is required.

Parameters:
url - url to save

setSrcFile

public void setSrcFile(java.io.File srcFile)
The local WSDL file to parse; either url or srcFile is required.

Parameters:
srcFile - name of WSDL file

setLanguage

public void setLanguage(java.lang.String language)
set the language; one of "CS", "JS", or "VB" optional, default is CS for C# source

Parameters:
language - language to generate

setServer

public void setServer(boolean server)
flag to enable server side code generation; optional, default=false

Parameters:
server - server-side flag

setNamespace

public void setNamespace(java.lang.String namespace)
namespace to place the source in. optional; default ""

Parameters:
namespace - new namespace

setFailOnError

public void setFailOnError(boolean failOnError)
Whether or not a failure should halt the build. Optional - default is true.

Parameters:
failOnError - new failure option

setExtraOptions

public void setExtraOptions(java.lang.String extraOptions)
Any extra WSDL.EXE options which aren't explicitly supported by the ant wrapper task; optional

Parameters:
extraOptions - The new ExtraOptions value

validate

protected void validate()
                 throws BuildException
validation code

Throws:
BuildException - if validation failed

execute

public void execute()
             throws BuildException
do the work by building the command line and then calling it

Overrides:
execute in class Task
Throws:
BuildException - if validation or execution failed


Copyright 2000-2005 Apache Software Foundation. All Rights Reserved.