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

java.lang.Object
  extended by org.apache.tools.ant.ProjectComponent
      extended by org.apache.tools.ant.Task
          extended by org.apache.tools.ant.taskdefs.optional.dotnet.ImportTypelib
All Implemented Interfaces:
java.lang.Cloneable

public class ImportTypelib
extends Task

Import a COM type library into the .NET framework.

This task is a wrapper to .NET's tlbimport; it imports a tlb file to a NET assembly by generating a binary assembly (.dll) that contains all the binding metadata. It uses date timestamps to minimise rebuilds.

Example

     <importtypelib
       srcfile="xerces.tlb"
       destfile="xerces.dll"
       namespace="Apache.Xerces"/>
 

Since:
Ant 1.6

Field Summary
 
Fields inherited from class org.apache.tools.ant.Task
target, taskName, taskType, wrapper
 
Fields inherited from class org.apache.tools.ant.ProjectComponent
description, location, project
 
Constructor Summary
ImportTypelib()
           
 
Method Summary
 void execute()
          Create a typelib command
 void setDestFile(java.io.File destFile)
          This method names the output file.
 void setExtraOptions(java.lang.String extraOptions)
          set any extra options that are not yet supported by this task.
 void setNamespace(java.lang.String namespace)
          This method sets what namespace the typelib is to be in.
 void setSrcFile(java.io.File srcFile)
          This method sets which is the source .tlb file.
 void setUnsafe(boolean unsafe)
          do you want unsafe code.
 void setUseSysArray(boolean useSysArray)
          set this to map a COM SafeArray to the System.Array class
protected  void validate()
          validation code
 
Methods inherited from class org.apache.tools.ant.Task
bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType
 
Methods inherited from class org.apache.tools.ant.ProjectComponent
clone, getDescription, getLocation, getProject, setDescription, setLocation, setProject
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ImportTypelib

public ImportTypelib()
Method Detail

setDestFile

public void setDestFile(java.io.File destFile)
This method names the output file. This is an operation which is required to have been performed.

Parameters:
destFile - the output file.

setNamespace

public void setNamespace(java.lang.String namespace)
This method sets what namespace the typelib is to be in. This is an operation which is required to have been performed.

Parameters:
namespace - the namespace to use.

setSrcFile

public void setSrcFile(java.io.File srcFile)
This method sets which is the source .tlb file. This is an operation which is required to have been performed.

Parameters:
srcFile - the source file.

setUnsafe

public void setUnsafe(boolean unsafe)
do you want unsafe code.

Parameters:
unsafe - a boolean value.

setUseSysArray

public void setUseSysArray(boolean useSysArray)
set this to map a COM SafeArray to the System.Array class

Parameters:
useSysArray - a boolean value.

setExtraOptions

public void setExtraOptions(java.lang.String extraOptions)
set any extra options that are not yet supported by this task.

Parameters:
extraOptions - the options to use.

validate

protected void validate()
                 throws BuildException
validation code

Throws:
BuildException - if validation failed

execute

public void execute()
             throws BuildException
Create a typelib command

Overrides:
execute in class Task
Throws:
BuildException - if something goes wrong with the build