struts-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From dgra...@apache.org
Subject cvs commit: jakarta-struts/src/share/org/apache/struts/taglib/tiles InsertTag.java
Date Tue, 18 Mar 2003 02:42:59 GMT
dgraham     2003/03/17 18:42:59

  Modified:    src/share/org/apache/struts/taglib/tiles InsertTag.java
  Log:
  Formatting changes only (in preparation of bug fix).
  
  Revision  Changes    Path
  1.13      +168 -98   jakarta-struts/src/share/org/apache/struts/taglib/tiles/InsertTag.java
  
  Index: InsertTag.java
  ===================================================================
  RCS file: /home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/tiles/InsertTag.java,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- InsertTag.java	8 Mar 2003 19:23:49 -0000	1.12
  +++ InsertTag.java	18 Mar 2003 02:42:59 -0000	1.13
  @@ -83,10 +83,10 @@
   import org.apache.struts.tiles.DefinitionAttribute;
   import org.apache.struts.tiles.DefinitionNameAttribute;
   import org.apache.struts.tiles.DefinitionsFactoryException;
  -import org.apache.struts.tiles.TilesUtil;
   import org.apache.struts.tiles.DirectStringAttribute;
   import org.apache.struts.tiles.FactoryNotFoundException;
   import org.apache.struts.tiles.NoSuchDefinitionException;
  +import org.apache.struts.tiles.TilesUtil;
   
   /**
    * This is the tag handler for <tiles:insert>, which includes
  @@ -97,7 +97,9 @@
    * @author Cedric Dumoulin
    * @version $Revision$ $Date$
    */
  -public class InsertTag extends DefinitionTagSupport implements PutTagParent, ComponentConstants,
PutListTagParent {
  +public class InsertTag
  +    extends DefinitionTagSupport
  +    implements PutTagParent, ComponentConstants, PutListTagParent {
   
       /** Commons Logging instance. */
       protected static Log log = LogFactory.getLog(InsertTag.class);
  @@ -346,7 +348,7 @@
               && !((HttpServletRequest) pageContext.getRequest()).isUserInRole(
                   role)) { // not allowed : skip attribute
               return;
  -        } // end if
  +        }
   
           putAttribute(nestedTag.getName(), nestedTag.getRealValue());
       }
  @@ -364,11 +366,12 @@
               && !((HttpServletRequest) pageContext.getRequest()).isUserInRole(
                   role)) { // not allowed : skip attribute
               return;
  -        } // end if
  +        }
   
           // Check if a name is defined
  -        if (nestedTag.getName() == null)
  +        if (nestedTag.getName() == null) {
               throw new JspException("Error - PutList : attribute name is not defined. It
is mandatory as the list is added as attribute of 'insert'.");
  +        }
           // now add attribute to enclosing parent (i.e. : this object).
           putAttribute(nestedTag.getName(), nestedTag.getList());
       }
  @@ -384,7 +387,7 @@
               && !((HttpServletRequest) pageContext.getRequest()).isUserInRole(
                   role)) { // not allowed : skip attribute
               return;
  -        } // end if
  +        }
   
           putAttribute(nestedTag.getName(), nestedTag.getList());
       }
  @@ -413,7 +416,9 @@
               return null;
           }
           try {
  -            return ComponentDefinition.createController(controllerName, controllerType);
  +            return ComponentDefinition.createController(
  +                controllerName,
  +                controllerType);
           } catch (InstantiationException ex) {
               throw new JspException(ex.getMessage());
           }
  @@ -428,16 +433,16 @@
        * <li> direct String
        * </ul>
        * Handlers also contain sub-component context.
  -     *
        */
       public int doStartTag() throws JspException {
           // Check role immediatly to avoid useless stuff.
           // In case of insertion of a "definition", definition's role still checked later.
           // This lead to a double check of "role" ;-(
  -        if (role != null && !((HttpServletRequest) pageContext.getRequest()).isUserInRole(role))
{
  +        if (role != null
  +            && !((HttpServletRequest) pageContext.getRequest()).isUserInRole(role))
{
               processEndTag = false;
               return SKIP_BODY;
  -        } // end if
  +        }
   
           // Now, real stuff
           try {
  @@ -503,8 +508,10 @@
           if (value instanceof AttributeDefinition) {
               // We have a type => return appropriate IncludeType
               return processTypedAttribute((AttributeDefinition) value);
  -        } else if (value instanceof ComponentDefinition)
  +            
  +        } else if (value instanceof ComponentDefinition) {
               return processDefinition((ComponentDefinition) value);
  +        }
   
           // Value must denote a valid String
           return processAsDefinitionOrURL(value.toString());
  @@ -526,8 +533,9 @@
       public TagHandler processName(String name) throws JspException {
           Object attrValue = getCurrentContext().getAttribute(name);
   
  -        if (attrValue != null)
  +        if (attrValue != null) {
               return processObjectValue(attrValue);
  +        }
   
           return processAsDefinitionOrURL(name);
       }
  @@ -552,39 +560,49 @@
        */
       protected TagHandler processDefinitionName(String name) throws JspException {
   
  -    try {
  -        ComponentDefinition definition = TilesUtil.getDefinition(name, (HttpServletRequest)pageContext.getRequest(),pageContext.getServletContext());
  -        if (definition == null) { // is it possible ?
  -            throw new NoSuchDefinitionException();
  -        }
  -        return processDefinition(definition);
  -
  -    } catch (NoSuchDefinitionException ex) {
  -        throw new JspException(
  -            "Error -  Tag Insert : Can't get definition '"
  -                + definitionName
  -                + "'. Check if this name exist in definitions factory.");
  -    } catch (FactoryNotFoundException ex) { // factory not found.
  -        throw new JspException(ex.getMessage());
  -    } // end catch
  -    catch (DefinitionsFactoryException ex) {
  -        if (log.isDebugEnabled())
  -            ex.printStackTrace();
  -        // Save exception to be able to show it later
  -        pageContext.setAttribute(Globals.EXCEPTION_KEY, ex, PageContext.REQUEST_SCOPE);
  -        throw new JspException(ex.getMessage());
  -    } // end catch
  +        try {
  +            ComponentDefinition definition =
  +                TilesUtil.getDefinition(
  +                    name,
  +                    (HttpServletRequest) pageContext.getRequest(),
  +                    pageContext.getServletContext());
  +                    
  +            if (definition == null) { // is it possible ?
  +                throw new NoSuchDefinitionException();
  +            }
  +            return processDefinition(definition);
  +
  +        } catch (NoSuchDefinitionException ex) {
  +            throw new JspException(
  +                "Error -  Tag Insert : Can't get definition '"
  +                    + definitionName
  +                    + "'. Check if this name exist in definitions factory.");
  +        } catch (FactoryNotFoundException ex) {
  +            throw new JspException(ex.getMessage());
  +            
  +        } catch (DefinitionsFactoryException ex) {
  +            if (log.isDebugEnabled()) {
  +                ex.printStackTrace();
  +            }
  +            // Save exception to be able to show it later
  +            pageContext.setAttribute(
  +                Globals.EXCEPTION_KEY,
  +                ex,
  +                PageContext.REQUEST_SCOPE);
  +            throw new JspException(ex.getMessage());
  +        }
       }
   
       /**
        * End of Process tag attribute "definition".
  -    * Overload definition with tag attributes "template" and "role".
  -    * Then, create appropriate tag handler.
  +     * Overload definition with tag attributes "template" and "role".
  +     * Then, create appropriate tag handler.
        * @param definition Definition to process.
        * @return Appropriate TagHandler.
  -    * @throws JspException InstantiationException Can't create requested controller
  +     * @throws JspException InstantiationException Can't create requested controller
        */
  -    protected TagHandler processDefinition(ComponentDefinition definition) throws JspException
{
  +    protected TagHandler processDefinition(ComponentDefinition definition)
  +        throws JspException {
           // Declare local variable in order to not change Tag attribute values.
           String role = this.role;
           String page = this.page;
  @@ -594,15 +612,25 @@
               controller = definition.getOrCreateController();
   
               // Overload definition with tag's template and role.
  -            if (role == null)
  +            if (role == null) {
                   role = definition.getRole();
  -            if (page == null)
  +            }
  +            if (page == null) {
                   page = definition.getTemplate();
  -            if (controllerName != null)
  -                controller = ComponentDefinition.createController(controllerName, controllerType);
  +            }
  +            if (controllerName != null) {
  +                controller =
  +                    ComponentDefinition.createController(
  +                        controllerName,
  +                        controllerType);
  +            }
   
               // Can check if page is set
  -            return new InsertHandler(definition.getAttributes(), page, role, controller);
  +            return new InsertHandler(
  +                definition.getAttributes(),
  +                page,
  +                role,
  +                controller);
           } catch (InstantiationException ex) {
               throw new JspException(ex.getMessage());
           }
  @@ -616,13 +644,22 @@
        * @param beanScope bean scope, or null.
        * @return Appropriate TagHandler.
        * @throws JspException - NoSuchDefinitionException No value associated to bean.
  -    * @throws JspException an error occur while reading bean, or no definition found.
  -    * @throws JspException - Throws by underlying nested call to processDefinitionName()
  +     * @throws JspException an error occur while reading bean, or no definition found.
  +     * @throws JspException - Throws by underlying nested call to processDefinitionName()
        */
  -    protected TagHandler processBean(String beanName, String beanProperty, String beanScope)
  +    protected TagHandler processBean(
  +        String beanName,
  +        String beanProperty,
  +        String beanScope)
           throws JspException {
  +
           Object beanValue =
  -            TagUtils.getRealValueFromBean(beanName, beanProperty, beanScope, pageContext);
  +            TagUtils.getRealValueFromBean(
  +                beanName,
  +                beanProperty,
  +                beanScope,
  +                pageContext);
  +
           if (beanValue == null) {
               //throw new NoSuchDefinitionException();
               throw new JspException(
  @@ -633,7 +670,7 @@
                       + "' in scope '"
                       + beanScope
                       + "'.");
  -        } // end if
  +        }
           return processObjectValue(beanValue);
       }
   
  @@ -649,9 +686,10 @@
       public TagHandler processAttribute(String name) throws JspException {
           Object attrValue = getCurrentContext().getAttribute(name);
   
  -        if (attrValue == null)
  +        if (attrValue == null) {
               throw new JspException(
                   "Error - Tag Insert : No value found for attribute '" + name + "'.");
  +        }
           return processObjectValue(attrValue);
       }
   
  @@ -663,10 +701,16 @@
        */
       public TagHandler processAsDefinitionOrURL(String name) throws JspException {
           try {
  -            ComponentDefinition definition = TilesUtil.getDefinition(name, pageContext.getRequest(),
pageContext.getServletContext());
  -            if (definition != null)
  +            ComponentDefinition definition =
  +                TilesUtil.getDefinition(
  +                    name,
  +                    pageContext.getRequest(),
  +                    pageContext.getServletContext());
  +            if (definition != null) {
                   return processDefinition(definition);
  -        } catch (DefinitionsFactoryException ex) { // silently failed, because we can choose
to not define a factory.
  +            }
  +        } catch (DefinitionsFactoryException ex) {
  +            // silently failed, because we can choose to not define a factory.
           }
           // no definition found, try as url
           return processUrl(name);
  @@ -678,14 +722,15 @@
        * @return appropriate TagHandler.
       * @throws JspException - Throws by underlying nested call to processDefinitionName()
        */
  -    public TagHandler processTypedAttribute(AttributeDefinition value) throws JspException
{
  -        if (value instanceof DirectStringAttribute)
  +    public TagHandler processTypedAttribute(AttributeDefinition value)
  +        throws JspException {
  +        if (value instanceof DirectStringAttribute) {
               return new DirectStringHandler((String) value.getValue());
   
  -        else if (value instanceof DefinitionAttribute)
  +        } else if (value instanceof DefinitionAttribute) {
               return processDefinition((ComponentDefinition) value.getValue());
   
  -        else if (value instanceof DefinitionNameAttribute) {
  +        } else if (value instanceof DefinitionNameAttribute) {
               return processDefinitionName((String) value.getValue());
           }
           //else if( value instanceof PathAttribute )
  @@ -699,17 +744,17 @@
        * @throws IOException - Thrown by call to pageContext.include()
        */
       protected void doInclude(String page) throws ServletException, IOException {
  -        TilesUtil.doInclude( page,
  -                        (HttpServletRequest)pageContext.getRequest(),
  -                        (HttpServletResponse)pageContext.getResponse(),
  -                        pageContext.getServletContext());
  +        TilesUtil.doInclude(
  +            page,
  +            (HttpServletRequest) pageContext.getRequest(),
  +            (HttpServletResponse) pageContext.getResponse(),
  +            pageContext.getServletContext());
       }
   
  -
       /////////////////////////////////////////////////////////////////////////////
   
       /**
  -    * Inner Interface.
  +     * Inner Interface.
        * Sub handler for tag.
        */
       protected interface TagHandler {
  @@ -744,7 +789,12 @@
            * Constructor.
            * Create insert handler using Component definition.
            */
  -        public InsertHandler(Map attributes, String page, String role, Controller controller)
{
  +        public InsertHandler(
  +            Map attributes,
  +            String page,
  +            String role,
  +            Controller controller) {
  +                
               this.page = page;
               this.role = role;
               this.controller = controller;
  @@ -768,9 +818,10 @@
           public int doStartTag() throws JspException {
               // Check role
               if (role != null
  -                && !((HttpServletRequest) pageContext.getRequest()).isUserInRole(role))
{
  +                && !((HttpServletRequest) pageContext.getRequest()).isUserInRole(
  +                    role)) {
                   return SKIP_BODY;
  -            } // end if
  +            }
   
               // save current context
               this.currentContext = getCurrentContext();
  @@ -791,35 +842,43 @@
           public int doEndTag() throws JspException {
               // Check role
               if (role != null
  -                && !((HttpServletRequest) pageContext.getRequest()).isUserInRole(role))
{
  +                && !((HttpServletRequest) pageContext.getRequest()).isUserInRole(
  +                    role)) {
                   return EVAL_PAGE;
  -            } // end if
  +            }
   
               try {
  -                if (log.isDebugEnabled())
  +                if (log.isDebugEnabled()) {
                       log.debug("insert page='" + page + "'.");
  +                }
   
                   // set new context for included component.
                   pageContext.setAttribute(
                       ComponentConstants.COMPONENT_CONTEXT,
                       subCompContext,
                       PageContext.REQUEST_SCOPE);
  +
                   // Call controller if any
  -                if (controller != null)
  +                if (controller != null) {
                       controller.perform(
                           subCompContext,
                           (HttpServletRequest) pageContext.getRequest(),
                           (HttpServletResponse) pageContext.getResponse(),
                           pageContext.getServletContext());
  +                }
  +
                   // include requested component.
  -                if (flush)
  +                if (flush) {
                       pageContext.getOut().flush();
  +                }
                   doInclude(page);
               } catch (IOException ex) {
  -                processException(ex, "Can't insert page '" + page + "' : " + ex.getMessage());
  +                processException(
  +                    ex,
  +                    "Can't insert page '" + page + "' : " + ex.getMessage());
               } catch (IllegalArgumentException ex) { // Can't resolve page uri
                   // Do we ignore bad page uri errors ?
  -                if (!(page == null && isErrorIgnored))
  +                if (!(page == null && isErrorIgnored)) {
                       // Don't ignore bad page uri errors
                       processException(
                           ex,
  @@ -827,6 +886,7 @@
                               + page
                               + "'. Check if it exists.\n"
                               + ex.getMessage());
  +                }
               } catch (ServletException ex) {
                   Throwable realEx = ex;
                   if (ex.getRootCause() != null) {
  @@ -834,20 +894,28 @@
                   }
                   processException(
                       realEx,
  -                    "[ServletException in:" + page + "] " + realEx.getMessage() + "'");
  +                    "[ServletException in:"
  +                        + page
  +                        + "] "
  +                        + realEx.getMessage()
  +                        + "'");
               } catch (Exception ex) {
  -                processException(ex, "[Exception in:" + page + "] " + ex.getMessage());
  +                processException(
  +                    ex,
  +                    "[Exception in:" + page + "] " + ex.getMessage());
               } finally {
                   // restore old context
                   // done only if currentContext not null (bug with Silverstream ?; related
by Arvindra Sehmi 20010712)
  -                if (currentContext != null)
  +                if (currentContext != null) {
                       pageContext.setAttribute(
                           ComponentConstants.COMPONENT_CONTEXT,
                           currentContext,
                           PageContext.REQUEST_SCOPE);
  +                }
               }
               return EVAL_PAGE;
           }
  +
           /**
            * Process an exception.
            * Depending of debug attribute, print full exception trace or only
  @@ -855,18 +923,19 @@
            * @param ex Exception
            * @param msg An additional message to show in console and to propagate if we can't
output exception.
            */
  -        protected void processException(Throwable ex, String msg) throws JspException {
  +        protected void processException(Throwable ex, String msg)
  +            throws JspException {
               try {
  -                if (msg == null)
  +                if (msg == null) {
                       msg = ex.getMessage();
  -
  +                }
                   if (log.isDebugEnabled()) { // show full trace
                       log.debug(msg, ex);
                       pageContext.getOut().println(msg);
                       ex.printStackTrace(new PrintWriter(pageContext.getOut(), true));
                   } else { // show only message
                       pageContext.getOut().println(msg);
  -                } // end if
  +                }
               } catch (IOException ioex) { // problems. Propagate original exception
                   pageContext.setAttribute(
                       ComponentConstants.EXCEPTION_KEY,
  @@ -883,18 +952,16 @@
        * @param role Comma-delimited list of roles.
        * @param request The request.
        */
  -  static public boolean userHasRole(HttpServletRequest request, String role)
  -  {
  -  StringTokenizer st = new StringTokenizer(role, ROLE_DELIMITER, false);
  -  while( st.hasMoreTokens())
  -   {
  -   if(request.isUserInRole(st.nextToken()))
  -     return true;
  -   } // end loop
  -  return false;
  -  }
  +    static public boolean userHasRole(HttpServletRequest request, String role) {
  +        StringTokenizer st = new StringTokenizer(role, ROLE_DELIMITER, false);
  +        while (st.hasMoreTokens()) {
  +            if (request.isUserInRole(st.nextToken()))
  +                return true;
  +        }
  +        return false;
  +    }
       /** The role delimiter. */
  -  static public final String ROLE_DELIMITER =",";
  +    static public final String ROLE_DELIMITER = ",";
   
       /////////////////////////////////////////////////////////////////////////////
   
  @@ -931,18 +998,21 @@
            */
           public int doEndTag() throws JspException {
               try {
  -                if (flush)
  +                if (flush) {
                       pageContext.getOut().flush();
  -
  +                }
                   pageContext.getOut().print(value);
  +
               } catch (IOException ex) {
  -                if (log.isDebugEnabled())
  +                if (log.isDebugEnabled()) {
                       log.debug("Can't write string '" + value + "' : ", ex);
  +                }
                   pageContext.setAttribute(
                       ComponentConstants.EXCEPTION_KEY,
                       ex,
                       PageContext.REQUEST_SCOPE);
  -                throw new JspException("Can't write string '" + value + "' : " + ex.getMessage());
  +                throw new JspException(
  +                    "Can't write string '" + value + "' : " + ex.getMessage());
               }
               return EVAL_PAGE;
           }
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: struts-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: struts-dev-help@jakarta.apache.org


Mime
View raw message