DiagnosticCollector (Java SE 25 & JDK 25)
Description: declaration: module: java.compiler, package: javax.tools, class: DiagnosticCollector
Keywords: javax.tools.DiagnosticCollector class

# Class DiagnosticCollector<S>

java.lang.Object
javax.tools.DiagnosticCollector<S>

Type Parameters:
  `S` - the type of source objects used by diagnostics received by this object

All Implemented Interfaces:
  `DiagnosticListener<S>`

public final class DiagnosticCollector<S> extends Object implements DiagnosticListener<S>
Provides an easy way to collect diagnostics in a list.

Since:
  1.6

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DiagnosticCollector()`
  Creates a new instance of DiagnosticCollector.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `List<Diagnostic<? extends S>>`
  `getDiagnostics()`
  Returns a list view of diagnostics collected by this object.
  `void`
  `report(Diagnostic<? extends S> diagnostic)`
  Invoked when a problem is found.

  ### Methods declared in class Object

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

- ## Constructor Details

  - ### DiagnosticCollector

    public DiagnosticCollector()
    Creates a new instance of DiagnosticCollector.

- ## Method Details

  - ### report

    public void report(Diagnostic<? extends S> diagnostic)
    Description copied from interface: `DiagnosticListener`
    Invoked when a problem is found.
    Specified by:
      `report` in interface `DiagnosticListener<S>`
    Parameters:
      `diagnostic` - a diagnostic representing the problem that was found

  - ### getDiagnostics

    public List<Diagnostic<? extends S>> getDiagnostics()
    Returns a list view of diagnostics collected by this object.
    Returns:
      a list view of diagnostics