Package org.apache.tapestry5.services.javascript

# Interface JavaScriptStackSource

All Known Implementing Classes:
  `JavaScriptStackSourceImpl`

@UsesMappedConfiguration(JavaScriptStack.class) public interface JavaScriptStackSource
Manages the available `JavaScriptStack`s, each of which has a unique name.

Since:
  5.2.0

- ## Method Summary

  Modifier and Type
  Method
  Description
  `JavaScriptStack`
  `findStack(String name)`
  Gets a stack by name (ignoring case).
  `JavaScriptStack`
  `findStackForJavaScriptLibrary(Resource resource)`
  Attempts to find the stack containing the indicated JavaScript library.
  `JavaScriptStack`
  `getStack(String name)`
  Gets a stack by name (ignoring case).
  `List<String>`
  `getStackNames()`
  Returns the names of all stacks, in sorted order.

- ## Method Details

  - ### getStack

    JavaScriptStack getStack(String name)
    Gets a stack by name (ignoring case).
    Returns:
      named stack
    Throws:
      `UnknownValueException` - if no such stack

  - ### findStack

    JavaScriptStack findStack(String name)
    Gets a stack by name (ignoring case).
    Returns:
      named stack, or null if not found
    Since:
      5.4

  - ### getStackNames

    List<String> getStackNames()
    Returns the names of all stacks, in sorted order.
    Since:
      5.2.1

  - ### findStackForJavaScriptLibrary

    JavaScriptStack findStackForJavaScriptLibrary(Resource resource)
    Attempts to find the stack containing the indicated JavaScript library.
    Parameters:
      `resource` - identifies a potential JavaScript Library
    Returns:
      the stack if found, or null
    Since:
      5.4
    See Also:
      - `JavaScriptStack.getJavaScriptLibraries()`