com.randomcoder.article.comment
Class AbstractCommentStatusController

java.lang.Object
  extended by org.springframework.context.support.ApplicationObjectSupport
      extended by org.springframework.web.context.support.WebApplicationObjectSupport
          extended by org.springframework.web.servlet.support.WebContentGenerator
              extended by org.springframework.web.servlet.mvc.AbstractController
                  extended by org.springframework.web.servlet.mvc.BaseCommandController
                      extended by org.springframework.web.servlet.mvc.AbstractCommandController
                          extended by com.randomcoder.article.comment.AbstractCommentStatusController
All Implemented Interfaces:
org.springframework.context.ApplicationContextAware, org.springframework.web.context.ServletContextAware, org.springframework.web.servlet.mvc.Controller
Direct Known Subclasses:
CommentApproveController, CommentDeleteController, CommentDisapproveController

public abstract class AbstractCommentStatusController
extends org.springframework.web.servlet.mvc.AbstractCommandController

Abstract base class for controllers which modify a comment's status.

 Copyright (c) 2007, Craig Condit. All rights reserved.
 
 Redistribution and use in source and binary forms, with or without
 modification, are permitted provided that the following conditions are met:
 
   * Redistributions of source code must retain the above copyright notice,
     this list of conditions and the following disclaimer.
   * Redistributions in binary form must reproduce the above copyright notice,
     this list of conditions and the following disclaimer in the documentation
     and/or other materials provided with the distribution.
     
 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
 LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 POSSIBILITY OF SUCH DAMAGE.
 


Field Summary
protected  ArticleBusiness articleBusiness
          ArticleBusiness implementation.
 
Fields inherited from class org.springframework.web.servlet.mvc.BaseCommandController
DEFAULT_COMMAND_NAME
 
Fields inherited from class org.springframework.web.servlet.support.WebContentGenerator
METHOD_GET, METHOD_HEAD, METHOD_POST
 
Fields inherited from class org.springframework.context.support.ApplicationObjectSupport
logger
 
Constructor Summary
AbstractCommentStatusController()
           
 
Method Summary
 org.springframework.web.servlet.ModelAndView handle(HttpServletRequest request, HttpServletResponse response, Object command, org.springframework.validation.BindException errors)
          Updates the selected comment, and redirects back to permalink page for the associated article.
 void setArticleBusiness(ArticleBusiness articleBusiness)
          Sets the ArticleBusiness implementation to use.
protected abstract  Article updateCommentStatus(IdCommand command)
          Updates the selected comment.
 
Methods inherited from class org.springframework.web.servlet.mvc.AbstractCommandController
handleRequestInternal
 
Methods inherited from class org.springframework.web.servlet.mvc.BaseCommandController
bindAndValidate, checkCommand, createBinder, createCommand, getBindingErrorProcessor, getCommand, getCommandClass, getCommandName, getMessageCodesResolver, getPropertyEditorRegistrars, getValidator, getValidators, initApplicationContext, initBinder, isValidateOnBinding, onBind, onBind, onBindAndValidate, prepareBinder, setBindingErrorProcessor, setCommandClass, setCommandName, setMessageCodesResolver, setPropertyEditorRegistrar, setPropertyEditorRegistrars, setValidateOnBinding, setValidator, setValidators, suppressBinding, suppressValidation, suppressValidation, suppressValidation, useDirectFieldAccess
 
Methods inherited from class org.springframework.web.servlet.mvc.AbstractController
handleRequest, isSynchronizeOnSession, setSynchronizeOnSession
 
Methods inherited from class org.springframework.web.servlet.support.WebContentGenerator
applyCacheSeconds, applyCacheSeconds, cacheForSeconds, cacheForSeconds, checkAndPrepare, checkAndPrepare, getCacheSeconds, getSupportedMethods, isRequireSession, isUseCacheControlHeader, isUseExpiresHeader, preventCaching, setCacheSeconds, setRequireSession, setSupportedMethods, setUseCacheControlHeader, setUseExpiresHeader
 
Methods inherited from class org.springframework.web.context.support.WebApplicationObjectSupport
getServletContext, getTempDir, getWebApplicationContext, isContextRequired, setServletContext
 
Methods inherited from class org.springframework.context.support.ApplicationObjectSupport
getApplicationContext, getMessageSourceAccessor, requiredContextClass, setApplicationContext
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

articleBusiness

protected ArticleBusiness articleBusiness
ArticleBusiness implementation.

Constructor Detail

AbstractCommentStatusController

public AbstractCommentStatusController()
Method Detail

setArticleBusiness

public final void setArticleBusiness(ArticleBusiness articleBusiness)
Sets the ArticleBusiness implementation to use.

Parameters:
articleBusiness - ArticleBusiness implementation

handle

public final org.springframework.web.servlet.ModelAndView handle(HttpServletRequest request,
                                                                 HttpServletResponse response,
                                                                 Object command,
                                                                 org.springframework.validation.BindException errors)
                                                          throws Exception
Updates the selected comment, and redirects back to permalink page for the associated article.

Specified by:
handle in class org.springframework.web.servlet.mvc.AbstractCommandController
Parameters:
request - HTTP request
response - HTTP response
command - command object
errors - error object
Returns:
redirect view pointing to the associated article's permalink page
Throws:
Exception - if an error occurs

updateCommentStatus

protected abstract Article updateCommentStatus(IdCommand command)
                                        throws Exception
Updates the selected comment.

Parameters:
command - Command object containing the ID to update
Returns:
Article to update
Throws:
Exception - if an error occurs


Copyright © 2006-2008 Craig Condit. All Rights Reserved.