## 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
Author:
  Steve Loughran

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-2003 Apache Software Foundation. All Rights Reserved.