Interface PlaceholderComponent

All Superinterfaces:
ComponentLike

public interface PlaceholderComponent extends ComponentLike
A ComponentLike that can be used in Component building methods that represents a placeholder in text.

A PlaceholderComponent is the collection of a PlaceholderParser along with contextual data in the supplied PlaceholderContext, enabling its use in a Component object.

Such placeholders will generally be built from tokenized strings, however these objects make no assumption about the format of text templating. Such a system can therefore be used by other templating engines without conforming to a particular standard.

The PlaceholderContext is fixed when this object is created, but PlaceholderParser.parse(PlaceholderContext) is not called until asComponent() is called. Thus, any Component object that is created will reflect the time that the Component object was requested, and not when this object itself was created. It therefore follows that implementations must not cache the result of asComponent() unless it is known that the supplied parser is not sensitive to the time of invocation.