Interface EntityViewProcessor
- All Known Implementing Classes:
AbstractEntityFetchingViewProcessor
,ActionAllowedAuthorizationViewProcessor
,AssociationHeaderViewProcessor
,DefaultEntityFetchingViewProcessor
,DefaultValidationViewProcessor
,DelegatingEntityFetchingViewProcessor
,DeleteActionFormViewProcessor
,DeleteEntityViewProcessor
,DetailFormViewProcessor
,EntityPropertyRegistryViewProcessor
,EntityQueryFilterProcessor
,EntityViewLinksUtilsProcessors.AfterSaveEntityViewRedirectProcessor
,EntityViewLinksUtilsProcessors.ButtonRedirectEntityViewRedirectProcessor
,EntityViewLinksUtilsProcessors.EntityViewRedirectProcessor
,EntityViewProcessorAdapter
,ExtensionViewProcessorAdapter
,GlobalPageFeedbackViewProcessor
,ListFormViewProcessor
,ListPageStructureViewProcessor
,MessagePrefixingViewProcessor
,PageableExtensionViewProcessor
,PropertyRenderingViewProcessor
,SaveEntityViewProcessor
,SimpleEntityViewProcessorAdapter
,SingleEntityFormViewProcessor
,SingleEntityPageStructureViewProcessor
,SortableTableRenderingViewProcessor
,TemplateViewProcessor
public interface EntityViewProcessor
Default processor interface for entity view processing. Whereas there is only a single
EntityViewFactory
, if that factory implements DefaultEntityViewFactory
there can be multiple processors that modify the resulting view.- Author:
- Arne Vandamme
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionvoid
authorizeRequest
(EntityViewRequest entityViewRequest) Verify theEntityViewRequest
is valid for this factory.void
doControl
(EntityViewRequest entityViewRequest, EntityView entityView, EntityViewCommand command) Called afterpreProcess(EntityViewRequest, EntityView)
but before any rendering.void
initializeCommandObject
(EntityViewRequest entityViewRequest, EntityViewCommand command, org.springframework.web.bind.WebDataBinder dataBinder) Initialize theEntityViewCommand
for the given request.void
postProcess
(EntityViewRequest entityViewRequest, EntityView entityView) Post-process the createdEntityView
after control and render have completed.void
postRender
(EntityViewRequest entityViewRequest, EntityView entityView) Called afterrender(EntityViewRequest, EntityView)
but only if rendering happened.void
prepareEntityViewContext
(ConfigurableEntityViewContext entityViewContext) Apply possible factory modifications to theConfigurableEntityViewContext
.void
preProcess
(EntityViewRequest entityViewRequest, EntityView entityView) Pre-process the createdEntityView
before any of the control or rendering methods are called.void
preRender
(EntityViewRequest entityViewRequest, EntityView entityView) Called afterdoControl(EntityViewRequest, EntityView, com.foreach.across.modules.entity.views.request.EntityViewCommand)
but only if rendering is supposed to happen.void
render
(EntityViewRequest entityViewRequest, EntityView entityView)
-
Method Details
-
prepareEntityViewContext
Apply possible factory modifications to theConfigurableEntityViewContext
. Call this method before creating anEntityViewRequest
that uses the context. This method is called first, beforeauthorizeRequest(EntityViewRequest)
in the default view rendering.- Parameters:
entityViewContext
- to modify
-
authorizeRequest
Verify theEntityViewRequest
is valid for this factory. This usually means things like performing security checks and checking all individual properties are valid. Any invalid requests are expected to throw the most relevant exceptions. Called afterprepareEntityViewContext(ConfigurableEntityViewContext)
but before initializing the command object.- Parameters:
entityViewRequest
- request to validate
-
initializeCommandObject
void initializeCommandObject(EntityViewRequest entityViewRequest, EntityViewCommand command, org.springframework.web.bind.WebDataBinder dataBinder) Initialize theEntityViewCommand
for the given request. Optionally configure theWebDataBinder
that will be used to bind the command object.- Parameters:
entityViewRequest
- requestcommand
- objectdataBinder
- to bind the web request to the command
-
preProcess
Pre-process the createdEntityView
before any of the control or rendering methods are called.- Parameters:
entityViewRequest
- requestentityView
- model and view
-
doControl
void doControl(EntityViewRequest entityViewRequest, EntityView entityView, EntityViewCommand command) Called afterpreProcess(EntityViewRequest, EntityView)
but before any rendering.- Parameters:
entityViewRequest
- requestentityView
- model and viewcommand
- object for the request
-
preRender
Called afterdoControl(EntityViewRequest, EntityView, com.foreach.across.modules.entity.views.request.EntityViewCommand)
but only if rendering is supposed to happen.- Parameters:
entityViewRequest
- requestentityView
- model and view- See Also:
-
render
Called afterdoControl(EntityViewRequest, EntityView, com.foreach.across.modules.entity.views.request.EntityViewCommand)
.- Parameters:
entityViewRequest
- requestentityView
- model and view- See Also:
-
postRender
Called afterrender(EntityViewRequest, EntityView)
but only if rendering happened.- Parameters:
entityViewRequest
- requestentityView
- model and view- See Also:
-
postProcess
Post-process the createdEntityView
after control and render have completed. This method will always be called, even if render was skipped.- Parameters:
entityViewRequest
- requestentityView
- model and view
-