org.apache.struts2.compiler

## Class MemoryJavaFileObject

- java.lang.Object
- - javax.tools.SimpleJavaFileObject
  - - org.apache.struts2.compiler.MemoryJavaFileObject

- All Implemented Interfaces:
    FileObject, JavaFileObject

      public class MemoryJavaFileObject
      extends SimpleJavaFileObject

  Captures the output of the java compiler in memory

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface javax.tools.JavaFileObject

      `JavaFileObject.Kind`

  - ### Field Summary

    - ### Fields inherited from class javax.tools.SimpleJavaFileObject

      `kind, uri`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `MemoryJavaFileObject(String name, JavaFileObject.Kind kind)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `InputStream` | `openInputStream()`
    `OutputStream` | `openOutputStream()`
    `byte[]` | `toByteArray()`

    - ### Methods inherited from class javax.tools.SimpleJavaFileObject

      `delete, getAccessLevel, getCharContent, getKind, getLastModified, getName, getNestingKind, isNameCompatible, openReader, openWriter, toString, toUri`

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

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### MemoryJavaFileObject

          public MemoryJavaFileObject(String name,
                                      JavaFileObject.Kind kind)

  - ### Method Detail

    - #### openInputStream

          public InputStream openInputStream()
                                      throws IOException,
                                             IllegalStateException,
                                             UnsupportedOperationException

      Specified by:
        `openInputStream` in interface `FileObject`
      Overrides:
        `openInputStream` in class `SimpleJavaFileObject`
      Throws:
        `IOException`
        `IllegalStateException`
        `UnsupportedOperationException`

    - #### openOutputStream

          public OutputStream openOutputStream()
                                        throws IOException,
                                               IllegalStateException,
                                               UnsupportedOperationException

      Specified by:
        `openOutputStream` in interface `FileObject`
      Overrides:
        `openOutputStream` in class `SimpleJavaFileObject`
      Throws:
        `IOException`
        `IllegalStateException`
        `UnsupportedOperationException`

    - #### toByteArray

          public byte[] toByteArray()

Copyright © 2000–2026 Apache Software Foundation. All rights reserved.