Class PackageUtils

java.lang.Object
org.junit.platform.commons.util.PackageUtils

@API(status=INTERNAL, since="1.0") public final class PackageUtils extends Object
Collection of utilities for working with packages.

DISCLAIMER

These utilities are intended solely for usage within the JUnit framework itself. Any usage by external parties is not supported. Use at your own risk!

Since:
1.0
  • Method Details

    • getAttribute

      public static Optional<String> getAttribute(Class<?> type, Function<Package,String> function)
      Get the package attribute for the supplied type using the supplied function.

      This method only returns a non-empty Optional value holder if the class loader for the supplied type created a Package object and the supplied function does not return null when applied.

      Parameters:
      type - the type to get the package attribute for
      function - a function that computes the package attribute value (e.g., Package::getImplementationTitle); never null
      Returns:
      an Optional containing the attribute value; never null but potentially empty
      Throws:
      PreconditionViolationException - if the supplied type or function is null
      See Also:
    • getAttribute

      public static Optional<String> getAttribute(Class<?> type, String name)
      Get the value of the specified attribute name, specified as a string, or an empty Optional if the attribute was not found. The attribute name is case-insensitive.

      This method also returns an empty Optional value holder if any exception is caught while loading the manifest file via the JAR file of the specified type.

      Parameters:
      type - the type to get the attribute for
      name - the attribute name as a string
      Returns:
      an Optional containing the attribute value; never null but potentially empty
      Throws:
      PreconditionViolationException - if the supplied type is null or the specified name is blank
      See Also: