You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by lo...@apache.org on 2015/02/18 21:01:45 UTC
svn commit: r1660715 - in /myfaces/tobago/branches/tobago-3.0.x: ./
tobago-core/src/main/java/org/apache/myfaces/tobago/internal/util/
tobago-core/src/main/java/org/apache/myfaces/tobago/servlet/
tobago-core/src/main/java/org/apache/myfaces/tobago/weba...
Author: lofwyr
Date: Wed Feb 18 20:01:44 2015
New Revision: 1660715
URL: http://svn.apache.org/r1660715
Log:
Merged from trunk
cleanup [from revision 1660696]
TOBAGO-1433: Supported resource types should be configurable [from revision 1660699]
TOBAGO-1433: Supported resource types should be configurable
init [from revision 1660708]
Added:
myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/test/resources/tobago-config-for-unit-tests.xml
- copied unchanged from r1660699, myfaces/tobago/trunk/tobago-core/src/test/resources/tobago-config-for-unit-tests.xml
Modified:
myfaces/tobago/branches/tobago-3.0.x/ (props changed)
myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/util/MimeTypeUtils.java
myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/servlet/ResourceServlet.java
myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/webapp/TobagoServletContextListener.java
myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/test/java/org/apache/myfaces/tobago/internal/config/AbstractTobagoTestBase.java
myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/test/java/org/apache/myfaces/tobago/internal/config/TobagoConfigMergingUnitTest.java
myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/test/java/org/apache/myfaces/tobago/internal/util/MimeTypeUtilsUnitTest.java
Propchange: myfaces/tobago/branches/tobago-3.0.x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Feb 18 20:01:44 2015
@@ -1,3 +1,3 @@
/myfaces/tobago/branches/tobago-1.5.x:1356585,1357124
/myfaces/tobago/branches/tobago-tree-table:1226794-1341423
-/myfaces/tobago/trunk:1571193,1571804,1571816,1571941,1571945,1571962,1571966,1576730,1589960,1591854,1600239,1600818,1601860,1602151,1602154,1602343,1604224,1606201,1607642,1609696-1609697,1609718,1610942,1610948,1610970,1610989,1611011,1611259,1611264,1611276,1611329,1611338-1611339,1611571,1613015,1613032,1614827,1614853,1615053,1615114,1615121,1617310,1619789,1621101,1621107,1621134,1621156,1621264,1621282,1621332,1622222,1622243,1622508,1623934,1624033,1625968,1625972,1626270,1628899,1628953,1636842,1636911,1640117,1640147,1640541,1640548,1640638,1640761,1640917,1641575,1641635,1641772,1641775,1641777,1657180,1657269,1657276,1657279,1658909,1658912,1659026,1659031
+/myfaces/tobago/trunk:1571193,1571804,1571816,1571941,1571945,1571962,1571966,1576730,1589960,1591854,1600239,1600818,1601860,1602151,1602154,1602343,1604224,1606201,1607642,1609696-1609697,1609718,1610942,1610948,1610970,1610989,1611011,1611259,1611264,1611276,1611329,1611338-1611339,1611571,1613015,1613032,1614827,1614853,1615053,1615114,1615121,1617310,1619789,1621101,1621107,1621134,1621156,1621264,1621282,1621332,1622222,1622243,1622508,1623934,1624033,1625968,1625972,1626270,1628899,1628953,1636842,1636911,1640117,1640147,1640541,1640548,1640638,1640761,1640917,1641575,1641635,1641772,1641775,1641777,1657180,1657269,1657276,1657279,1658909,1658912,1659026,1659031,1660696,1660699,1660708
Modified: myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/util/MimeTypeUtils.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/util/MimeTypeUtils.java?rev=1660715&r1=1660714&r2=1660715&view=diff
==============================================================================
--- myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/util/MimeTypeUtils.java (original)
+++ myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/util/MimeTypeUtils.java Wed Feb 18 20:01:44 2015
@@ -21,7 +21,7 @@ package org.apache.myfaces.tobago.intern
import org.apache.myfaces.tobago.config.TobagoConfig;
-import javax.faces.context.FacesContext;
+import javax.servlet.ServletContext;
import java.util.Map;
public final class MimeTypeUtils {
@@ -79,11 +79,21 @@ public final class MimeTypeUtils {
}
}
- if(ADDITIONAL_MIME_TYPES == null) {
- final TobagoConfig tobagoConfig = TobagoConfig.getInstance(FacesContext.getCurrentInstance());
- ADDITIONAL_MIME_TYPES = tobagoConfig.getMimeTypes();
+ final int index = file.lastIndexOf('.');
+ if (index > -1) {
+ String extension = file.substring(index + 1);
+ return ADDITIONAL_MIME_TYPES.get(extension);
}
return null;
}
+
+ public static void init(ServletContext servletContext) {
+ if (ADDITIONAL_MIME_TYPES == null) {
+ final TobagoConfig tobagoConfig = TobagoConfig.getInstance(servletContext);
+ ADDITIONAL_MIME_TYPES = tobagoConfig.getMimeTypes();
+ } else {
+ throw new IllegalStateException(MimeTypeUtils.class.getSimpleName() + " is already initialized!");
+ }
+ }
}
Modified: myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/servlet/ResourceServlet.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/servlet/ResourceServlet.java?rev=1660715&r1=1660714&r2=1660715&view=diff
==============================================================================
--- myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/servlet/ResourceServlet.java (original)
+++ myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/servlet/ResourceServlet.java Wed Feb 18 20:01:44 2015
@@ -81,7 +81,7 @@ public class ResourceServlet extends Htt
public void init(final ServletConfig servletConfig) throws ServletException {
super.init(servletConfig);
final TobagoConfig tobagoConfig = TobagoConfig.getInstance(servletConfig.getServletContext());
- if (tobagoConfig != null && tobagoConfig.getProjectStage() == ProjectStage.Production) {
+ if (tobagoConfig.getProjectStage() == ProjectStage.Production) {
expires = 24 * 60 * 60 * 1000L;
}
final Theme defaultTheme = tobagoConfig.getDefaultTheme();
Modified: myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/webapp/TobagoServletContextListener.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/webapp/TobagoServletContextListener.java?rev=1660715&r1=1660714&r2=1660715&view=diff
==============================================================================
--- myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/webapp/TobagoServletContextListener.java (original)
+++ myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/main/java/org/apache/myfaces/tobago/webapp/TobagoServletContextListener.java Wed Feb 18 20:01:44 2015
@@ -23,6 +23,7 @@ import org.apache.myfaces.tobago.config.
import org.apache.myfaces.tobago.internal.config.ContentSecurityPolicy;
import org.apache.myfaces.tobago.internal.config.TobagoConfigBuilder;
import org.apache.myfaces.tobago.internal.context.ResourceManagerFactory;
+import org.apache.myfaces.tobago.internal.util.MimeTypeUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -51,6 +52,9 @@ public class TobagoServletContextListene
if (LOG.isInfoEnabled()) {
final TobagoConfig tobagoConfig = TobagoConfig.getInstance(servletContext);
LOG.info("TobagoConfig: " + tobagoConfig);
+
+ MimeTypeUtils.init(servletContext);
+
final ContentSecurityPolicy.Mode mode = tobagoConfig.getContentSecurityPolicy().getMode();
final StringBuilder builder = new StringBuilder();
builder.append("\n*************************************************************************************");
Modified: myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/test/java/org/apache/myfaces/tobago/internal/config/AbstractTobagoTestBase.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/test/java/org/apache/myfaces/tobago/internal/config/AbstractTobagoTestBase.java?rev=1660715&r1=1660714&r2=1660715&view=diff
==============================================================================
--- myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/test/java/org/apache/myfaces/tobago/internal/config/AbstractTobagoTestBase.java (original)
+++ myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/test/java/org/apache/myfaces/tobago/internal/config/AbstractTobagoTestBase.java Wed Feb 18 20:01:44 2015
@@ -70,7 +70,7 @@ public abstract class AbstractTobagoTest
// Tobago specific extensions
- final TobagoConfigImpl tobagoConfig = new TobagoConfigImpl();
+ final TobagoConfigImpl tobagoConfig = TobagoConfigMergingUnitTest.loadAndMerge("tobago-config-for-unit-tests.xml");
final Theme theme = new MockTheme("default", "Default Mock Theme", Collections.<Theme>emptyList());
final Theme one = new MockTheme("one", "Mock Theme One", Arrays.asList(theme));
final Map<String, Theme> availableThemes = new HashMap<String, Theme>();
Modified: myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/test/java/org/apache/myfaces/tobago/internal/config/TobagoConfigMergingUnitTest.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/test/java/org/apache/myfaces/tobago/internal/config/TobagoConfigMergingUnitTest.java?rev=1660715&r1=1660714&r2=1660715&view=diff
==============================================================================
--- myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/test/java/org/apache/myfaces/tobago/internal/config/TobagoConfigMergingUnitTest.java (original)
+++ myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/test/java/org/apache/myfaces/tobago/internal/config/TobagoConfigMergingUnitTest.java Wed Feb 18 20:01:44 2015
@@ -117,13 +117,13 @@ public class TobagoConfigMergingUnitTest
Assert.assertEquals("test/three", mimeTypes.get("test-3"));
}
- private TobagoConfigImpl loadAndMerge(final String... names)
+ public static TobagoConfigImpl loadAndMerge(final String... names)
throws IOException, SAXException, ParserConfigurationException, URISyntaxException {
final List<TobagoConfigFragment> list = new ArrayList<TobagoConfigFragment>();
for (final String name : names) {
- final URL url = getClass().getClassLoader().getResource(name);
+ final URL url = TobagoConfigMergingUnitTest.class.getClassLoader().getResource(name);
final TobagoConfigParser parser = new TobagoConfigParser();
list.add(parser.parse(url));
}
Modified: myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/test/java/org/apache/myfaces/tobago/internal/util/MimeTypeUtilsUnitTest.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/test/java/org/apache/myfaces/tobago/internal/util/MimeTypeUtilsUnitTest.java?rev=1660715&r1=1660714&r2=1660715&view=diff
==============================================================================
--- myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/test/java/org/apache/myfaces/tobago/internal/util/MimeTypeUtilsUnitTest.java (original)
+++ myfaces/tobago/branches/tobago-3.0.x/tobago-core/src/test/java/org/apache/myfaces/tobago/internal/util/MimeTypeUtilsUnitTest.java Wed Feb 18 20:01:44 2015
@@ -20,12 +20,14 @@ public class MimeTypeUtilsUnitTest exten
public static final String WOFF = "http:///localhost:8080/demo/demo.woff";
public static final String TTF = "http:///localhost:8080/demo/demo.ttf";
public static final String SVG = "http:///localhost:8080/demo/demo.svg";
+ public static final String ODT = "http:///localhost:8080/demo/demo.odt";
public static final String UNKNOWN0 = "http:///localhost:8080/demo/demo.PNG";
public static final String UNKNOWN1 = "http:///localhost:8080/demo/demos._png";
public static final String UNKNOWN2 = "http:///localhost:8080/demo/demo.ggif";
public static final String UNKNOWN3 = "http:///localhost:8080/demo/demos.ppg";
public static final String UNKNOWN4 = "http:///localhost:8080/demo/demos.pngx";
+ public static final String UNKNOWN5 = "http:///localhost:8080/demo/demos.png.";
@Test
public void testMimeTypes() {
@@ -52,6 +54,13 @@ public class MimeTypeUtilsUnitTest exten
Assert.assertEquals(null, MimeTypeUtils.getMimeTypeForFile(UNKNOWN2));
Assert.assertEquals(null, MimeTypeUtils.getMimeTypeForFile(UNKNOWN3));
Assert.assertEquals(null, MimeTypeUtils.getMimeTypeForFile(UNKNOWN4));
+ Assert.assertEquals(null, MimeTypeUtils.getMimeTypeForFile(UNKNOWN5));
+ }
+
+ @Test
+ public void testMimeTypesConfigured() {
+ // comes from tobago-config-for-unit-tests.xml
+ Assert.assertEquals("application/vnd.oasis.opendocument.text", MimeTypeUtils.getMimeTypeForFile(ODT));
}
// @Test