Interface Resource<T>

Type Parameters:
T - the type of the resource
All Superinterfaces:
org.junit.jupiter.api.extension.ExtensionContext.Store.CloseableResource
All Known Implementing Classes:
TemporaryDirectory.TemporaryDirectoryResource

public interface Resource<T> extends org.junit.jupiter.api.extension.ExtensionContext.Store.CloseableResource
Resource is the common interface for "resources", as managed by ResourceFactory implementations.

It is part of the "resources" JUnit Jupiter extension, which pertains to anything that needs to be injected into tests and which may need to be started up or torn down. Temporary directories are a common example.

This class is intended for implementors of new kinds of resources.

For more details and examples, see the documentation on resources.

Since:
1.9.0
See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    default void
    Closes the resource.
    get()
    Returns the contents of the resource.
  • Method Details

    • get

      T get() throws Exception
      Returns the contents of the resource.
      Throws:
      Exception - if getting the resource failed
    • close

      default void close() throws Exception
      Closes the resource.
      Specified by:
      close in interface org.junit.jupiter.api.extension.ExtensionContext.Store.CloseableResource
      Throws:
      Exception - if closing the resource failed