Interface SocialChatRenderer<T>
- Type Parameters:
T- the type of object this renderer operates on (e.g. a player class)
- All Known Implementing Classes:
ConsoleChatRenderer,UserChatRenderer
public interface SocialChatRenderer<T>
Renders a
SocialRegisteredMessageContext for a
specific
audience target type T.
Renderers are registered via
ChatManager#registerRenderer. The framework maps incoming
Audience
objects to a target of type T and then calls
render(Object, SocialRegisteredMessageContext) to produce a
SocialRendererContext.
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic final classBuilder forSocialChatRenderer.Registeredwrappers around aSocialChatRenderer.static classRepresents the outcome of mapping anAudienceto a renderer target.static final classA configured and registered wrapper around aSocialChatRenderer. -
Method Summary
Modifier and TypeMethodDescriptionstatic <T> SocialChatRenderer.Builder<T> builder(@NotNull SocialChatRenderer<T> renderer) Creates a new builder for the given renderer implementation.render(T target, @NotNull SocialRegisteredMessageContext context) Renders the message for the given target.
-
Method Details
-
builder
Creates a new builder for the given renderer implementation.- Type Parameters:
T- the audience target type- Parameters:
renderer- the renderer to wrap- Returns:
- a new builder
-
render
SocialRendererContext render(@NotNull T target, @NotNull @NotNull SocialRegisteredMessageContext context) Renders the message for the given target.- Parameters:
target- the resolved audience targetcontext- the message context to render- Returns:
- the renderer output context
-