dgraham 2003/08/16 10:59:34
Modified: src/tiles-documentation/org/apache/struts/webapp/tiles/rssChannel
Channels.java
Log:
Formatted and replaced hardcoded debugging with commons logging.
Revision Changes Path
1.5 +73 -73
jakarta-struts/src/tiles-documentation/org/apache/struts/webapp/tiles/rssChannel/Channels.java
Index: Channels.java
===================================================================
RCS file:
/home/cvs/jakarta-struts/src/tiles-documentation/org/apache/struts/webapp/tiles/rssChannel/Channels.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- Channels.java 4 May 2003 22:41:12 -0000 1.4
+++ Channels.java 16 Aug 2003 17:59:34 -0000 1.5
@@ -7,7 +7,7 @@
*
* The Apache Software License, Version 1.1
*
- * Copyright (c) 1999-2002 The Apache Software Foundation. All rights
+ * Copyright (c) 1999-2003 The Apache Software Foundation. All rights
* reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -93,45 +93,43 @@
*/
public final class Channels extends Action {
+ /**
+ * Commons Logging instance.
+ */
+ private static Log log = LogFactory.getLog(Channels.class);
- /** Commons Logging instance.*/
- protected static Log log = LogFactory.getLog(Channels.class);
- /** Debug flag */
- public static final boolean debug = true;
/**
* Tile attribute key for saving Channel bean
*/
public static final String CHANNELS_KEY = "CHANNELS";
+
/**
* Tile attribute key for getting Channel urls list
*/
public static final String CHANNEL_URLS_KEY = "urls";
+
/**
* Tile attribute key for getting Channel url attribute
*/
public static final String CHANNEL_URL_KEY = "url";
- // --------------------------------------------------------- Instances Variables
- // --------------------------------------------------------- Public Methods
-
/**
* Main process of class. Reads, parses
*/
- public ActionForward perform(ActionMapping mapping,
- ActionForm form,
- HttpServletRequest request,
- HttpServletResponse response)
+ public ActionForward perform(
+ ActionMapping mapping,
+ ActionForm form,
+ HttpServletRequest request,
+ HttpServletResponse response)
throws IOException, ServletException {
- if(debug)
- System.out.println( "Enter Rss Channel Action" );
+ log.debug("Enter Rss Channel Action");
- // Try to retrieve tile context
- ComponentContext context = ComponentContext.getContext( request );
- if( context == null )
- {
- throw new ServletException( "This action must be called by a Tile, not
directly" );
- }
+ // Try to retrieve tile context
+ ComponentContext context = ComponentContext.getContext(request);
+ if (context == null) {
+ throw new ServletException("This action must be called by a Tile, not
directly");
+ }
ActionErrors errors = new ActionErrors();
org.apache.commons.digester.rss.Channel channel = null;
@@ -139,78 +137,80 @@
// -- Retrieve parameters --
// Urls can come from a list, or from a single attribute.
- List channels = (List)context.getAttribute( CHANNEL_URLS_KEY );
- if( channels == null )
- {
- Object url = context.getAttribute( CHANNEL_URL_KEY );
- channels = new ArrayList(1);
- channels.add(url);
- }
- //channels.add("http://www.newsforge.com/newsforge.rss");
- //channels.add("http://xmlhack.com/rss.php");
- //channels.add("http://lwn.net/headlines/rss");
- // channels.trimToSize();
+ List channels = (List) context.getAttribute(CHANNEL_URLS_KEY);
+ if (channels == null) {
+ Object url = context.getAttribute(CHANNEL_URL_KEY);
+ channels = new ArrayList(1);
+ channels.add(url);
+ }
+
+ log.debug("urls count" + channels.size());
- if(debug)
- System.out.println( "urls count" + channels.size() ) ;
// -- Loop through channels --
ArrayList channelBeans = new ArrayList(channels.size());
try {
- for (int i=0; i<channels.size(); i++) {
+ for (int i = 0; i < channels.size(); i++) {
RSSDigester digester = new RSSDigester();
- String url = (String)channels.get(i);
- // Add application path if needed
- if( url.startsWith("/") )
- {
- url = toFullUrl( request, url );
- }
- if(debug) System.out.println( "Channel url=" + url) ;
- Channel obj = (Channel)digester.parse(url);
- if(debug) System.out.println( "Channel:" + obj) ;
- //System.out.println( "Channel.items:" + obj.getI) ;
+ String url = (String) channels.get(i);
+ // Add application path if needed
+ if (url.startsWith("/")) {
+ url = toFullUrl(request, url);
+ }
+
+ log.debug("Channel url=" + url);
+
+ Channel obj = (Channel) digester.parse(url);
+
+ log.debug("Channel:" + obj);
+
channelBeans.add(obj);
}
- }
- catch (Throwable t) {
- errors.add(ActionErrors.GLOBAL_ERROR,
+ } catch (Throwable t) {
+ errors.add(
+ ActionErrors.GLOBAL_ERROR,
new ActionError("rss.access.error"));
+
servlet.log(t.toString());
}
// -- Handle Errors ---
if (!errors.isEmpty()) {
saveErrors(request, errors);
- if (mapping.getInput()!=null)
- return (new ActionForward(mapping.getInput()));
+
+ if (mapping.getInput() != null) {
+ return new ActionForward(mapping.getInput());
+ }
+
// If no input page, use error forwarding
- if(debug)
- System.out.println( "Exit Rss Channel Action : error" );
+
+ log.debug("Exit Rss Channel Action : error");
+
return (mapping.findForward("error"));
}
// -- Save Bean, and Continue ---
- if(debug)
- System.out.println( "Exit Rss Channel Action" );
- //request.setAttribute(CHANNELS_KEY,channelBeans);
- // Use Tile context to pass channels
- context.putAttribute( CHANNELS_KEY,channelBeans);
- return (mapping.findForward("continue"));
- } // ---- End perform ----
-
- private String toFullUrl( HttpServletRequest request, String url )
- {
- StringBuffer buff = new StringBuffer();
-
- buff.append( request.getScheme() ) .append( "://" ) .
append(request.getServerName());
- if( request.getServerPort() != 80 )
- buff.append( ":" ).append( request.getServerPort() );
- buff.append( request.getContextPath()).append( url);
- return buff.toString();
+ log.debug("Exit Rss Channel Action");
+
+ // Use Tile context to pass channels
+ context.putAttribute(CHANNELS_KEY, channelBeans);
+
+ return mapping.findForward("continue");
}
-} // ---- End Fetch ----
+ private String toFullUrl(HttpServletRequest request, String url) {
+ StringBuffer buff = new StringBuffer();
+ buff.append(request.getScheme()).append("://").append(
+ request.getServerName());
+ if (request.getServerPort() != 80) {
+ buff.append(":").append(request.getServerPort());
+ }
+ buff.append(request.getContextPath()).append(url);
+
+ return buff.toString();
+ }
+}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]