Package org.apache.tools.ant.taskdefs

# Class Manifest.Section

java.lang.Object
org.apache.tools.ant.taskdefs.Manifest.Section

Enclosing class:
  Manifest

    public static class Manifest.Section
    extends java.lang.Object

A manifest section - you can nest attribute elements into sections. A section consists of a set of attribute values, separated from other sections by a blank line.

- ## Constructor Summary

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

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `java.lang.String` | `addAttributeAndCheck​(Manifest.Attribute attribute)` | Add an attribute to the section
  `void` | `addConfiguredAttribute​(Manifest.Attribute attribute)` | Add an attribute to the section.
  `java.lang.Object` | `clone()` | Clone this section
  `boolean` | `equals​(java.lang.Object rhs)` |
  `Manifest.Attribute` | `getAttribute​(java.lang.String attributeName)` | Get a attribute of the section
  `java.util.Enumeration<java.lang.String>` | `getAttributeKeys()` | Get the attribute keys.
  `java.lang.String` | `getAttributeValue​(java.lang.String attributeName)` | Get the value of the attribute with the name given.
  `java.lang.String` | `getName()` | Get the Section's name.
  `java.util.Enumeration<java.lang.String>` | `getWarnings()` | Get the warnings for this section.
  `int` | `hashCode()` |
  `void` | `merge​(Manifest.Section section)` | Merge in another section without merging Class-Path attributes.
  `void` | `merge​(Manifest.Section section, boolean mergeClassPaths)` | Merge in another section
  `java.lang.String` | `read​(java.io.BufferedReader reader)` | Read a section through a reader.
  `void` | `removeAttribute​(java.lang.String attributeName)` | Remove the given attribute from the section
  `void` | `setName​(java.lang.String name)` | The name of the section; optional -default is the main section.
  `void` | `write​(java.io.PrintWriter writer)` | Write the section out to a print writer without flattening multi-values attributes (i.e.
  `void` | `write​(java.io.PrintWriter writer, boolean flatten)` | Write the section out to a print writer.

  ### Methods inherited from class java.lang.Object

  `finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### Section

    public Section()

- ## Method Details

  - ### setName

    public void setName​(java.lang.String name)
    The name of the section; optional -default is the main section.
    Parameters:
      `name` - the section's name

  - ### getName

    public java.lang.String getName()
    Get the Section's name.
    Returns:
      the section's name.

  - ### read

    public java.lang.String read​(java.io.BufferedReader reader) throws ManifestException, java.io.IOException
    Read a section through a reader.
    Parameters:
      `reader` - the reader from which the section is read
    Returns:
      the name of the next section if it has been read as part of this section - This only happens if the Manifest is malformed.
    Throws:
      `ManifestException` - if the section is not valid according to the JAR spec
      `java.io.IOException` - if the section cannot be read from the reader.

  - ### merge

    public void merge​(Manifest.Section section) throws ManifestException
    Merge in another section without merging Class-Path attributes.
    Parameters:
      `section` - the section to be merged with this one.
    Throws:
      `ManifestException` - if the sections cannot be merged.

  - ### merge

    public void merge​(Manifest.Section section, boolean mergeClassPaths) throws ManifestException
    Merge in another section
    Parameters:
      `section` - the section to be merged with this one.
      `mergeClassPaths` - whether Class-Path attributes should be merged.
    Throws:
      `ManifestException` - if the sections cannot be merged.

  - ### write

    public void write​(java.io.PrintWriter writer) throws java.io.IOException
    Write the section out to a print writer without flattening multi-values attributes (i.e. Class-Path).
    Parameters:
      `writer` - the Writer to which the section is written
    Throws:
      `java.io.IOException` - if the section cannot be written

  - ### write

    public void write​(java.io.PrintWriter writer, boolean flatten) throws java.io.IOException
    Write the section out to a print writer.
    Parameters:
      `writer` - the Writer to which the section is written
      `flatten` - whether to collapse multi-valued attributes (i.e. potentially Class-Path) Class-Path into a single attribute.
    Throws:
      `java.io.IOException` - if the section cannot be written
    Since:
      Ant 1.8.0

  - ### getAttribute

    public Manifest.Attribute getAttribute​(java.lang.String attributeName)
    Get a attribute of the section
    Parameters:
      `attributeName` - the name of the attribute
    Returns:
      a Manifest.Attribute instance if the attribute is single-valued, otherwise a Vector of Manifest.Attribute instances.

  - ### getAttributeKeys

    public java.util.Enumeration<java.lang.String> getAttributeKeys()
    Get the attribute keys.
    Returns:
      an Enumeration of Strings, each string being the lower case key of an attribute of the section.

  - ### getAttributeValue

    public java.lang.String getAttributeValue​(java.lang.String attributeName)
    Get the value of the attribute with the name given.
    Parameters:
      `attributeName` - the name of the attribute to be returned.
    Returns:
      the attribute's value or null if the attribute does not exist in the section

  - ### removeAttribute

    public void removeAttribute​(java.lang.String attributeName)
    Remove the given attribute from the section
    Parameters:
      `attributeName` - the name of the attribute to be removed.

  - ### addConfiguredAttribute

    public void addConfiguredAttribute​(Manifest.Attribute attribute) throws ManifestException
    Add an attribute to the section.
    Parameters:
      `attribute` - the attribute to be added to the section
    Throws:
      `ManifestException` - if the attribute is not valid.

  - ### addAttributeAndCheck

    public java.lang.String addAttributeAndCheck​(Manifest.Attribute attribute) throws ManifestException
    Add an attribute to the section
    Parameters:
      `attribute` - the attribute to be added.
    Returns:
      the value of the attribute if it is a name attribute - null other wise
    Throws:
      `ManifestException` - if the attribute already exists in this section.

  - ### clone

    public java.lang.Object clone()
    Clone this section
    Overrides:
      `clone` in class `java.lang.Object`
    Returns:
      the cloned Section
    Since:
      Ant 1.5.2

  - ### getWarnings

    public java.util.Enumeration<java.lang.String> getWarnings()
    Get the warnings for this section.
    Returns:
      an Enumeration of warning strings.

  - ### hashCode

    public int hashCode()
    Overrides:
      `hashCode` in class `java.lang.Object`
    Returns:
      a hash value based on the attributes.
    See Also:
      `Object.hashCode()`

  - ### equals

    public boolean equals​(java.lang.Object rhs)
    Overrides:
      `equals` in class `java.lang.Object`
    Parameters:
      `rhs` - the object to check for equality.
    Returns:
      true if the attributes are the same.
    See Also:
      `Object.equals(java.lang.Object)`