Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.jst.j2ee.core/archive/org/eclipse/jst/jee/util/internal/JavaEEQuickPeek.java')
-rw-r--r--plugins/org.eclipse.jst.j2ee.core/archive/org/eclipse/jst/jee/util/internal/JavaEEQuickPeek.java389
1 files changed, 0 insertions, 389 deletions
diff --git a/plugins/org.eclipse.jst.j2ee.core/archive/org/eclipse/jst/jee/util/internal/JavaEEQuickPeek.java b/plugins/org.eclipse.jst.j2ee.core/archive/org/eclipse/jst/jee/util/internal/JavaEEQuickPeek.java
deleted file mode 100644
index 6a7b59836..000000000
--- a/plugins/org.eclipse.jst.j2ee.core/archive/org/eclipse/jst/jee/util/internal/JavaEEQuickPeek.java
+++ /dev/null
@@ -1,389 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jee.util.internal;
-
-import java.io.IOException;
-import java.io.InputStream;
-
-import org.eclipse.jst.j2ee.internal.J2EEConstants;
-import org.eclipse.jst.j2ee.internal.J2EEVersionConstants;
-import org.xml.sax.InputSource;
-
-/**
- * A Utility for quickly determining the type and version of a Java EE
- * deployment descriptor.
- *
- * @author jasholl
- *
- */
-public class JavaEEQuickPeek implements J2EEVersionConstants {
-
- private static final int UNSET = -2;
-
- private XMLRootHandler handler = null;
-
- public JavaEEQuickPeek(int type, int version) {
- this(type, version, UNSET);
- }
-
- public JavaEEQuickPeek(int type, int version, int javaEEVersion) {
- if (type == UNKNOWN) {
- throw new RuntimeException("type must not be UNKNOWN"); //$NON-NLS-1$
- } else if (version == UNKNOWN) {
- throw new RuntimeException("version must not be UNKNONW"); //$NON-NLS-1$
- } else if (javaEEVersion == UNKNOWN) {
- throw new RuntimeException("javaEEVersion must not be UNKNONW"); //$NON-NLS-1$
- }
- this.type = type;
- this.version = version;
- this.javaEEVersion = javaEEVersion;
- }
-
- public JavaEEQuickPeek(InputStream in) {
- if (in != null) {
- try {
- InputSource inputSource = new InputSource(in);
- handler = new XMLRootHandler();
- handler.parseContents(inputSource);
- } catch (Exception ex) {
- // ignore
- } finally {
- try {
- in.reset();
- } catch (IOException ex) {
- // ignore
- }
- }
- } else {
- version = UNKNOWN;
- javaEEVersion = UNKNOWN;
- type = UNKNOWN;
- }
- }
-
- private int version = UNSET;
-
- private int javaEEVersion = UNSET;
-
- private int type = UNSET;
-
- /**
- * Returns the deployment descriptor type as defined by one of
- * {@link J2EEVersionConstants#UNKNOWN},
- * {@link J2EEVersionConstants#APPLICATION_CLIENT_TYPE},
- * {@link J2EEVersionConstants#APPLICATION_TYPE},
- * {@link J2EEVersionConstants#EJB_TYPE},
- * {@link J2EEVersionConstants#CONNECTOR_TYPE},
- * {@link J2EEVersionConstants#WEB_TYPE},
- * {@link J2EEVersionConstants#WEBSERVICES_TYPE}
- * {@link J2EEVersionConstants#WEBFRAGMENT_TYPE}
- *
- * @return
- */
- public int getType() {
- if (type == UNSET) {
- String rootName = handler.getRootName();
- if (rootName == null) {
- type = UNKNOWN;
- } else if (rootName.equals(J2EEConstants.APP_CLIENT_DOCTYPE)) {
- type = APPLICATION_CLIENT_TYPE;
- } else if (rootName.equals(J2EEConstants.APPLICATION_DOCTYPE)) {
- type = APPLICATION_TYPE;
- } else if (rootName.equals(J2EEConstants.EJBJAR_DOCTYPE)) {
- type = EJB_TYPE;
- } else if (rootName.equals(J2EEConstants.CONNECTOR_DOCTYPE)) {
- type = CONNECTOR_TYPE;
- } else if (rootName.equals(J2EEConstants.WEBAPP_DOCTYPE)) {
- type = WEB_TYPE;
- } else if (rootName.equals(J2EEConstants.WEB_SERVICES_DOCTYPE)) {
- type = WEBSERVICES_TYPE;
- } else if (rootName.equals(J2EEConstants.WEBFRAGMENT_DOCTYPE)) {
- type = WEBFRAGMENT_TYPE;
- }
- else {
- type = UNKNOWN;
- }
- }
- return type;
- }
-
- public static String normalizeSchemaLocation(String schemaLocation){
- if(schemaLocation == null){
- return null;
- }
- char [] oldChars = schemaLocation.toCharArray();
- char [] newChars = new char[oldChars.length];
- int newCharIndex = 0;
- boolean onWhiteSpace = true;
- boolean afterWhiteSpace = false;
- for(int oldCharIndex=0; oldCharIndex<oldChars.length; oldCharIndex++){
- afterWhiteSpace = onWhiteSpace;
- onWhiteSpace = Character.isWhitespace(oldChars[oldCharIndex]);
- boolean shouldSkip = onWhiteSpace && afterWhiteSpace;
- if(!shouldSkip){
- newChars[newCharIndex++] = onWhiteSpace ? ' ' : oldChars[oldCharIndex];
- }
- boolean atEnd = ((oldCharIndex + 1) == oldChars.length);
- if(atEnd && onWhiteSpace){
- while(newCharIndex > 0 && newChars[newCharIndex-1] == ' '){
- newCharIndex --;
- }
- }
- }
- return new String(newChars, 0, newCharIndex);
- }
-
- /**
- * Returns the module version for this deployment descriptor type. For
- * example, if this is a EJB 3.0 deployment descriptor, this returns the
- * constant for 3.0 as defined bye {@link J2EEVersionConstants}
- *
- * @return
- */
- public int getVersion() {
- if (version == UNSET) {
- String publicID = handler.getDtdPublicID();
- String systemID = handler.getDtdSystemID();
- String schemaName = null;
- if (publicID == null || systemID == null) {
- if (handler.getRootAttributes() != null) {
- schemaName = normalizeSchemaLocation(handler.getRootAttributes().getValue("xsi:schemaLocation")); //$NON-NLS-1$
- }
- if (schemaName == null) {
- version = UNKNOWN;
- return version;
- }
- }
- switch (getType()) {
- case APPLICATION_CLIENT_TYPE:
- if (publicID != null && systemID != null) {
- if (publicID.equals(J2EEConstants.APP_CLIENT_PUBLICID_1_3)
- && (systemID.equals(J2EEConstants.APP_CLIENT_SYSTEMID_1_3) || systemID.equals(J2EEConstants.APP_CLIENT_ALT_SYSTEMID_1_3))) {
- version = J2EEVersionConstants.J2EE_1_3_ID;
- } else if (publicID.equals(J2EEConstants.APP_CLIENT_PUBLICID_1_2)
- && (systemID.equals(J2EEConstants.APP_CLIENT_SYSTEMID_1_2) || systemID.equals(J2EEConstants.APP_CLIENT_ALT_SYSTEMID_1_2))) {
- version = J2EEVersionConstants.J2EE_1_2_ID;
- }
- } else if (schemaName != null) {
- if (schemaName.equals(J2EEConstants.APP_CLIENT_SCHEMA_1_4)) {
- version = J2EEVersionConstants.J2EE_1_4_ID;
- } else if (schemaName.equals(J2EEConstants.APP_CLIENT_SCHEMA_5)) {
- version = J2EEVersionConstants.JEE_5_0_ID;
- } else if (schemaName.equals(J2EEConstants.APP_CLIENT_SCHEMA_6)) {
- version = J2EEVersionConstants.JEE_6_0_ID;
- }
- }
- break;
- case APPLICATION_TYPE:
- if (publicID != null && systemID != null) {
- if (publicID.equals(J2EEConstants.APPLICATION_PUBLICID_1_3)
- && (systemID.equals(J2EEConstants.APPLICATION_SYSTEMID_1_3) || systemID.equals(J2EEConstants.APPLICATION_ALT_SYSTEMID_1_3))) {
- version = J2EEVersionConstants.J2EE_1_3_ID;
- } else if (publicID.equals(J2EEConstants.APPLICATION_PUBLICID_1_2)
- && (systemID.equals(J2EEConstants.APPLICATION_SYSTEMID_1_2) || systemID.equals(J2EEConstants.APPLICATION_ALT_SYSTEMID_1_2))) {
- version = J2EEVersionConstants.J2EE_1_2_ID;
- }
- } else if (schemaName != null) {
- if (schemaName.equals(J2EEConstants.APPLICATION_SCHEMA_1_4)) {
- version = J2EEVersionConstants.J2EE_1_4_ID;
- } else if (schemaName.equals(J2EEConstants.APPLICATION_SCHEMA_5)) {
- version = J2EEVersionConstants.JEE_5_0_ID;
- } else if (schemaName.equals(J2EEConstants.APPLICATION_SCHEMA_6)) {
- version = J2EEVersionConstants.JEE_6_0_ID;
- }
- }
- break;
- case EJB_TYPE:
- if (publicID != null && systemID != null) {
- if (publicID.equals(J2EEConstants.EJBJAR_PUBLICID_2_0) && (systemID.equals(J2EEConstants.EJBJAR_SYSTEMID_2_0) || systemID.equals(J2EEConstants.EJBJAR_ALT_SYSTEMID_2_0))) {
- version = J2EEVersionConstants.EJB_2_0_ID;
- } else if (publicID.equals(J2EEConstants.EJBJAR_PUBLICID_1_1) && (systemID.equals(J2EEConstants.EJBJAR_SYSTEMID_1_1) || systemID.equals(J2EEConstants.EJBJAR_ALT_SYSTEMID_1_1))) {
- version = J2EEVersionConstants.EJB_1_1_ID;
- }
- } else if (schemaName != null) {
- if (schemaName.equals(J2EEConstants.EJBJAR_SCHEMA_2_1)) {
- version = J2EEVersionConstants.EJB_2_1_ID;
- } else if (schemaName.equals(J2EEConstants.EJBJAR_SCHEMA_3_0)) {
- version = J2EEVersionConstants.EJB_3_0_ID;
- } else if (schemaName.equals(J2EEConstants.EJBJAR_SCHEMA_3_1)) {
- version = J2EEVersionConstants.EJB_3_1_ID;
- }
- }
- break;
- case CONNECTOR_TYPE:
- if (publicID != null && systemID != null) {
- if (publicID.equals(J2EEConstants.CONNECTOR_PUBLICID_1_0) && (systemID.equals(J2EEConstants.CONNECTOR_SYSTEMID_1_0) || systemID.equals(J2EEConstants.CONNECTOR_ALT_SYSTEMID_1_0))) {
- version = J2EEVersionConstants.JCA_1_0_ID;
- }
- } else if (schemaName != null) {
- if (schemaName.equals(J2EEConstants.CONNECTOR_SCHEMA_1_5)) {
- version = J2EEVersionConstants.JCA_1_5_ID;
- } else if (schemaName.equals(J2EEConstants.CONNECTOR_SCHEMA_1_6)) {
- version = J2EEVersionConstants.JCA_1_6_ID;
- }
- }
- break;
- case WEB_TYPE:
- if (publicID != null && systemID != null) {
- if (publicID.equals(J2EEConstants.WEBAPP_PUBLICID_2_3) && (systemID.equals(J2EEConstants.WEBAPP_SYSTEMID_2_3) || systemID.equals(J2EEConstants.WEBAPP_ALT_SYSTEMID_2_3))) {
- version = J2EEVersionConstants.WEB_2_3_ID;
- } else if (publicID.equals(J2EEConstants.WEBAPP_PUBLICID_2_2) && (systemID.equals(J2EEConstants.WEBAPP_SYSTEMID_2_2) || systemID.equals(J2EEConstants.WEBAPP_ALT_SYSTEMID_2_2))) {
- version = J2EEVersionConstants.WEB_2_2_ID;
- }
- } else if (schemaName != null) {
- if (schemaName.equals(J2EEConstants.WEBAPP_SCHEMA_2_4)) {
- version = J2EEVersionConstants.WEB_2_4_ID;
- } else if (schemaName.equals(J2EEConstants.WEBAPP_SCHEMA_2_5)) {
- version = J2EEVersionConstants.WEB_2_5_ID;
- } else if (schemaName.equals(J2EEConstants.WEBAPP_SCHEMA_3_0)) {
- version = J2EEVersionConstants.WEB_3_0_ID;
- }
- }
- break;
- case WEBSERVICES_TYPE:
- if (publicID != null && systemID != null) {
- if (publicID.equals(J2EEConstants.WEBSERVICE_PUBLICID) && (systemID.equals(J2EEConstants.WEBSERVICE_SYSTEMID))) {
- version = J2EEVersionConstants.WEBSERVICES_1_0_ID;
- }
- } else if (schemaName != null) {
- if (schemaName.equals(J2EEConstants.WEBSERVICE_SCHEMA_1_1)) {
- version = J2EEVersionConstants.WEBSERVICES_1_1_ID;
- } else if (schemaName.equals(J2EEConstants.WEBSERVICE_SCHEMA_1_2)) {
- version = J2EEVersionConstants.WEBSERVICES_1_2_ID;
- }else if (schemaName.equals(J2EEConstants.WEBSERVICE_SCHEMA_1_3)) {
- version = J2EEVersionConstants.WEBSERVICES_1_3_ID;
- }
- }
- break;
- case WEBFRAGMENT_TYPE:
- if (schemaName != null) {
- if (schemaName.equals(J2EEConstants.WEBFRAGMENT_SCHEMA_3_0)) {
- version = J2EEVersionConstants.WEBFRAGMENT_3_0_ID;
- }
- }
- break;
- default:
- break;
- }
- if (version == UNSET) {
- version = UNKNOWN;
- }
- }
- return version;
- }
-
- /**
- * Maps the version returned from {@link #getVersion()} to the Java EE spec
- * version. For example, this is an EJB 3.0 deployment descriptor, this
- * returns the constant for 5.0 (which maps to the Java EE spec version of
- * 5.0). as defined by {@link J2EEVersionConstants}
- *
- * @return
- */
- public int getJavaEEVersion() {
- if (javaEEVersion == UNSET) {
- int type = getType();
- int version = getVersion();
- switch (type) {
- case APPLICATION_CLIENT_TYPE:
- case APPLICATION_TYPE:
- javaEEVersion = version;
- break;
- case EJB_TYPE:
- switch (version) {
- case J2EEVersionConstants.EJB_1_1_ID:
- javaEEVersion = J2EEVersionConstants.J2EE_1_2_ID;
- break;
- case J2EEVersionConstants.EJB_2_0_ID:
- javaEEVersion = J2EEVersionConstants.J2EE_1_3_ID;
- break;
- case J2EEVersionConstants.EJB_2_1_ID:
- javaEEVersion = J2EEVersionConstants.J2EE_1_4_ID;
- break;
- case J2EEVersionConstants.EJB_3_0_ID:
- javaEEVersion = J2EEConstants.JEE_5_0_ID;
- break;
- case J2EEVersionConstants.EJB_3_1_ID:
- javaEEVersion = J2EEConstants.JEE_6_0_ID;
- break;
- }
- break;
- case CONNECTOR_TYPE:
- switch (version) {
- case J2EEVersionConstants.JCA_1_0_ID:
- javaEEVersion = J2EEConstants.J2EE_1_3_ID;
- break;
- case J2EEVersionConstants.JCA_1_5_ID:
- javaEEVersion = J2EEConstants.J2EE_1_4_ID;
- break;
- case J2EEVersionConstants.JCA_1_6_ID:
- javaEEVersion = J2EEConstants.JEE_6_0_ID;
- break;
- }
- break;
- case WEB_TYPE:
- switch (version) {
- case J2EEVersionConstants.WEB_2_2_ID:
- javaEEVersion = J2EEVersionConstants.J2EE_1_2_ID;
- break;
- case J2EEVersionConstants.WEB_2_3_ID:
- javaEEVersion = J2EEVersionConstants.J2EE_1_3_ID;
- break;
- case J2EEVersionConstants.WEB_2_4_ID:
- javaEEVersion = J2EEVersionConstants.J2EE_1_4_ID;
- break;
- case J2EEVersionConstants.WEB_2_5_ID:
- javaEEVersion = J2EEVersionConstants.JEE_5_0_ID;
- break;
- case J2EEVersionConstants.WEB_3_0_ID:
- javaEEVersion = J2EEVersionConstants.JEE_6_0_ID;
- break;
- }
- break;
- case WEBSERVICES_TYPE:
- switch (version) {
- case J2EEVersionConstants.WEBSERVICES_1_0_ID:
- javaEEVersion = J2EEVersionConstants.J2EE_1_3_ID;
- break;
- case J2EEVersionConstants.WEBSERVICES_1_1_ID:
- javaEEVersion = J2EEVersionConstants.J2EE_1_4_ID;
- break;
- case J2EEVersionConstants.WEBSERVICES_1_2_ID:
- javaEEVersion = J2EEVersionConstants.JEE_5_0_ID;
- break;
- case J2EEVersionConstants.WEBSERVICES_1_3_ID:
- javaEEVersion = J2EEVersionConstants.JEE_6_0_ID;
- }
- break;
-
- case WEBFRAGMENT_TYPE:
- javaEEVersion = J2EEVersionConstants.WEBFRAGMENT_3_0_ID;
- }
- if (javaEEVersion == UNSET) {
- javaEEVersion = UNKNOWN;
- }
- }
- return javaEEVersion;
- }
-
- public void setVersion(int version) {
- this.version = version;
- }
-
- public void setJavaEEVersion(int javaEEVersion) {
- this.javaEEVersion = javaEEVersion;
- }
-
- public void setType(int type) {
- this.type = type;
- }
-
-}

Back to the top