vgritsenko 02/01/24 19:49:57
Modified: src/java/org/apache/cocoon/sitemap Handler.java Manager.java
SitemapManager.java
Log:
formatting
Revision Changes Path
1.4 +5 -6 xml-cocoon2/src/java/org/apache/cocoon/sitemap/Handler.java
Index: Handler.java
===================================================================
RCS file: /home/cvs/xml-cocoon2/src/java/org/apache/cocoon/sitemap/Handler.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- Handler.java 19 Jan 2002 00:49:49 -0000 1.3
+++ Handler.java 25 Jan 2002 03:49:57 -0000 1.4
@@ -42,7 +42,7 @@
* @author <a href="mailto:[EMAIL PROTECTED]">Carsten Ziegeler</a>
* @author <a href="mailto:[EMAIL PROTECTED]">Giacomo Pati</a>
* @author <a href="mailto:[EMAIL PROTECTED]">Stefano Mazzocchi</a>
- * @version CVS $Revision: 1.3 $ $Date: 2002/01/19 00:49:49 $
+ * @version CVS $Revision: 1.4 $ $Date: 2002/01/25 03:49:57 $
*/
public class Handler extends AbstractLoggable
implements Runnable, Contextualizable, Composable, Processor, Disposable,
SourceResolver {
@@ -133,8 +133,12 @@
SourceHandler oldSourceHandler = environment.getSourceHandler();
try {
environment.setSourceHandler(this.sourceHandler);
+
+ if (this.source != null) this.source.recycle();
this.source = new DelayedRefreshSourceWrapper(
environment.resolve(this.sourceFileName), this.sitemapCheckDelay);
+
+ if (this.contextSource != null) this.contextSource.recycle();
this.contextSource = environment.resolve("");
} finally {
environment.setSourceHandler(oldSourceHandler);
@@ -144,20 +148,16 @@
regeneration = new Thread(this);
/* HACK for reducing class loader problems. */
-
/* example: xalan extensions fail if someone adds xalan jars in
tomcat3.2.1/lib */
-
try {
regeneration.setContextClassLoader(Thread.currentThread().getContextClassLoader());
} catch (Exception e) {
}
/* clear old exception if any */
-
this.exception = null;
/* start the thread */
-
regeneration.start();
}
}
@@ -298,5 +298,4 @@
.append(":").append(systemId).toString());
return this.sourceHandler.getSource(null, context, systemId);
}
-
}
1.3 +14 -29 xml-cocoon2/src/java/org/apache/cocoon/sitemap/Manager.java
Index: Manager.java
===================================================================
RCS file: /home/cvs/xml-cocoon2/src/java/org/apache/cocoon/sitemap/Manager.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- Manager.java 19 Jan 2002 00:50:44 -0000 1.2
+++ Manager.java 25 Jan 2002 03:49:57 -0000 1.3
@@ -35,7 +35,7 @@
* checking regeneration of the sub <code>Sitemap</code>
*
* @author <a href="mailto:[EMAIL PROTECTED]">Giacomo Pati</a>
- * @version CVS $Revision: 1.2 $ $Date: 2002/01/19 00:50:44 $
+ * @version CVS $Revision: 1.3 $ $Date: 2002/01/25 03:49:57 $
*/
public class Manager
extends AbstractLoggable
@@ -170,52 +170,37 @@
return false;
}
- /**
- * make sure the uri_prefix ends with a slash
- *
- * NOTE: Together 5 marks this as unused. If verified, we need to remove it.
- */
- /*
- private String getPrefix(String uri_prefix) {
- if (uri_prefix.length() > 0) {
- return ((uri_prefix.charAt(uri_prefix.length() - 1) == '/') ?
uri_prefix : uri_prefix + "/");
- } else {
- return uri_prefix;
- }
- }
- */
-
private Handler getHandler(final ComponentManager newManager, final Environment
environment, final String source, final boolean check_reload,
final boolean reload_asynchron) throws Exception {
Handler sitemapHandler = (Handler)sitemaps.get(source);
if (sitemapHandler != null) {
- // the following is a little bit complicated:
+ // The following is a little bit complicated:
// If the sitemap handler is not available, it is regenerated
// If it is available:
// The handler is only queried if it has changed if
// the check_reload flag is true
if (sitemapHandler.available()) {
if (check_reload && sitemapHandler.hasChanged()) {
- // the sitemap has changed.
- // In asynchron mode the first request entering this
- // starts the regeneration. All other request comming
- // in, use the old sitemap until the new is generated.
+ // The sitemap has been changed.
if (reload_asynchron) {
+ // In asynchron mode the first request entering this
+ // starts the regeneration. All other request comming
+ // in, use the old sitemap until the new is generated.
if (!sitemapHandler.isRegenerating()) {
- sitemapHandler.regenerateAsynchronously(environment);
+
sitemapHandler.regenerateAsynchronously(environment);
}
- // In synchron mode the first request starts the
- // regeneration, all other requests are blocked
- // until the regeneration is finished. This is done
- // by the synchronized statement
} else {
+ // In synchron mode the first request starts the
+ // regeneration, all other requests are blocked
+ // until the regeneration is finished. This is done
+ // by the synchronized statement
if (!sitemapHandler.isRegenerating()) {
synchronized (this) {
- sitemapHandler.regenerate(environment);
+ sitemapHandler.regenerate(environment);
}
} else {
synchronized (this) {
- // dummy statement
+ // Dummy statement
this.hashCode();
}
}
@@ -225,7 +210,7 @@
sitemapHandler.regenerate(environment);
}
} else {
- // also this looks a little bit strange, it should work
+ // Also this looks a little bit strange, it should work
// if no handler is available, the generation of the new
// handler is synchronized.
// The first incoming request creates the handler and blocks
1.4 +2 -2
xml-cocoon2/src/java/org/apache/cocoon/sitemap/SitemapManager.java
Index: SitemapManager.java
===================================================================
RCS file:
/home/cvs/xml-cocoon2/src/java/org/apache/cocoon/sitemap/SitemapManager.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- SitemapManager.java 22 Jan 2002 00:17:13 -0000 1.3
+++ SitemapManager.java 25 Jan 2002 03:49:57 -0000 1.4
@@ -38,7 +38,7 @@
* to Java code.
*
* @author <a href="mailto:[EMAIL PROTECTED]">Sylvain Wallez</a>
- * @version CVS $Revision: 1.3 $ $Date: 2002/01/22 00:17:13 $
+ * @version CVS $Revision: 1.4 $ $Date: 2002/01/25 03:49:57 $
*/
public class SitemapManager extends Manager implements Processor, Configurable {
@@ -92,7 +92,7 @@
getLogger().error("Could not configure Cocoon environment", e);
throw new ConfigurationException("Error trying to load configurations",
e);
} finally {
- this.manager.release(p);
+ if (p != null) this.manager.release(p);
}
DefaultRoleManager sitemapRoleManager = new DefaultRoleManager();
----------------------------------------------------------------------
In case of troubles, e-mail: [EMAIL PROTECTED]
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]