GenerateKey (Apache Ant API)
Description: declaration: package: org.apache.tools.ant.taskdefs, class: GenerateKey

Package 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

  Nested Classes
  Modifier and Type | Class | Description
  --- | --- | ---
  `static class` | `GenerateKey.DistinguishedName` | A class corresponding to the dname nested element.
  `static class` | `GenerateKey.DnameParam` | A DistinguishedName parameter.

- ## Field Summary

  Fields
  Modifier and Type | Field | Description
  --- | --- | ---
  `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` | `saname` |
  `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

  Constructors
  Constructor | Description
  --- | ---
  `GenerateKey()` |

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `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` | `setSaname​(java.lang.String saname)` | The subject alternative name for entity.
  `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 Details

  - ### 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

  - ### saname

    protected java.lang.String saname

  - ### dname

    protected java.lang.String dname

  - ### expandedDname

    protected GenerateKey.DistinguishedName expandedDname

  - ### keysize

    protected int keysize

  - ### validity

    protected int validity

  - ### verbose

    protected boolean verbose

- ## Constructor Details

  - ### GenerateKey

    public GenerateKey()

- ## Method Details

  - ### 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

  - ### setSaname

    public void setSaname​(java.lang.String saname)
    The subject alternative name for entity.
    Parameters:
      `saname` - subject alternative name
    Since:
      Ant 1.9.14

  - ### 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