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 2006/09/22 09:46:37 UTC
svn commit: r448853 - in /lenya/trunk/src/impl:
java/org/apache/lenya/cms/publication/PublicationConfiguration.java
java/org/apache/lenya/cms/publication/PublicationImpl.java
test/org/apache/lenya/cms/publication/PublicationTest.java
Author: andreas
Date: Fri Sep 22 00:46:36 2006
New Revision: 448853
URL: http://svn.apache.org/viewvc?view=rev&rev=448853
Log:
Moved resource type aggregation code from PublicationConfiguration to PublicationImpl, added test case
Modified:
lenya/trunk/src/impl/java/org/apache/lenya/cms/publication/PublicationConfiguration.java
lenya/trunk/src/impl/java/org/apache/lenya/cms/publication/PublicationImpl.java
lenya/trunk/src/impl/test/org/apache/lenya/cms/publication/PublicationTest.java
Modified: lenya/trunk/src/impl/java/org/apache/lenya/cms/publication/PublicationConfiguration.java
URL: http://svn.apache.org/viewvc/lenya/trunk/src/impl/java/org/apache/lenya/cms/publication/PublicationConfiguration.java?view=diff&rev=448853&r1=448852&r2=448853
==============================================================================
--- lenya/trunk/src/impl/java/org/apache/lenya/cms/publication/PublicationConfiguration.java (original)
+++ lenya/trunk/src/impl/java/org/apache/lenya/cms/publication/PublicationConfiguration.java Fri Sep 22 00:46:36 2006
@@ -461,21 +461,7 @@
*/
public String[] getResourceTypeNames() {
loadConfiguration();
-
- List allTypes = new ArrayList();
- allTypes.addAll(this.resourceTypes);
- String[] templateIds = getTemplateIds();
- try {
- for (int i = 0; i < templateIds.length; i++) {
- Publication template = getFactory().getPublication(templateIds[i]);
- String[] templateTypes = template.getResourceTypeNames();
- allTypes.addAll(Arrays.asList(templateTypes));
- }
- } catch (PublicationException e) {
- throw new RuntimeException(e);
- }
-
- return (String[]) allTypes.toArray(new String[allTypes.size()]);
+ return (String[]) this.resourceTypes.toArray(new String[this.resourceTypes.size()]);
}
public String toString() {
Modified: lenya/trunk/src/impl/java/org/apache/lenya/cms/publication/PublicationImpl.java
URL: http://svn.apache.org/viewvc/lenya/trunk/src/impl/java/org/apache/lenya/cms/publication/PublicationImpl.java?view=diff&rev=448853&r1=448852&r2=448853
==============================================================================
--- lenya/trunk/src/impl/java/org/apache/lenya/cms/publication/PublicationImpl.java (original)
+++ lenya/trunk/src/impl/java/org/apache/lenya/cms/publication/PublicationImpl.java Fri Sep 22 00:46:36 2006
@@ -18,6 +18,9 @@
package org.apache.lenya.cms.publication;
import java.io.File;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
import org.apache.avalon.framework.logger.AbstractLogEnabled;
import org.apache.avalon.framework.service.ServiceManager;
@@ -96,7 +99,21 @@
}
public String[] getResourceTypeNames() {
- return delegate.getResourceTypeNames();
+
+ List allTypes = new ArrayList();
+ allTypes.addAll(Arrays.asList(this.delegate.getResourceTypeNames()));
+ String[] templateIds = getTemplateIds();
+ try {
+ for (int i = 0; i < templateIds.length; i++) {
+ Publication template = getFactory().getPublication(templateIds[i]);
+ String[] templateTypes = template.getResourceTypeNames();
+ allTypes.addAll(Arrays.asList(templateTypes));
+ }
+ } catch (PublicationException e) {
+ throw new RuntimeException(e);
+ }
+
+ return (String[]) allTypes.toArray(new String[allTypes.size()]);
}
public File getServletContext() {
Modified: lenya/trunk/src/impl/test/org/apache/lenya/cms/publication/PublicationTest.java
URL: http://svn.apache.org/viewvc/lenya/trunk/src/impl/test/org/apache/lenya/cms/publication/PublicationTest.java?view=diff&rev=448853&r1=448852&r2=448853
==============================================================================
--- lenya/trunk/src/impl/test/org/apache/lenya/cms/publication/PublicationTest.java (original)
+++ lenya/trunk/src/impl/test/org/apache/lenya/cms/publication/PublicationTest.java Fri Sep 22 00:46:36 2006
@@ -18,6 +18,8 @@
import java.io.File;
import java.util.Arrays;
+import java.util.HashSet;
+import java.util.Set;
import org.apache.lenya.ac.impl.AbstractAccessControlTest;
@@ -51,7 +53,7 @@
}
- protected void doTestPublication(Publication pub) {
+ protected void doTestPublication(Publication pub) throws PublicationException {
String contentDirPath = pub.getContentDir();
assertNotNull(contentDirPath);
@@ -73,6 +75,20 @@
assertNotNull(pub.getDefaultLanguage());
assertTrue(Arrays.asList(languages).contains(pub.getDefaultLanguage()));
+
+ String[] types = pub.getResourceTypeNames();
+ assertTrue(types.length > 0);
+
+ Set typeSet = new HashSet(Arrays.asList(types));
+
+ String[] templateIds = pub.getTemplateIds();
+ for (int i = 0; i < templateIds.length; i++) {
+ Publication template = pub.getFactory().getPublication(templateIds[i]);
+ String[] templateTypes = template.getResourceTypeNames();
+ for (int t = 0; t < templateTypes.length; t++) {
+ assertTrue(typeSet.contains(templateTypes[i]));
+ }
+ }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@lenya.apache.org
For additional commands, e-mail: commits-help@lenya.apache.org