java.lang.Object
org.apache.wicket.markup.html.DecoratingHeaderResponse
- All Implemented Interfaces:
Closeable
,AutoCloseable
,IHeaderResponse
- Direct Known Subclasses:
CSPNonceHeaderResponseDecorator
,FilteringHeaderResponse
,JavaScriptDeferHeaderResponse
,ResourceAggregator
,SubresourceHeaderResponse
This is simply a helper implementation of IHeaderResponse that really delegates all of its method
calls to the IHeaderResponse that is passed into the constructor. It is defined as abstract
because it's only meant to be extended and not used a la carte. You can extend it and override
only the methods that you want to change the functionality of.
- Author:
- Jeremy Thomerson
- See Also:
-
Constructor Summary
ConstructorDescriptionCreate a header response that simply delegates all methods to the one that is passed in here. -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
Mark Header rendering is completed and subsequent usage will be ignored.protected final IHeaderResponse
Returns the actual response being decorated for subclasses to be able to pass it off to other objects if they need to do so.Returns the response that can be used to write arbitrary text to the head section.boolean
isClosed()
void
markRendered
(Object object) Marks the given object as rendered.void
render
(HeaderItem item) Renders the givenHeaderItem
to the response if none of its tokens has been rendered before.boolean
wasRendered
(Object object) Returns whether the given object has been marked as rendered.
-
Constructor Details
-
DecoratingHeaderResponse
Create a header response that simply delegates all methods to the one that is passed in here.- Parameters:
real
- the actual response that this class delegates to by default
-
-
Method Details
-
getRealResponse
Returns the actual response being decorated for subclasses to be able to pass it off to other objects if they need to do so.- Returns:
- the actual wrapped IHeaderResponse
-
render
Description copied from interface:IHeaderResponse
Renders the givenHeaderItem
to the response if none of its tokens has been rendered before.Automatically marks all item's tokens as rendered.
- Specified by:
render
in interfaceIHeaderResponse
- Parameters:
item
- The item to render.- See Also:
-
markRendered
Description copied from interface:IHeaderResponse
Marks the given object as rendered. The object can be anything (string, resource reference, etc...). The purpose of this function is to allow user to manually keep track of rendered items. This can be useful for items that are expensive to generate (like interpolated text).- Specified by:
markRendered
in interfaceIHeaderResponse
- Parameters:
object
- object to be marked as rendered.
-
wasRendered
Description copied from interface:IHeaderResponse
Returns whether the given object has been marked as rendered.- Specified by:
wasRendered
in interfaceIHeaderResponse
- Parameters:
object
- Object that is queried to be rendered- Returns:
- Whether the object has been marked as rendered during the request
- See Also:
-
getResponse
Description copied from interface:IHeaderResponse
Returns the response that can be used to write arbitrary text to the head section.Note: This method is kind of dangerous as users are able to write to the output whatever they like.
- Specified by:
getResponse
in interfaceIHeaderResponse
- Returns:
- Response
-
close
Description copied from interface:IHeaderResponse
Mark Header rendering is completed and subsequent usage will be ignored. If some kind of buffering is used internally, this action will mark that the contents has to be flushed out.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Specified by:
close
in interfaceIHeaderResponse
-
isClosed
- Specified by:
isClosed
in interfaceIHeaderResponse
- Returns:
- if header rendering is completed and subsequent usage will be ignored
-