You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lenya.apache.org by an...@apache.org on 2008/02/09 01:16:52 UTC
svn commit: r620050 -
/lenya/trunk/src/modules/sitetree/java/src/org/apache/lenya/cms/cocoon/generation/SitetreeFragmentGenerator.java
Author: andreas
Date: Fri Feb 8 16:16:51 2008
New Revision: 620050
URL: http://svn.apache.org/viewvc?rev=620050&view=rev
Log:
Simplified validity generation in SitetreeFragmentGenerator (use provided resolver instead of looking up a new one).
Modified:
lenya/trunk/src/modules/sitetree/java/src/org/apache/lenya/cms/cocoon/generation/SitetreeFragmentGenerator.java
Modified: lenya/trunk/src/modules/sitetree/java/src/org/apache/lenya/cms/cocoon/generation/SitetreeFragmentGenerator.java
URL: http://svn.apache.org/viewvc/lenya/trunk/src/modules/sitetree/java/src/org/apache/lenya/cms/cocoon/generation/SitetreeFragmentGenerator.java?rev=620050&r1=620049&r2=620050&view=diff
==============================================================================
--- lenya/trunk/src/modules/sitetree/java/src/org/apache/lenya/cms/cocoon/generation/SitetreeFragmentGenerator.java (original)
+++ lenya/trunk/src/modules/sitetree/java/src/org/apache/lenya/cms/cocoon/generation/SitetreeFragmentGenerator.java Fri Feb 8 16:16:51 2008
@@ -80,6 +80,7 @@
private String path;
+ private String cacheKey;
private SourceValidity validity;
protected static final String PARAM_PUB = "pub";
@@ -169,6 +170,7 @@
this.getLogger().debug("Parameter areas: " + areasStr.toString());
}
+ Source source = null;
try {
Session session = RepositoryUtil.getSession(this.manager, request);
DocumentFactory factory = DocumentUtil.createDocumentFactory(this.manager, session);
@@ -192,10 +194,19 @@
"Path parameter not provided, no node for UUID and language found.");
}
}
+
+ this.cacheKey = pubId + "/" + area + this.path;
+ source = resolver.resolveURI(this.site.getRepositoryNode().getSourceURI());
+ this.validity = source.getValidity();
+
} catch (ProcessingException e) {
throw e;
} catch (Exception e) {
throw new ProcessingException("Could not create publication: ", e);
+ } finally {
+ if (source != null) {
+ resolver.release(source);
+ }
}
this.attributes = new AttributesImpl();
@@ -512,31 +523,15 @@
}
public Serializable getKey() {
- String s = ":";
- String pubId = this.site.getPublication().getId();
- String area = this.site.getArea();
- return pubId + s + area + this.path;
+ if (this.cacheKey == null) {
+ throw new IllegalStateException("setup() has not been called.");
+ }
+ return this.cacheKey;
}
public SourceValidity getValidity() {
if (this.validity == null) {
- String sourceUri = this.site.getRepositoryNode().getSourceURI();
- SourceResolver resolver = null;
- Source source = null;
- try {
- resolver = (SourceResolver) this.manager.lookup(SourceResolver.ROLE);
- source = resolver.resolveURI(sourceUri);
- this.validity = source.getValidity();
- } catch (Exception e) {
- throw new RuntimeException(e);
- } finally {
- if (resolver != null) {
- if (source != null) {
- resolver.release(source);
- }
- this.manager.release(resolver);
- }
- }
+ throw new IllegalStateException("setup() has not been called.");
}
return this.validity;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@lenya.apache.org
For additional commands, e-mail: commits-help@lenya.apache.org