Module jdk.compiler
Package com.sun.source.util

## Class TaskEvent

- java.lang.Object
- - com.sun.source.util.TaskEvent

-     public final class TaskEvent
      extends Object

  Provides details about work that has been done by the JDK Java Compiler, javac.
  Since:
    1.6

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `TaskEvent.Kind` | Kind of task event.

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `TaskEvent​(TaskEvent.Kind kind)` | Creates a task event for a given kind.
    `TaskEvent​(TaskEvent.Kind kind, CompilationUnitTree unit)` | Creates a task event for a given kind and compilation unit.
    `TaskEvent​(TaskEvent.Kind kind, CompilationUnitTree unit, TypeElement clazz)` | Creates a task event for a given kind, compilation unit and type element.
    `TaskEvent​(TaskEvent.Kind kind, JavaFileObject sourceFile)` | Creates a task event for a given kind and source file.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `CompilationUnitTree` | `getCompilationUnit()` | Returns the compilation unit for this event.
    `TaskEvent.Kind` | `getKind()` | Returns the kind for this event.
    `JavaFileObject` | `getSourceFile()` | Returns the source file for this event.
    `TypeElement` | `getTypeElement()` | Returns the type element for this event.

    - ### Methods declared in class java.lang.Object

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

- - ### Constructor Detail

    - #### TaskEvent

          public TaskEvent​(TaskEvent.Kind kind)

      Creates a task event for a given kind. The source file, compilation unit and type element are all set to `null`.
      Parameters:
        `kind` - the kind of the event

    - #### TaskEvent

          public TaskEvent​(TaskEvent.Kind kind,
                           JavaFileObject sourceFile)

      Creates a task event for a given kind and source file. The compilation unit and type element are both set to `null`.
      Parameters:
        `kind` - the kind of the event
        `sourceFile` - the source file

    - #### TaskEvent

          public TaskEvent​(TaskEvent.Kind kind,
                           CompilationUnitTree unit)

      Creates a task event for a given kind and compilation unit. The source file is set from the compilation unit, and the type element is set to `null`.
      Parameters:
        `kind` - the kind of the event
        `unit` - the compilation unit

    - #### TaskEvent

          public TaskEvent​(TaskEvent.Kind kind,
                           CompilationUnitTree unit,
                           TypeElement clazz)

      Creates a task event for a given kind, compilation unit and type element. The source file is set from the compilation unit.
      Parameters:
        `kind` - the kind of the event
        `unit` - the compilation unit
        `clazz` - the type element

  - ### Method Detail

    - #### getKind

          public TaskEvent.Kind getKind()

      Returns the kind for this event.
      Returns:
        the kind

    - #### getSourceFile

          public JavaFileObject getSourceFile()

      Returns the source file for this event. May be `null`.
      Returns:
        the source file

    - #### getCompilationUnit

          public CompilationUnitTree getCompilationUnit()

      Returns the compilation unit for this event. May be `null`.
      Returns:
        the compilation unit

    - #### getTypeElement

          public TypeElement getTypeElement()

      Returns the type element for this event. May be `null`.
      Returns:
        the type element