[jboss-cvs] JBossAS SVN: r62789 - in trunk/server/src/main/org/jboss/metadata: web and 1 other directory.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu May 3 13:40:31 EDT 2007
Author: scott.stark at jboss.org
Date: 2007-05-03 13:40:31 -0400 (Thu, 03 May 2007)
New Revision: 62789
Modified:
trunk/server/src/main/org/jboss/metadata/WebMetaData.java
trunk/server/src/main/org/jboss/metadata/web/WebMetaDataObjectFactory.java
Log:
JBCTS-594, add major/minor version info to WebMetaData
Modified: trunk/server/src/main/org/jboss/metadata/WebMetaData.java
===================================================================
--- trunk/server/src/main/org/jboss/metadata/WebMetaData.java 2007-05-03 17:31:34 UTC (rev 62788)
+++ trunk/server/src/main/org/jboss/metadata/WebMetaData.java 2007-05-03 17:40:31 UTC (rev 62789)
@@ -73,6 +73,11 @@
private static final long serialVersionUID = 1;
private static Logger log = Logger.getLogger(WebMetaData.class);
+ /** web.xml major version */
+ private int webMajorVersion;
+ /** web.xml minor version */
+ private int webMinorVersion;
+
/** web-app/description */
private String description;
/** web-app/display-name */
@@ -224,6 +229,26 @@
/** The ClassLoader to load additional resources */
private URLClassLoader resourceCl;
+ public int getWebMajorVersion()
+ {
+ return webMajorVersion;
+ }
+
+ public void setWebMajorVersion(int webMajorVersion)
+ {
+ this.webMajorVersion = webMajorVersion;
+ }
+
+ public int getWebMinorVersion()
+ {
+ return webMinorVersion;
+ }
+
+ public void setWebMinorVersion(int webMinorVersion)
+ {
+ this.webMinorVersion = webMinorVersion;
+ }
+
public void gotJspConfig()
{
if (gotJspConfig)
Modified: trunk/server/src/main/org/jboss/metadata/web/WebMetaDataObjectFactory.java
===================================================================
--- trunk/server/src/main/org/jboss/metadata/web/WebMetaDataObjectFactory.java 2007-05-03 17:31:34 UTC (rev 62788)
+++ trunk/server/src/main/org/jboss/metadata/web/WebMetaDataObjectFactory.java 2007-05-03 17:40:31 UTC (rev 62789)
@@ -58,7 +58,30 @@
/** The current WebMetaData being parsed */
private static final ThreadLocal<WebMetaData> activeMetaData = new ThreadLocal<WebMetaData>();
+ private int webMajorVersion = -1;
+ private int webMinorVersion = -1;
+ /**
+ * Called for descriptors with DTDs
+ * @param name
+ * @param publicId
+ * @param systemId
+ */
+ public void startDTD(String name, String publicId, String systemId)
+ {
+ // Check for a known public Id
+ if (publicId.startsWith("-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"))
+ {
+ webMajorVersion = 2;
+ webMinorVersion = 2;
+ }
+ else if (publicId.startsWith("-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"))
+ {
+ webMajorVersion = 2;
+ webMinorVersion = 3;
+ }
+ }
+
public WebMetaData newRoot(Object root, UnmarshallingContext navigator,
String namespaceURI, String localName, Attributes attrs)
{
@@ -68,6 +91,22 @@
else
metaData = new WebMetaData();
activeMetaData.set(metaData);
+ String version = attrs.getValue(namespaceURI, "version");
+ // Wolf: somehow the namespace doesn't work
+ if(version == null)
+ version = attrs.getValue("", "version");
+ if(version != null)
+ {
+ String[] info = version.split("\\.");
+ if( info.length > 0 )
+ webMajorVersion = Integer.parseInt(info[0]);
+ if( info.length > 1 )
+ webMinorVersion = Integer.parseInt(info[1]);
+ }
+
+ metaData.setWebMajorVersion(webMajorVersion);
+ metaData.setWebMinorVersion(webMinorVersion);
+
return metaData;
}
More information about the jboss-cvs-commits
mailing list