## org.apache.tools.ant.taskdefs
Class GenerateKey

    java.lang.Object
      org.apache.tools.ant.ProjectComponent
          org.apache.tools.ant.Task
              org.apache.tools.ant.taskdefs.GenerateKey

All Implemented Interfaces:
  java.lang.Cloneable

    public class GenerateKey

extends Task

Generates a key in a keystore.

Since:
  Ant 1.2

Nested Class Summary
`static class` `GenerateKey.DistinguishedName` A class corresponding to the dname nested element.
`static class` `GenerateKey.DnameParam` A DistinguishedName parameter.

Field Summary
`protected java.lang.String` `alias` The alias of signer.
`protected java.lang.String` `dname`
`protected GenerateKey.DistinguishedName` `expandedDname`
`protected java.lang.String` `keyalg`
`protected java.lang.String` `keypass`
`protected int` `keysize`
`protected java.lang.String` `keystore` The name of keystore file.
`protected java.lang.String` `sigalg`
`protected java.lang.String` `storepass`
`protected java.lang.String` `storetype`
`protected int` `validity`
`protected boolean` `verbose`

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
`GenerateKey()`

Method Summary
`GenerateKey.DistinguishedName` `createDname()` Distinguished name list.
`void` `execute()` Execute the task.
`void` `setAlias(java.lang.String alias)` The alias to add under.
`void` `setDname(java.lang.String dname)` The distinguished name for entity.
`void` `setKeyalg(java.lang.String keyalg)` The method to use when generating name-value pair.
`void` `setKeypass(java.lang.String keypass)` Password for private key (if different).
`void` `setKeysize(java.lang.String keysize)` Indicates the size of key generated.
`void` `setKeystore(java.lang.String keystore)` Keystore location.
`void` `setSigalg(java.lang.String sigalg)` The algorithm to use in signing.
`void` `setStorepass(java.lang.String storepass)` Password for keystore integrity.
`void` `setStoretype(java.lang.String storetype)` Keystore type.
`void` `setValidity(java.lang.String validity)` Indicates how many days certificate is valid.
`void` `setVerbose(boolean verbose)` If true, verbose output when signing.

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`

Field Detail

### alias

    protected java.lang.String alias

  The alias of signer.

### keystore

    protected java.lang.String keystore

  The name of keystore file.

### storepass

    protected java.lang.String storepass

### storetype

    protected java.lang.String storetype

### keypass

    protected java.lang.String keypass

### sigalg

    protected java.lang.String sigalg

### keyalg

    protected java.lang.String keyalg

### dname

    protected java.lang.String dname

### expandedDname

    protected GenerateKey.DistinguishedName expandedDname

### keysize

    protected int keysize

### validity

    protected int validity

### verbose

    protected boolean verbose

Constructor Detail

### GenerateKey

    public GenerateKey()

Method Detail

### createDname

    public GenerateKey.DistinguishedName createDname()
                                              throws BuildException

  Distinguished name list.

  Returns:
    Distinguished name container.
  Throws:
    `BuildException` - If specified more than once or dname attribute is used.

### setDname

    public void setDname(java.lang.String dname)

  The distinguished name for entity.

  Parameters:
    `dname` - distinguished name

### setAlias

    public void setAlias(java.lang.String alias)

  The alias to add under.

  Parameters:
    `alias` - alias to add under

### setKeystore

    public void setKeystore(java.lang.String keystore)

  Keystore location.

  Parameters:
    `keystore` - location

### setStorepass

    public void setStorepass(java.lang.String storepass)

  Password for keystore integrity. Must be at least 6 characters long.

  Parameters:
    `storepass` - password

### setStoretype

    public void setStoretype(java.lang.String storetype)

  Keystore type.

  Parameters:
    `storetype` - type

### setKeypass

    public void setKeypass(java.lang.String keypass)

  Password for private key (if different).

  Parameters:
    `keypass` - password

### setSigalg

    public void setSigalg(java.lang.String sigalg)

  The algorithm to use in signing.

  Parameters:
    `sigalg` - algorithm

### setKeyalg

    public void setKeyalg(java.lang.String keyalg)

  The method to use when generating name-value pair.

  Parameters:
    `keyalg` - algorithm

### setKeysize

    public void setKeysize(java.lang.String keysize)
                    throws BuildException

  Indicates the size of key generated.

  Parameters:
    `keysize` - size of key
  Throws:
    `BuildException` - If not an Integer
  To do:
    Could convert this to a plain Integer setter.

### setValidity

    public void setValidity(java.lang.String validity)
                     throws BuildException

  Indicates how many days certificate is valid.

  Parameters:
    `validity` - days valid
  Throws:
    `BuildException` - If not an Integer

### setVerbose

    public void setVerbose(boolean verbose)

  If true, verbose output when signing.

  Parameters:
    `verbose` - verbose or not

### execute

    public void execute()
                 throws BuildException

  Execute the task.

  Overrides:
    `execute` in class `Task`
  Throws:
    `BuildException` - on error