Class ClassConstants

java.lang.Object
java.io.Reader
java.io.FilterReader
org.apache.tools.ant.filters.BaseFilterReader
org.apache.tools.ant.filters.ClassConstants
All Implemented Interfaces:
java.io.Closeable, java.lang.AutoCloseable, java.lang.Readable, ChainableReader

public final class ClassConstants
extends BaseFilterReader
implements ChainableReader
Assembles the constants declared in a Java class in key1=value1(line separator)key2=value2 format.

Notes:

  1. This filter uses the BCEL external toolkit.
  2. This assembles only those constants that are not created using the syntax new whatever()
  3. This assembles constants declared using the basic datatypes and String only.
  4. The access modifiers of the declared constants do not matter.

Example:

<classconstants/>
Or:
<filterreader
    classname="org.apache.tools.ant.filters.ClassConstants"/>
  • Field Summary

    Fields inherited from class java.io.FilterReader

    in

    Fields inherited from class java.io.Reader

    lock
  • Constructor Summary

    Constructors 
    Constructor Description
    ClassConstants()
    Constructor for "dummy" instances.
    ClassConstants​(java.io.Reader in)
    Creates a new filtered reader.
  • Method Summary

    Modifier and Type Method Description
    java.io.Reader chain​(java.io.Reader rdr)
    Creates a new ClassConstants using the passed in Reader for instantiation.
    int read()
    Reads and assembles the constants declared in a class file.

    Methods inherited from class org.apache.tools.ant.filters.BaseFilterReader

    getInitialized, getProject, read, readFully, readLine, setInitialized, setProject, skip

    Methods inherited from class java.io.FilterReader

    close, mark, markSupported, ready, reset

    Methods inherited from class java.io.Reader

    nullReader, read, read, transferTo

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ClassConstants

      public ClassConstants()
      Constructor for "dummy" instances.
      See Also:
      BaseFilterReader()
    • ClassConstants

      public ClassConstants​(java.io.Reader in)
      Creates a new filtered reader. The contents of the passed-in reader are expected to be the name of the class from which to produce a list of constants.
      Parameters:
      in - A Reader object providing the underlying stream. Must not be null.
  • Method Details

    • read

      public int read() throws java.io.IOException
      Reads and assembles the constants declared in a class file.
      Overrides:
      read in class java.io.FilterReader
      Returns:
      the next character in the list of constants, or -1 if the end of the resulting stream has been reached
      Throws:
      java.io.IOException - if the underlying stream throws an IOException during reading, or if the constants for the specified class cannot be read (for example due to the class not being found).
    • chain

      public java.io.Reader chain​(java.io.Reader rdr)
      Creates a new ClassConstants using the passed in Reader for instantiation.
      Specified by:
      chain in interface ChainableReader
      Parameters:
      rdr - A Reader object providing the underlying stream. Must not be null.
      Returns:
      a new filter based on this configuration, but filtering the specified reader