Skip to main content
aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Expand)AuthorFilesLines
2014-10-03removed old stuff (and moved to old directory)Lorenzo Bettini1-10/+0
2013-10-11massive renaming EmfComponents -> EmfParsleyLorenzo Bettini1-3/+3
2013-07-04Initial contributionFrancesco Guidieri1-0/+10

    Back to the top

    '>bundles/org.eclipse.jst.jsp.core/.cvsignore11
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/.options35
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/.project28
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.core.runtime.prefs3
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.jdt.core.prefs79
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.jdt.ui.prefs4
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.ltk.core.refactoring.prefs3
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.pde.prefs16
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/DevTimeSupport/CSSJSPParser/HowToGen.html9
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/DevTimeSupport/CSSJSPParser/JSPedCSSTokenizer.flex598
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/DevTimeSupport/HeadParsers/JSPHeadTokenizer.jFlex304
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/DevTimeSupport/buildParser.xml32
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/META-INF/MANIFEST.MF61
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/about.html34
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/build.properties22
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/component.xml27
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/plugin.properties33
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/plugin.xml354
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/schema/eltranslator.exsd121
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/Assert.java121
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/JSPCoreMessages.java70
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/JSPCorePlugin.java101
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/JSPCorePluginResources.properties46
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/Logger.java144
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMContentWrapperImpl.java56
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMDocumentWrapperImpl.java216
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMElementDeclarationWrapperImpl.java128
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMGroupWrapperImpl.java112
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMNodeWrapperImpl.java79
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/JSPCMDocumentFactory.java51
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/TaglibController.java373
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMAttributeDeclarationImpl.java282
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMDataTypeImpl.java100
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMDocumentFactoryTLD.java1081
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMDocumentImpl.java455
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMElementDeclarationImpl.java587
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMNamedNodeMapImpl.java85
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMNodeListImpl.java63
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDCMDocumentManager.java1091
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDFunctionImpl.java151
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDInitParamImpl.java64
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDListenerImpl.java40
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDValidatorImpl.java58
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDVariableImpl.java116
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TaglibTracker.java41
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/JSP11TLDNames.java49
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/JSP12TLDNames.java77
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/JSP20TLDNames.java38
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDAttributeDeclaration.java62
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDDocument.java105
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDElementDeclaration.java117
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDFunction.java36
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDInitParam.java30
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDListener.java20
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDValidator.java27
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDVariable.java57
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentproperties/JSPFContentProperties.java213
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentproperties/JSPFContentPropertiesManager.java245
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/BooleanStack.java112
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/ByteReader.java109
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/ContentDescriberForJSP.java253
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/DeploymentDescriptorPropertyCache.java913
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/HeadParserToken.java44
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/IntStack.java99
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/JSPHeadTokenizer.java3924
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/JSPHeadTokenizerConstants.java21
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/JSPResourceEncodingDetector.java522
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/DocumentFactoryForJSP.java54
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveAdapter.java59
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveAdapterFactory.java97
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveAdapterImpl.java703
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveWatcher.java23
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveWatcherFactory.java58
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveWatcherImpl.java108
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/AttrImplForJSP.java35
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/CommentImplForJSP.java50
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/DOMDocumentForJSP.java120
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/DOMModelForJSP.java45
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/ElementImplForJSP.java69
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/NestDOMModelUpdater.java34
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/NestedDOMModelParser.java85
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/TextImplForJSP.java28
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/encoding/IJSPHeadContentDetector.java22
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/encoding/JSPDocumentHeadContentDetector.java33
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/encoding/JSPDocumentLoader.java312
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/ArrayMap.java103
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/CompilationUnitHelper.java56
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/EscapedTextUtil.java87
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/IJSPProblem.java37
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/IJSPTranslation.java90
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSP2ServletNameUtil.java134
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPIncludeRegionHelper.java94
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPProblemRequestor.java88
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslation.java657
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationAdapter.java230
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationAdapterFactory.java61
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationExtension.java463
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationUtil.java125
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslator.java2943
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/StackMap.java158
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/TagTranslationAdapter.java24
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/TagTranslationAdapterFactory.java50
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/TagTranslator.java38
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/XMLJSPRegionHelper.java526
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTAddExpress.java30
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTAddExpression.java30
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTAndExpression.java30
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTChoiceExpression.java30
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTEqualityExpression.java30
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTExpression.java30
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTFunctionInvocation.java40
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTGTNode.java30
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTImplicitObject.java30
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTLiteral.java30
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTMultiplyExpression.java30
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTOperatorExpression.java36
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTOrExpression.java30
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTRelationalExpression.java30
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTStart.java28
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTUnaryExpression.java30
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTValue.java30
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTValuePrefix.java30
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTValueSuffix.java41
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ELGenerator.java45
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ELGeneratorVisitor.java509
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/FindFunctionInvocationVisitor.java100
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JJTJSPELParserState.java134
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPEL.jj675
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPEL.jjt281
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPELParser.java1158
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPELParserConstants.java121
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPELParserTokenManager.java855
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPELParserTreeConstants.java50
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPELParserVisitor.java33
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPELTranslator.java68
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/Node.java48
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ParseException.java208
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/SimpleCharStream.java412
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/SimpleNode.java116
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/Token.java92
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/TokenMgrError.java149
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/fixparser.sed18
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/fixtm.sed27
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/go.sh9
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/IndexWorkspaceJob.java163
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPIndexManager.java728
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPPathIndexer.java109
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchDocument.java257
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchParticipant.java106
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchScope.java125
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchSupport.java554
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JavaSearchDocumentDelegate.java71
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/NullSearchDocument.java44
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/modelhandler/EmbeddedTypeStateData.java40
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/modelhandler/JSPModelLoader.java648
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/modelhandler/ModelHandlerForJSP.java113
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/modelhandler/ModelHandlerForTag.java38
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/modelhandler/TagModelLoader.java42
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/modelquery/JSPModelQueryAdapterImpl.java25
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/modelquery/JSPModelQueryAssociationProvider.java27
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/modelquery/JSPModelQueryCMProvider.java87
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/modelquery/JSPModelQueryImpl.java163
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/modelquery/ModelQueryAdapterFactoryForJSP.java217
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/modelquery/ModelQueryAdapterFactoryForTag.java37
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/modelquery/TagModelQueryCMProvider.java78
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/JSPDirectiveStructuredDocumentRegion.java34
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/JSPReParser.java369
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/JSPSourceParser.java420
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/internal/JSPParserRegionFactory.java37
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/internal/JSPStructuredRegionFactory.java34
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/internal/JSPTokenizer.java3942
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/preferences/JSPCorePreferenceInitializer.java77
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/preferences/JSPCorePreferenceNames.java82
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/provisional/JSP11Namespace.java109
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/provisional/JSP12Namespace.java19
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/provisional/JSP20Namespace.java18
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/provisional/contenttype/ContentTypeIdForJSP.java61
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/provisional/contenttype/IContentDescriptionForJSP.java25
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/provisional/text/IJSPPartitionTypes.java34
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/regions/DOMJSPRegionContexts.java63
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/taglib/TaglibClassLoader.java91
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/taglib/TaglibHelper.java883
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/taglib/TaglibHelperCache.java166
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/taglib/TaglibHelperManager.java87
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/taglib/TaglibVariable.java167
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/tasks/JSPFileTaskScanner.java22
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/text/StructuredTextPartitionerForJSP.java420
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/util/CommonXML.java84
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/util/DocumentProvider.java476
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/util/FacetModuleCoreSupport.java235
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/util/FacetModuleCoreSupportDelegate.java191
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/util/FileContentCache.java225
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/util/ZeroStructuredDocumentRegion.java290
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/validation/FragmentValidationTools.java57
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/validation/HTMLValidationReporter.java108
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/validation/JSPActionValidator.java382
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/validation/JSPBatchValidator.java532
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/validation/JSPContentValidator.java265
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/validation/JSPDirectiveValidator.java670
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/validation/JSPELValidator.java222
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/validation/JSPJavaValidator.java423
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/validation/JSPValidator.java420
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/validation/LocalizedMessage.java61
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/validation/TLDValidator.java219
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/jspel/ELProblem.java34
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/jspel/IJSPELTranslator.java48
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/taglib/IJarRecord.java42
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/taglib/ITLDRecord.java42
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/taglib/ITagDirRecord.java29
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/taglib/ITaglibDescriptor.java56
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/taglib/ITaglibIndexDelta.java82
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/taglib/ITaglibIndexListener.java32
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/taglib/ITaglibRecord.java77
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/taglib/ITaglibRecordEvent.java38
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/taglib/IURLRecord.java49
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/taglib/ProjectDescription.java2357
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/taglib/TaglibIndex.java949
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/taglib/TaglibIndexDelta.java148
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/text/IJSPPartitions.java34
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/css/core/internal/contentmodel/JSPedCSSTaglibController.java24
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/css/core/internal/contenttype/ContentDescriberForJSPedCSS.java236
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/css/core/internal/document/IJSPCSSImportRule.java18
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/css/core/internal/document/IJSPCSSNode.java19
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/css/core/internal/document/JSPCSSImportRuleImpl.java47
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/css/core/internal/document/JSPCSSNodeImpl.java51
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/css/core/internal/document/JSPedCSSModelImpl.java29
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/css/core/internal/document/JSPedCSSModelParser.java162
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/css/core/internal/encoding/JSPedCSSDocumentLoader.java26
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/css/core/internal/modelhandler/JSPedCSSModelLoader.java38
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/css/core/internal/modelhandler/ModelHandlerForJSPedCSS.java44
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/css/core/internal/parser/JSPedCSSSourceParser.java43
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/css/core/internal/parser/JSPedCSSTokenizer.java2078
    -rw-r--r--bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/css/core/internal/parserz/JSPedCSSRegionContexts.java26
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/.classpath34
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/.cvsignore8
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/.options2
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/.project28
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/.settings/org.eclipse.core.runtime.prefs3
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/.settings/org.eclipse.jdt.core.prefs79
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/.settings/org.eclipse.jdt.ui.prefs4
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/.settings/org.eclipse.ltk.core.refactoring.prefs3
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/.settings/org.eclipse.pde.prefs16
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/META-INF/MANIFEST.MF67
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/about.html34
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/build.properties22
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/dtool16/newjsp_wiz.gifbin360 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/etool16/newjsp_wiz.gifbin598 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/class_obj.gifbin586 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/default_co.gifbin176 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/field_default_obj.gifbin118 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/field_private_obj.gifbin87 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/field_protected_obj.gifbin119 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/field_public_obj.gifbin124 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerclass_default_obj.gifbin604 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerclass_private_obj.gifbin603 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerclass_protected_obj.gifbin600 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerclass_public_obj.gifbin586 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerinterface_default_obj.gifbin595 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerinterface_private_obj.gifbin594 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerinterface_protected_obj.gifbin592 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerinterface_public_obj.gifbin574 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/localvariable_obj.gifbin152 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/package_obj.gifbin227 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/private_co.gifbin183 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/protected_co.gifbin182 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/public.gifbin193 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/public_co.gifbin194 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/sourceEditor.gifbin353 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/tag-generic.gifbin98 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/tag-jsp.gifbin135 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/tag-template.gifbin205 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/full/wizban/newjspfile_wiz.pngbin3973 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/snippets/jspdecl.gifbin190 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/snippets/jspexp.gifbin124 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/snippets/jspincl.gifbin213 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/snippets/jspscr.gifbin531 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/snippets/jsptaglib.gifbin338 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/snippets/tag-generic.gifbin82 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/icons/snippets/tag-jsp.gifbin358 -> 0 bytes-rw-r--r--bundles/org.eclipse.jst.jsp.ui/plugin.properties105
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/plugin.xml1024
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/css/ui/internal/properties/JSPedCSSPropertySource.java40
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/css/ui/internal/registry/AdapterFactoryProviderJSPedCSS.java25
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/css/ui/internal/views/properties/JSPedCSSPropertySheetConfiguration.java188
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/StructuredTextViewerConfigurationJSP.java391
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/IActionConstantsJSP.java19
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/IActionDefinitionIdsJSP.java21
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/JSPUIMessages.java180
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/JSPUIPlugin.java99
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/JSPUIPluginResources.properties160
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/Logger.java144
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/autoedit/AutoEditStrategyForTabs.java187
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/autoedit/StructuredAutoEditStrategyJSP.java110
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/autoedit/StructuredAutoEditStrategyJSPJava.java109
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/breakpointproviders/AbstractBreakpointProvider.java268
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/breakpointproviders/JavaBreakpointProvider.java105
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/breakpointproviders/JavaScriptBreakpointProvider.java81
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/breakpointproviders/JavaStratumBreakpointProvider.java220
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/breakpointproviders/JavascriptLineBreakpoint.java64
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/AutoImportProposal.java202
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/BeanInfoProvider.java442
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/CustomTemplateProposal.java42
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/IBeanInfoProvider.java20
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/IJavaPropertyDescriptor.java27
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPCompletionProcessor.java286
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPCompletionProposal.java83
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPContentAssistProcessor.java1330
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPDummyContentAssistProcessor.java304
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPELCompletionProcessor.java10
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPELContentAssistProcessor.java149
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPELProposalCollector.java92
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPJavaContentAssistProcessor.java305
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPPropertyContentAssistProcessor.java259
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPProposalCollector.java219
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPTaglibDirectiveContentAssistProcessor.java389
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPTemplateCompletionProcessor.java164
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPUseBeanContentAssistProcessor.java173
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JavaParameterListValidator.java228
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JavaTypeCompletionProposal.java300
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JavaTypeFinder.java134
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JavaTypeNameRequestor.java121
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/NoRegionContentAssistProcessorForJSP.java96
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/ReplaceNameTemplateContext.java104
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentproperties/ui/JSPFContentSettingsPropertyPage.java189
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentproperties/ui/ProjectJSPFContentSettingsPropertyPage.java19
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/derived/SingleCharReader.java66
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/editor/ActionContributorJSP.java94
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/editor/IHelpContextIds.java53
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/editor/JSPEditorPluginImageHelper.java179
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/editor/JSPEditorPluginImages.java49
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/editor/JSPSourceEditingTextTools.java62
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/format/FormattingStrategyJSPJava.java110
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/handlers/JSPFindOccurrencesHandler.java38
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/ExternalFileEditorInput.java160
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/ExternalFileHyperlink.java62
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/JSPJavaHyperlink.java68
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/JSPJavaHyperlinkDetector.java256
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/TLDFileHyperlink.java126
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/TaglibHyperlinkDetector.java448
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/TaglibJarHyperlink.java113
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/TaglibJarUriHyperlink.java74
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/URLFileHyperlink.java174
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/URLFileRegionHyperlink.java218
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/WorkspaceFileHyperlink.java79
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/XMLJavaHyperlinkDetector.java241
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/BasicRefactorSearchRequestor.java372
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPJavaSelectionProvider.java60
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPMethodRenameChange.java67
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPMethodRenameParticipant.java74
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPMethodRenameRequestor.java47
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPMoveElementActionDelegate.java116
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPPackageRenameChange.java68
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPPackageRenameParticipant.java74
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPPackageRenameRequestor.java41
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPRenameElementActionDelegate.java109
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPTypeMoveChange.java66
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPTypeMoveParticipant.java82
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPTypeMoveRequestor.java60
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPTypeRenameChange.java69
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPTypeRenameParticipant.java80
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPTypeRenameRequestor.java63
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/MoveElementHandler.java76
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/RenameElementHandler.java78
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/BasicJSPSearchRequestor.java141
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/JSPFindOccurrencesActionDelegate.java40
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/JSPFindOccurrencesProcessor.java82
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/JSPOccurrencesSearchResult.java29
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/JSPSearchQuery.java117
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/JSPSearchRequestor.java81
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/JSPSingleFileSearchRequestor.java38
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/ui/JSPMatchPresentation.java45
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/ui/JSPQueryParticipant.java98
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/JSPUIPreferenceInitializer.java79
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/JSPUIPreferenceNames.java92
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/AbstractPropertyPreferencePage.java299
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/AbstractValidationSettingsPage.java422
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/JSPColorPage.java170
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/JSPFilesPreferencePage.java80
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/JSPSourcePreferencePage.java80
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/JSPStyledTextColorPicker.java42
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/JSPSyntaxColoringPage.java857
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/JSPTemplatePreferencePage.java165
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/JSPTypingPreferencePage.java97
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/JSPValidationPreferencePage.java280
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/projection/ProjectionAnnotationModelChanges.java54
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/projection/ProjectionModelNodeAdapterFactoryHTML.java205
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/projection/ProjectionModelNodeAdapterFactoryJSP.java77
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/projection/ProjectionModelNodeAdapterHTML.java291
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/projection/ProjectionModelNodeAdapterJSP.java26
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/projection/ProjectionViewerInformation.java196
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/projection/StructuredTextFoldingProviderJSP.java428
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/registry/AdapterFactoryProviderForJSP.java73
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/IStyleConstantsJSP.java5
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/LineStyleProviderForJSP.java227
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/java/DoubleQuotedStringRule.java82
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/java/IStyleConstantsJSPJava.java20
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/java/JavaCodeScanner.java109
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/java/JavaColorProvider.java82
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/java/JavaWhitespaceDetector.java26
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/java/JavaWordDetector.java32
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/java/LineStyleProviderForJava.java324
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/jspel/IStyleConstantsJSPEL.java18
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/jspel/JSPELCodeScanner.java83
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/jspel/JSPELColorProvider.java102
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/jspel/JSPELWhitespaceDetector.java26
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/jspel/JSPELWordDetector.java32
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/jspel/LineStyleProviderForJSPEL.java283
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JSPInformationProvider.java45
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JSPJavaJavadocHoverProcessor.java145
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JSPJavaJavadocInformationProvider.java46
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JSPTagInfoHoverProcessor.java51
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JavaWordFinder.java71
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/XMLJavadocHoverProcessor.java137
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/templates/EncodingTemplateVariableResolverJSP.java38
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/templates/TemplateContextTypeIdsJSP.java52
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/templates/TemplateContextTypeJSP.java33
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/text/JSPDocumentRegionEdgeMatcher.java28
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/text/JavaCodeReader.java246
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/text/JavaPairMatcher.java202
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/validation/HTMLValidationReporter.java106
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/validation/JSPActionSourceValidator.java269
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/validation/JSPContentSourceValidator.java393
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/validation/LocalizedMessage.java61
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/views/contentoutline/TLDContentOutlineConfiguration.java349
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/wizard/NewJSPFileWizardPage.java257
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/wizard/NewJSPTemplatesWizardPage.java507
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/wizard/NewJSPWizard.java154
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/wizard/NewTagFileWizardPage.java256
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/wizard/NewTagTemplatesWizardPage.java507
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/wizard/NewTagWizard.java146
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/views/contentoutline/JSPContentOutlineConfiguration.java51
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates.properties60
    -rw-r--r--bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates.xml46
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/.classpath7
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/.cvsignore1
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/.project28
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/.settings/org.eclipse.pde.prefs15
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/META-INF/MANIFEST.MF9
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/about.html27
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/about_files/CDDLv1.0.txt119
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/about_files/LICENSE.txt119
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/build.properties14
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/application-client_1_2.dtd292
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/application-client_1_3.dtd506
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/application-client_1_4.xsd267
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/application-client_5.xsd304
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/application_1_2.dtd197
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/application_1_3.dtd312
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/application_1_4.xsd315
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/application_5.xsd336
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/connector_1_0.dtd557
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/connector_1_5.xsd1036
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/ejb-jar_1_1.dtd894
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/ejb-jar_2_0.dtd1671
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/ejb-jar_2_1.xsd2208
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/ejb-jar_3_0.xsd2706
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/j2ee_1_4.xsd1608
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/j2ee_jaxrpc_mapping_1_1.xsd886
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/j2ee_web_services_1_1.xsd491
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/j2ee_web_services_client_1_1.xsd345
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/javaee_5.xsd2096
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/javaee_web_services_1_2.xsd747
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/javaee_web_services_client_1_2.xsd578
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/jsp_2_0.xsd308
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/jsp_2_1.xsd343
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/orm_1_0.xsd1562
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/persistence_1_0.xsd307
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-app_2_2.dtd639
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-app_2_3.dtd1063
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-app_2_4.xsd1234
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-app_2_5.xsd1271
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-facesconfig_1_0.dtd874
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-facesconfig_1_1.dtd895
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-facesconfig_1_2.xsd2071
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-jsptaglibrary_1_1.dtd265
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-jsptaglibrary_1_2.dtd468
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-jsptaglibrary_2_0.xsd1010
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-jsptaglibrary_2_1.xsd1144
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/plugin.properties3
    -rw-r--r--bundles/org.eclipse.jst.standard.schemas/plugin.xml181
    -rw-r--r--bundles/org.eclipse.wst.css.core/.classpath13
    -rw-r--r--bundles/org.eclipse.wst.css.core/.cvsignore8
    -rw-r--r--bundles/org.eclipse.wst.css.core/.options2
    -rw-r--r--bundles/org.eclipse.wst.css.core/.project28
    -rw-r--r--bundles/org.eclipse.wst.css.core/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--bundles/org.eclipse.wst.css.core/.settings/org.eclipse.core.runtime.prefs3
    -rw-r--r--bundles/org.eclipse.wst.css.core/.settings/org.eclipse.jdt.core.prefs81
    -rw-r--r--bundles/org.eclipse.wst.css.core/.settings/org.eclipse.jdt.ui.prefs4
    -rw-r--r--bundles/org.eclipse.wst.css.core/.settings/org.eclipse.ltk.core.refactoring.prefs3
    -rw-r--r--bundles/org.eclipse.wst.css.core/.settings/org.eclipse.pde.prefs16
    -rw-r--r--bundles/org.eclipse.wst.css.core/META-INF/MANIFEST.MF45
    -rw-r--r--bundles/org.eclipse.wst.css.core/about.html34
    -rw-r--r--bundles/org.eclipse.wst.css.core/build.properties24
    -rw-r--r--bundles/org.eclipse.wst.css.core/component.xml16
    -rw-r--r--bundles/org.eclipse.wst.css.core/cssprofile/css-profile.dtd143
    -rw-r--r--bundles/org.eclipse.wst.css.core/cssprofile/cssprofile-css1.xml838
    -rw-r--r--bundles/org.eclipse.wst.css.core/cssprofile/cssprofile-css2.xml2270
    -rw-r--r--bundles/org.eclipse.wst.css.core/cssprofile/cssprofile-mobile1_0.xml158
    -rw-r--r--bundles/org.eclipse.wst.css.core/cssprofile/cssprofile-wap.xml630
    -rw-r--r--bundles/org.eclipse.wst.css.core/cssprofile/cssprofile.properties34
    -rw-r--r--bundles/org.eclipse.wst.css.core/cssprofile/description.txt15
    -rw-r--r--bundles/org.eclipse.wst.css.core/plugin.properties19
    -rw-r--r--bundles/org.eclipse.wst.css.core/plugin.xml91
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/CSSCoreMessages.java43
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/CSSCorePlugin.java62
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/CSSCorePluginResources.properties26
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/Logger.java156
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/cleanup/CSSCleanupStrategy.java98
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/cleanup/CSSCleanupStrategyImpl.java190
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/cleanup/CleanupProcessorCSS.java101
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/IMediaGroupID.java34
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/IValID.java266
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMContainer.java164
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMFontProperty.java198
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMFunction.java89
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMNode.java1369
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMNumber.java219
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMProperty.java417
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMString.java85
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMSubProperty.java122
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMURange.java81
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentmodel/PropCMUtil.java48
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentproperties/CSSContentProperties.java194
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contentproperties/CSSContentPropertiesManager.java239
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/ByteReader.java109
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/CSSHeadTokenizer.java1440
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/CSSHeadTokenizerConstants.java19
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/CSSResourceEncodingDetector.java367
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/ContentDescriberForCSS.java200
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/EncodingGuesser.java173
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/HeadParserToken.java44
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/contenttype/IntStack.java99
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/AbstractCSSNodeList.java63
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSAttrImpl.java133
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSCharsetRuleImpl.java79
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSDeclarationItemParser.java1077
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSDocumentImpl.java163
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSFontFaceRuleImpl.java67
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSImportRuleImpl.java227
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSMediaRuleImpl.java230
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelCreationContext.java155
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelDeletionContext.java268
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelImpl.java624
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelNodeFeeder.java126
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelParser.java1296
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelUpdateContext.java416
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelUpdater.java561
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSModelUtil.java293
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSNamedNodeMapImpl.java48
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSNodeImpl.java470
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSNodeListImpl.java27
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSPageRuleImpl.java98
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSPrimitiveContainer.java39
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSPrimitiveValueImpl.java362
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSRegionContainer.java203
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSRuleDeclContainer.java56
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSRuleImpl.java80
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSRuleListImpl.java45
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSSelector.java422
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSSelectorCombinator.java76
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSSelectorItem.java42
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSSelectorListImpl.java207
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSSelectorParser.java335
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSSimpleSelector.java281
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSStructuredDocumentRegionContainer.java229
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSStyleDeclItemImpl.java272
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSStyleDeclarationFactoryContext.java69
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSStyleDeclarationImpl.java272
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSStyleRuleImpl.java98
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSStyleSheetImpl.java612
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CSSUnknownRuleImpl.java70
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/CounterImpl.java124
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/DOMCSSImpl.java49
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/MediaListImpl.java155
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/RGBColorImpl.java104
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/RectImpl.java118
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/document/StyleSheetListImpl.java44
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/encoding/CSSDocumentCharsetDetector.java126
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/encoding/CSSDocumentLoader.java91
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/event/ICSSStyleListener.java32
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/event/ICSSStyleNotifier.java40
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/eventimpl/CSSEmbededStyleNotifyAdapter.java60
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/eventimpl/CSSStyleEventDeliverer.java155
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/eventimpl/CSSStyleNotifyAdapter.java174
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/format/FormatProcessorCSS.java123
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/AbstractCSSSourceFormatter.java1003
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/AttrChangeContext.java29
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/AttrFormatter.java168
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CSSFormatUtil.java165
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CSSSourceFormatter.java48
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CSSSourceFormatterFactory.java81
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CSSSourceGenerator.java61
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CharsetRuleFormatter.java184
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CompoundRegion.java58
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/CounterFormatter.java319
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/DeclContainerFormatter.java119
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/DefaultCSSSourceFormatter.java126
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/FontFaceRuleFormatter.java97
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/FormatRegion.java71
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/FunctionFormatter.java184
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/ImportRuleFormatter.java339
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/MediaListFormatter.java211
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/MediaRuleFormatter.java383
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/PageRuleFormatter.java194
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/PrimitiveValueFormatter.java273
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/RGBFormatter.java44
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/RectFormatter.java44
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/StyleDeclItemFormatter.java399
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/StyleDeclarationFormatter.java325
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/StyleRuleFormatter.java166
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/StyleSheetFormatter.java260
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/UnknownRuleFormatter.java86
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMCategory.java16
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMCharsetRule.java18
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMContainer.java18
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMDescriptor.java20
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMFontFaceRule.java18
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMFunction.java18
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMImportRule.java18
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMKeyword.java18
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMMediaRule.java18
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMNode.java51
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMNumber.java18
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMPageRule.java18
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMProperty.java22
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMSelector.java29
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMString.java17
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMStyleRule.java18
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMStyleSheet.java18
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMMUnit.java18
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSMetaModel.java37
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSProfile.java31
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/CSSProfileRegistry.java69
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSFunctionID.java22
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSKeywordID.java261
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSMMTypeCollector.java62
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSMediaGroupID.java29
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSMetaModelFinder.java51
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSMetaModelTraverser.java92
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSMetaModelUtil.java120
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSNumberID.java23
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSProfileFinder.java90
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSPropertyID.java137
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSStringID.java22
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodel/util/CSSUnitID.java34
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMCategoryImpl.java75
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMCharsetRuleImpl.java45
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMContainerImpl.java63
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMDescriptorImpl.java75
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMFontFaceRuleImpl.java45
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMFunctionImpl.java96
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMImportRuleImpl.java44
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMKeywordImpl.java75
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMMediaRuleImpl.java41
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMNodeImpl.java148
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMNumberImpl.java52
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMPageRuleImpl.java50
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMPropertyImpl.java76
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMPseudoClassImpl.java33
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMPseudoElementImpl.java33
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMSelectorExpressionImpl.java49
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMSelectorImpl.java81
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMStringImpl.java86
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMStyleRuleImpl.java50
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMStyleSheetImpl.java50
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMMUnitImpl.java108
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSMetaModelImpl.java95
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSProfileImpl.java263
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/CSSProfileTest.java73
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/MetaModelErrors.java30
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/NodePool.java171
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/ProfileHandler.java293
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/ProfileKeywords.java58
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/ProfileLoader.java72
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/RegistryReader.java113
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/ValueCollector.java50
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/metamodelimpl/XMLReaderUtil.java38
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/modelhandler/CSSModelLoader.java54
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/modelhandler/ModelHandlerForCSS.java56
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parser/CSSRegionUtil.java51
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parser/CSSSourceParser.java255
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parser/CSSStructuredDocumentRegionFactory.java27
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parser/CSSTokenizer.java1972
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parser/ICSSTokenizer.java37
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parser/regions/CSSTextRegionFactory.java35
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parserz/CSSRegionContexts.java80
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parserz/CSSTextParser.java101
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/parserz/CSSTextToken.java23
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/preferences/CSSCorePreferenceInitializer.java72
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/preferences/CSSCorePreferenceNames.java143
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/adapters/ICSSModelAdapter.java24
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/adapters/IModelProvideAdapter.java35
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/adapters/IStyleDeclarationAdapter.java25
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/adapters/IStyleSelectorAdapter.java33
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/adapters/IStyleSheetAdapter.java41
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/adapters/IStyleSheetListAdapter.java41
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/contenttype/ContentTypeIdForCSS.java30
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSAccess.java26
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSAttr.java40
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSCharsetRule.java23
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSDocument.java94
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSImportRule.java34
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSMediaRule.java22
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSModel.java46
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSNamedNodeMap.java26
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSNode.java68
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSNodeList.java26
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSPageRule.java22
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSPrimitiveValue.java46
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSRuleContainer.java60
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSSelector.java62
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSSelectorCombinator.java29
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSSelectorItem.java32
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSSelectorList.java62
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSSimpleSelector.java77
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSStyleDeclItem.java73
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSStyleDeclaration.java24
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSStyleRule.java22
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSStyleSheet.java47
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSValue.java26
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICSSValueList.java35
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/ICounter.java49
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/IDOMImplementationCSS.java23
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/document/IDocumentStyle.java62
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/preferences/CSSPreferenceHelper.java229
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/provisional/text/ICSSPartitionTypes.java25
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/tasks/CSSFileTaskScanner.java36
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/text/CSSStructuredDocumentReParser.java360
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/text/CSSStructuredDocumentRegionFactory.java39
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/text/StructuredDocumentWalker.java169
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/text/StructuredTextPartitionerForCSS.java37
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/AbstractCssTraverser.java181
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/CSSClassTraverser.java114
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/CSSLinkConverter.java188
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/CSSPathService.java77
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/CSSSelectorListFactory.java35
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/CSSStyleDeclarationFactory.java61
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/CSSUtil.java335
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/ImportRuleCollector.java71
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/ImportedCollector.java61
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/RegionIterator.java140
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/SelectionCollector.java76
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/SelectorValidator.java97
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/SelectorsCollector.java101
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/URLHelper.java210
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/URLModelProviderCSS.java387
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BackgroundPositionXSubStyleAdapter.java142
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BackgroundPositionYSubStyleAdapter.java150
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BackgroundShorthandAdapter.java179
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderBottomShorthandAdapter.java140
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderColorShorthandAdapter.java158
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderLeftShorthandAdapter.java140
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderRightShorthandAdapter.java140
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderShorthandAdapter.java140
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderStyleShorthandAdapter.java130
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderTopShorthandAdapter.java140
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/BorderWidthShorthandAdapter.java130
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/CSSPropertyContext.java2997
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ClipBottomSubStyleAdapter.java53
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ClipLeftSubStyleAdapter.java53
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ClipRightSubStyleAdapter.java53
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ClipSubStyleAdapter.java132
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ClipTopSubStyleAdapter.java53
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/FontShorthandAdapter.java240
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ICSS2Properties.java127
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/IShorthandAdapter.java31
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ISubPropertyAdapter.java29
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ListStyleShorthandAdapter.java110
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/MarginShorthandAdapter.java129
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/PaddingShorthandAdapter.java129
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/util/declaration/ValueData.java45
    -rw-r--r--bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/text/ICSSPartitions.java24
    -rw-r--r--bundles/org.eclipse.wst.css.ui/.classpath34
    -rw-r--r--bundles/org.eclipse.wst.css.ui/.cvsignore8
    -rw-r--r--bundles/org.eclipse.wst.css.ui/.options1
    -rw-r--r--bundles/org.eclipse.wst.css.ui/.project28
    -rw-r--r--bundles/org.eclipse.wst.css.ui/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--bundles/org.eclipse.wst.css.ui/.settings/org.eclipse.core.runtime.prefs3
    -rw-r--r--bundles/org.eclipse.wst.css.ui/.settings/org.eclipse.jdt.core.prefs79
    -rw-r--r--bundles/org.eclipse.wst.css.ui/.settings/org.eclipse.jdt.ui.prefs4
    -rw-r--r--bundles/org.eclipse.wst.css.ui/.settings/org.eclipse.ltk.core.refactoring.prefs3
    -rw-r--r--bundles/org.eclipse.wst.css.ui/.settings/org.eclipse.pde.prefs16
    -rw-r--r--bundles/org.eclipse.wst.css.ui/META-INF/MANIFEST.MF51
    -rw-r--r--bundles/org.eclipse.wst.css.ui/about.html34
    -rw-r--r--bundles/org.eclipse.wst.css.ui/build.properties23
    -rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/dtool16/newcss_wiz.gifbin231 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/etool16/newcss_wiz.gifbin356 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/aural_props.gifbin229 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/boxmodel_props.gifbin348 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/charset_rule.gifbin365 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/class_selector.gifbin338 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/colback_props.gifbin610 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/content_props.gifbin366 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/css_propertyname.gifbin612 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/css_propertyvalue_function.gifbin164 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/css_propertyvalue_identifier.gifbin314 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/css_propertyvalue_unit.gifbin218 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/font_props.gifbin120 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/fontface_rule.gifbin347 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/id_selector.gifbin374 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/link_rule.gifbin363 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/link_selector.gifbin339 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/media_rule.gifbin592 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/other_props.gifbin600 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/page_rule.gifbin586 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/pagedmedia_props.gifbin597 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/pseudo.gifbin588 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/sort.gifbin162 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/sourceEditor.gifbin353 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/style_rule.gifbin371 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/stylesheet.gifbin579 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/table_props.gifbin599 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/tag-template.gifbin205 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/tag_selector.gifbin346 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/text_props.gifbin601 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/ui_props.gifbin608 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/unknown_rule.gifbin365 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/obj16/visual_props.gifbin609 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/icons/full/wizban/newcssfile_wiz.pngbin4260 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.css.ui/plugin.properties66
    -rw-r--r--bundles/org.eclipse.wst.css.ui/plugin.xml483
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/StructuredTextViewerConfigurationCSS.java163
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/ActionContributorCSS.java121
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/CSSUIMessages.java126
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/CSSUIPlugin.java99
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/CSSUIPluginResources.properties115
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/Logger.java156
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/autoedit/StructuredAutoEditStrategyCSS.java595
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSCACandidate.java104
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSContentAssistContext.java416
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSContentAssistProcessor.java335
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSProposalArranger.java176
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSProposalGenerator.java233
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSProposalGeneratorForAtmarkRule.java294
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSProposalGeneratorForDeclarationName.java168
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSProposalGeneratorForDeclarationValue.java371
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSProposalGeneratorForHTMLTag.java157
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSProposalGeneratorForPseudoSelector.java139
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/CSSTemplateCompletionProcessor.java72
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentassist/HTML40Namespace.java890
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentoutline/CSSNodeAdapter.java593
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentoutline/JFaceNodeAdapterFactoryCSS.java37
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentproperties/ContentSettingsRegistry.java40
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentproperties/ui/CSSContentSettingsPropertyPage.java106
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/contentproperties/ui/CSSWebContentSettingsPropertyPage.java156
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/edit/ui/CleanupActionCSSDelegate.java134
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/edit/ui/CleanupDialogCSS.java292
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/editor/CSSEditorPluginImages.java54
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/editor/IHelpContextIds.java49
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/handlers/CleanupDocumentHandler.java120
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/handlers/StructuredSelectEnclosingHandler.java50
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/handlers/StructuredSelectNextHandler.java65
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/handlers/StructuredSelectPreviousHandler.java60
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/image/CSSImageHelper.java183
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/image/CSSImageType.java235
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/preferences/CSSUIPreferenceInitializer.java71
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/preferences/CSSUIPreferenceNames.java37
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/preferences/ui/CSSColorPage.java221
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/preferences/ui/CSSFilesPreferencePage.java67
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/preferences/ui/CSSSourcePreferencePage.java273
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/preferences/ui/CSSSyntaxColoringPage.java881
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/preferences/ui/CSSTemplatePreferencePage.java165
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/projection/ProjectionAnnotationModelChanges.java55
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/projection/ProjectionModelNodeAdapterCSS.java303
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/projection/ProjectionModelNodeAdapterFactoryCSS.java169
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/projection/ProjectionViewerInformation.java196
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/projection/StructuredTextFoldingProviderCSS.java260
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/properties/CSSPropertySource.java355
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/properties/CSSTextPropertyDescriptor.java112
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/registry/AdapterFactoryProviderCSS.java49
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/selection/StructuredSelectEnclosingCSSActionDelegate.java64
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/selection/StructuredSelectNextCSSActionDelegate.java81
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/selection/StructuredSelectPreviousCSSActionDelegate.java76
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/style/IStyleConstantsCSS.java31
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/style/LineStyleProviderForCSS.java198
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/style/LineStyleProviderForEmbeddedCSS.java127
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/templates/EncodingTemplateVariableResolverCSS.java38
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/templates/TemplateContextTypeCSS.java34
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/templates/TemplateContextTypeIdsCSS.java20
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/text/CSSDocumentRegionEdgeMatcher.java83
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/wizard/FacetModuleCoreSupport.java67
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/wizard/FacetModuleCoreSupportDelegate.java84
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/wizard/NewCSSFileWizardPage.java225
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/wizard/NewCSSTemplatesWizardPage.java507
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/wizard/NewCSSWizard.java145
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/contentoutline/CSSContentOutlineConfiguration.java121
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/contentoutline/JFaceNodeContentProviderCSS.java176
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/contentoutline/JFaceNodeLabelProviderCSS.java115
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/contentoutline/SortAction.java55
    -rw-r--r--bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/properties/CSSPropertySheetConfiguration.java193
    -rw-r--r--bundles/org.eclipse.wst.css.ui/templates/cssdefault-templates.properties12
    -rw-r--r--bundles/org.eclipse.wst.css.ui/templates/cssdefault-templates.xml16
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/.classpath11
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/.cvsignore8
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/.project26
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/.settings/org.eclipse.core.runtime.prefs3
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/.settings/org.eclipse.jdt.core.prefs79
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/.settings/org.eclipse.jdt.ui.prefs3
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/.settings/org.eclipse.ltk.core.refactoring.prefs3
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/.settings/org.eclipse.pde.prefs16
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/META-INF/MANIFEST.MF45
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/about.html34
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/build.properties27
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/component.xml15
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/contentmodel/org/eclipse/wst/dtd/core/internal/contentmodel/CMDocumentFactoryDTD.java44
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/contentmodel/org/eclipse/wst/dtd/core/internal/contentmodel/CMNodeImpl.java36
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/contentmodel/org/eclipse/wst/dtd/core/internal/contentmodel/DTDImpl.java775
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDAnyContent.java26
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDAttribute.java240
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDBasicType.java66
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDBasicTypeKind.java332
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDConstants.java21
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDContent.java63
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDDefaultKind.java194
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDElement.java126
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDElementContent.java112
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDElementReferenceContent.java59
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDEmptyContent.java26
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDEntity.java220
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDEntityContent.java65
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDEntityReferenceContent.java64
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDEnumGroupKind.java139
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDEnumerationType.java101
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDErrorMessage.java49
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDExtender.java19
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDExternalEntity.java151
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDFactory.java186
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDFile.java157
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDGroupContent.java88
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDGroupKind.java139
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDInternalEntity.java57
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDLexicalInfo.java99
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDNotation.java140
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDObject.java21
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDOccurrenceType.java193
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDPCDataContent.java25
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDPackage.java2392
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDParameterEntityReference.java61
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDRepeatableContent.java65
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDResource.java45
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDSourceOffset.java45
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDType.java31
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/XMLSchemaDefinedType.java471
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDAnyContentImpl.java181
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDAttributeImpl.java980
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDBasicTypeImpl.java427
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDContentImpl.java189
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDElementContentImpl.java377
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDElementImpl.java654
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDElementReferenceContentImpl.java242
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDEmptyContentImpl.java172
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDEntityContentImpl.java193
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDEntityImpl.java1198
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDEntityReferenceContentImpl.java323
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDEnumerationTypeImpl.java362
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDExternalEntityImpl.java400
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDFactoryImpl.java448
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDFileImpl.java821
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDGroupContentImpl.java292
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDIdHelper.java88
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDInternalEntityImpl.java239
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDNotationImpl.java904
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDPCDataContentImpl.java171
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDPackageImpl.java1215
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDParameterEntityReferenceImpl.java610
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDRepeatableContentImpl.java265
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDAdapterFactory.java440
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDMetrics.java125
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDModelBuilder.java1844
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDObjectFinder.java173
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDPathnameUtil.java352
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDPrinter.java525
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDResourceFactoryImpl.java79
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDResourceImpl.java166
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDSwitch.java489
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDUniqueNameHelper.java174
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDUtil.java1217
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDVisitor.java315
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/ExternalDTDModel.java85
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/rose/DTD.cat3812
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/emfmodel/rose/dtdmodel.mdl7526
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/DTDFile.gifbin351 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/any.gifbin136 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/attribute.gifbin167 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/attribute_list.gifbin366 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/comment.gifbin196 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/element.gifbin353 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/element_ref.gifbin585 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/emptycontent.gifbin156 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/entity.gifbin124 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/entity_reference.gifbin316 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/fldr_el.gifbin366 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/fldr_ent.gifbin339 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/fldr_not.gifbin341 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/fldr_unrec.gifbin382 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/folder_attlist_obj.gifbin369 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/folder_comments_obj.gifbin358 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/genhtmform_wiz.gifbin3357 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/notation.gifbin177 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/one.gifbin141 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/onechoice.gifbin145 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/oneormore.gifbin145 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/oneormorechoice.gifbin139 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/oneormoresequence.gifbin147 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/onesequence.gifbin91 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/optional.gifbin149 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/optionalchoice.gifbin140 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/optionalsequence.gifbin149 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/txtext.gifbin349 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/unrecognized_content.gifbin356 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/zeroormore.gifbin140 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/zeroormorechoice.gifbin135 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/icons/full/obj16/zeroormoresequence.gifbin146 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.core/plugin.properties21
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/plugin.xml141
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/AttNode.java95
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/Attlist.java146
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/BaseNode.java66
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/CMBasicNode.java42
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/CMGroupNode.java62
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/CMNode.java30
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/CMNodeType.java30
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/CMReferenceNode.java38
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/CMRepeatableNode.java34
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/DTD.java89
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/DTDParser.java768
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/DTDSaxArtifactVisitor.java64
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/DTDScanner.java1128
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/DeclNode.java103
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/ElementDecl.java33
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/EntityDecl.java242
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/EntityPool.java72
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/ErrorMessage.java114
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/ExternalID.java154
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/NotationDecl.java77
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/StringParser.java485
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/TString.java350
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/XMLCharacterProperties.java448
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src-validation/org/eclipse/wst/dtd/core/internal/validation/DTDValidationMessages.java37
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src-validation/org/eclipse/wst/dtd/core/internal/validation/DTDValidationResources.properties27
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src-validation/org/eclipse/wst/dtd/core/internal/validation/DTDValidator.java449
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src-validation/org/eclipse/wst/dtd/core/internal/validation/ElementRefLocation.java86
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src-validation/org/eclipse/wst/dtd/core/internal/validation/eclipse/DTDValidator.java50
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src-validation/org/eclipse/wst/dtd/core/internal/validation/eclipse/Validator.java38
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Attribute.java376
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/AttributeEnumList.java72
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/AttributeList.java118
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/CMBasicNode.java165
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/CMGroupNode.java430
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/CMNode.java135
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/CMRepeatableNode.java81
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Comment.java75
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/DTDCoreMessages.java95
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/DTDCorePlugin.java57
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/DTDCorePluginResources.properties127
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/DTDFile.java682
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/DTDNode.java330
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/DTDResource.java56
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Element.java205
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Entity.java333
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/ExternalNode.java250
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Logger.java143
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/NamedTopLevelNode.java135
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/NodeList.java109
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Notation.java29
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/ParameterEntityReference.java112
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/TopLevelNode.java84
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Unrecognized.java39
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/content/ContentDescriberForDTD.java206
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/document/DTDModelImpl.java273
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/encoding/AbstractResourceEncodingDetector.java261
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/encoding/ByteReader.java109
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/encoding/DTDDocumentCharsetDetector.java61
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/encoding/DTDDocumentLoader.java74
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/encoding/NullMemento.java36
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/event/IDTDFileListener.java24
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/event/NodesEvent.java32
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/modelhandler/DTDModelLoader.java47
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/modelhandler/ModelHandlerForDTD.java46
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/parser/DTDRegionFactory.java28
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/parser/DTDRegionParser.java271
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/parser/DTDRegionTypes.java76
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/preferences/DTDCorePreferenceInitializer.java35
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/preferences/DTDCorePreferenceNames.java32
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/provisional/contenttype/ContentTypeIdForDTD.java47
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/provisional/document/DTDModel.java27
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/provisional/text/IDTDPartitionTypes.java24
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/tasks/DTDFileTaskScanner.java28
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/text/DTDStructuredDocumentReParser.java41
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/text/DTDStructuredDocumentRegionFactory.java33
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/text/RegionIterator.java84
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/text/StructuredTextPartitionerForDTD.java42
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/tokenizer/DTDTokenizer.java1090
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/tokenizer/Token.java61
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/tokenizer/Yytoken.java89
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/tokenizer/dtd.flex327
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/tokenizer/dtdskeleton317
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDBatchNodeDelete.java57
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDExternalReferenceRemover.java134
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDModelUpdater.java135
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDNotationReferenceRemover.java93
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDReferenceUpdater.java196
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDUniqueNameHelper.java95
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDVisitor.java108
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/LabelValuePair.java30
    -rw-r--r--bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/text/IDTDPartitions.java24
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/.classpath12
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/.cvsignore8
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/.options1
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/.project26
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/.settings/org.eclipse.core.runtime.prefs3
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/.settings/org.eclipse.jdt.core.prefs79
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/.settings/org.eclipse.jdt.ui.prefs4
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/.settings/org.eclipse.ltk.core.refactoring.prefs3
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/.settings/org.eclipse.pde.prefs16
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/META-INF/MANIFEST.MF41
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/about.html34
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/build.properties27
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/DTDFile.gifbin351 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/browsebutton.gifbin825 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/ctool16/ADD_Attribute.gifbin167 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/ctool16/ADD_Element.gifbin353 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/ctool16/ADD_ElementToConModel.gifbin336 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/ctool16/ADD_GroupToConModel.gifbin205 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/dtool16/ADD_Attribute.gifbin164 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/dtool16/ADD_Element.gifbin225 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/dtool16/ADD_ElementToConModel.gifbin320 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/dtool16/ADD_GroupToConModel.gifbin114 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/dtool16/newdtd_wiz.gifbin234 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/etool16/ADD_Attribute.gifbin167 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/etool16/ADD_Element.gifbin353 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/etool16/ADD_ElementToConModel.gifbin336 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/etool16/ADD_GroupToConModel.gifbin205 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/etool16/generate_xml.gifbin604 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/etool16/newdtd_wiz.gifbin360 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/ADD_Comment.gifbin196 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/ADD_Entity.gifbin124 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/ADD_Entity_Reference.gifbin318 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/ADD_Notation.gifbin177 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/DTDFile.gifbin159 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/newdtd_wiz.gifbin3294 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/organize_dtd_logically.gifbin347 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/sort.gifbin162 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/sourceEditor.gifbin353 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/validate.gifbin358 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/icons/full/wizban/newdtdfile_wiz.pngbin4194 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.dtd.ui/plugin.properties62
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/plugin.xml475
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src-properties/org/eclipse/wst/dtd/ui/internal/DTDEditor.java102
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src-properties/org/eclipse/wst/dtd/ui/internal/DTDPropertiesMessages.java117
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src-properties/org/eclipse/wst/dtd/ui/internal/DTDPropertiesMessages.properties86
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src-properties/org/eclipse/wst/dtd/ui/internal/DTDTabbedPropertySheetPage.java49
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src-properties/org/eclipse/wst/dtd/ui/internal/properties/section/AbstractSection.java334
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src-properties/org/eclipse/wst/dtd/ui/internal/properties/section/AttributeDefaultSection.java152
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src-properties/org/eclipse/wst/dtd/ui/internal/properties/section/CommentSection.java76
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src-properties/org/eclipse/wst/dtd/ui/internal/properties/section/ContentModelGroupSection.java95
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src-properties/org/eclipse/wst/dtd/ui/internal/properties/section/ContentModelNameFilter.java21
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src-properties/org/eclipse/wst/dtd/ui/internal/properties/section/ContentModelNameSection.java110
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src-properties/org/eclipse/wst/dtd/ui/internal/properties/section/ContentModelTypeFilter.java26
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src-properties/org/eclipse/wst/dtd/ui/internal/properties/section/ContentModelTypeSection.java123
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src-properties/org/eclipse/wst/dtd/ui/internal/properties/section/DTDSectionLabelProvider.java139
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src-properties/org/eclipse/wst/dtd/ui/internal/properties/section/DTDSelectIncludeFileWizard.java79
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src-properties/org/eclipse/wst/dtd/ui/internal/properties/section/DTDTypeMapper.java24
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src-properties/org/eclipse/wst/dtd/ui/internal/properties/section/DocumentSection.java101
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src-properties/org/eclipse/wst/dtd/ui/internal/properties/section/EmptySection.java50
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src-properties/org/eclipse/wst/dtd/ui/internal/properties/section/EntityTypeSection.java141
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src-properties/org/eclipse/wst/dtd/ui/internal/properties/section/EntityValueSection.java185
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src-properties/org/eclipse/wst/dtd/ui/internal/properties/section/NameSection.java96
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src-properties/org/eclipse/wst/dtd/ui/internal/properties/section/NewEntitySection.java376
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src-properties/org/eclipse/wst/dtd/ui/internal/properties/section/NotationSection.java131
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src-properties/org/eclipse/wst/dtd/ui/internal/properties/section/OccurrenceFilter.java26
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src-properties/org/eclipse/wst/dtd/ui/internal/properties/section/OccurrenceSection.java105
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src-properties/org/eclipse/wst/dtd/ui/internal/properties/section/TypeSection.java92
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/StructuredTextViewerConfigurationDTD.java70
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/DTDUIMessages.java80
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/DTDUIPlugin.java99
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/DTDUIPluginResources.properties89
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/Logger.java143
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/dnd/DTDDragAndDropManager.java46
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/dnd/DragAttributeCommand.java61
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/dnd/DragContentModelCommand.java113
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/dnd/DragTopLevelNodesCommand.java64
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/editor/ActionContributorDTD.java77
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/editor/DTDEditorPluginImageHelper.java157
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/editor/DTDEditorPluginImages.java44
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/editor/IHelpContextIds.java43
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/preferences/DTDColorPage.java171
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/preferences/DTDFilesPreferencePage.java160
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/preferences/DTDSyntaxColoringPage.java855
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/preferences/DTDTemplatePreferencePage.java167
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/preferences/DTDUIPreferenceInitializer.java65
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/preferences/DTDUIPreferenceNames.java37
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/projection/StructuredTextFoldingProviderDTD.java563
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/registry/AdapterFactoryProviderForDTD.java53
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/style/IStyleConstantsDTD.java41
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/style/LineStyleProviderForDTD.java133
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/style/LineStyleProviderForDTDSubSet.java159
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/templates/TemplateContextTypeDTD.java36
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/templates/TemplateContextTypeIdsDTD.java17
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/text/DTDDocumentRegionEdgeMatcher.java28
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddAttributeAction.java56
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddAttributeListAction.java44
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddCommentAction.java32
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddElementAction.java33
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddElementToContentModelAction.java52
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddEntityAction.java35
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddGroupToContentModelAction.java39
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddNotationAction.java34
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddParameterEntityReferenceAction.java49
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/BaseAction.java67
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/DeleteAction.java70
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/ReplaceEmptyContentModelWithGroupAction.java44
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/properties/DTDPropertySourceAdapter.java130
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/properties/DTDPropertySourceAdapterFactory.java42
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/wizard/NewDTDTemplatesWizardPage.java508
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/wizard/NewDTDWizard.java277
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/views/contentoutline/DTDContentOutlineConfiguration.java282
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/views/contentoutline/DTDContextMenuHelper.java284
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/views/contentoutline/DTDLabelProvider.java94
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/views/contentoutline/DTDTreeContentProvider.java349
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/views/contentoutline/OrderAction.java57
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/views/contentoutline/SortAction.java55
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/templates/dtddefault-templates.properties13
    -rw-r--r--bundles/org.eclipse.wst.dtd.ui/templates/dtddefault-templates.xml16
    -rw-r--r--bundles/org.eclipse.wst.html.core/.classpath12
    -rw-r--r--bundles/org.eclipse.wst.html.core/.cvsignore8
    -rw-r--r--bundles/org.eclipse.wst.html.core/.options2
    -rw-r--r--bundles/org.eclipse.wst.html.core/.project28
    -rw-r--r--bundles/org.eclipse.wst.html.core/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--bundles/org.eclipse.wst.html.core/.settings/org.eclipse.core.runtime.prefs3
    -rw-r--r--bundles/org.eclipse.wst.html.core/.settings/org.eclipse.jdt.core.prefs79
    -rw-r--r--bundles/org.eclipse.wst.html.core/.settings/org.eclipse.jdt.ui.prefs4
    -rw-r--r--bundles/org.eclipse.wst.html.core/.settings/org.eclipse.ltk.core.refactoring.prefs3
    -rw-r--r--bundles/org.eclipse.wst.html.core/.settings/org.eclipse.pde.prefs16
    -rw-r--r--bundles/org.eclipse.wst.html.core/META-INF/MANIFEST.MF40
    -rw-r--r--bundles/org.eclipse.wst.html.core/about.html34
    -rw-r--r--bundles/org.eclipse.wst.html.core/build.properties23
    -rw-r--r--bundles/org.eclipse.wst.html.core/component.xml15
    -rw-r--r--bundles/org.eclipse.wst.html.core/data/htmref.properties108
    -rw-r--r--bundles/org.eclipse.wst.html.core/data/htmref.xml306
    -rw-r--r--bundles/org.eclipse.wst.html.core/plugin.properties16
    -rw-r--r--bundles/org.eclipse.wst.html.core/plugin.xml213
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/HTMLContentBuilder.java71
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/HTMLCoreMessages.java63
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/HTMLCorePlugin.java62
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/HTMLCorePluginResources.properties43
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/Logger.java144
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/AbstractNodeCleanupHandler.java83
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/CSSTextNodeCleanupHandler.java89
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/ElementNodeCleanupHandler.java695
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/HTMLCleanupHandlerFactory.java104
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/HTMLCleanupProcessorImpl.java68
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/JSPElementNodeCleanupHandler.java30
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/cleanup/NodeCleanupHandler.java22
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/commentelement/handlers/CommentElementHandlerForSSI.java150
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/AttributeCollection.java1285
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CMContentImpl.java58
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CMGroupImpl.java83
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CMNamedNodeMapImpl.java114
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CMNamespaceImpl.java59
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CMNodeImpl.java65
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CMNodeListImpl.java62
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/ComplexTypeDefinition.java75
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/ComplexTypeDefinitionFactory.java183
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdAddress.java71
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdColumnGroup.java69
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdDl.java69
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdEmbed.java65
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdFieldset.java74
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdFlowContainer.java49
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdFrameset.java93
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdHead.java175
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdHtml.java334
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdInlineContainer.java50
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdLiContainer.java69
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdMap.java72
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdNoframesContent.java65
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdOptionContainer.java70
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdParamContainer.java71
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdSelect.java69
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdTable.java140
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdTableCellContainer.java74
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/CtdTrContainer.java69
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/DeclCollection.java244
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/ElementCollection.java881
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/EntityCollection.java837
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HCMDocImpl.java83
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLAttrDeclImpl.java122
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLAttributeDeclaration.java24
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLCMDataType.java66
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLCMDataTypeImpl.java125
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLCMDocument.java35
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLCMDocumentFactory.java93
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLCMNode.java32
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLElemDeclImpl.java366
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLElementDeclaration.java80
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLEntityDeclImpl.java76
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLEntityDeclaration.java22
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTMLPropertyDeclaration.java102
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedA.java99
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedADDRESS.java58
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedAPPLET.java68
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedAREA.java61
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBASE.java50
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBASEFONT.java57
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBDO.java61
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBGSOUND.java47
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBLOCKQUOTE.java63
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBODY.java96
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBR.java51
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedBUTTON.java101
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedCAPTION.java48
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedCENTER.java56
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedCOL.java67
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedCOLGROUP.java74
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedDD.java59
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedDIV.java63
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedDL.java64
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedDT.java59
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedEMBED.java94
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedEmpty.java49
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFIELDSET.java57
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFONT.java62
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFORM.java92
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFRAME.java62
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFRAMESET.java80
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFlowContainer.java26
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFontStyle.java64
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedHEAD.java78
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedHR.java77
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedHTML.java80
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedHeading.java84
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedIFRAME.java76
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedIMG.java88
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedINPUT.java122
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedISINDEX.java65
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedInlineContainer.java29
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedLABEL.java93
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedLEGEND.java54
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedLI.java71
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedLINK.java63
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedListItemContainer.java30
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedMAP.java53
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedMARQUEE.java81
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedMENU.java88
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedMETA.java59
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedMarkChanges.java50
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedNOBR.java33
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedNOEMBED.java42
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedNOFRAMES.java79
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedNOSCRIPT.java56
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedOBJECT.java86
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedOL.java70
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedOPTGROUP.java55
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedOPTION.java66
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedP.java104
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedPARAM.java57
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedPRE.java91
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedPcdata.java47
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedPhrase.java41
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedQ.java49
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSCRIPT.java81
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSELECT.java79
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSPAN.java44
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIBase.java50
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIConfig.java48
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIEcho.java46
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIExec.java47
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIFlastmod.java47
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIFsize.java47
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIInclude.java47
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSIPrintenv.java49
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSSISet.java47
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedSTYLE.java79
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedScripts.java56
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedTABLE.java90
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedTEXTAREA.java77
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedTITLE.java68
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedTR.java74
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedTableBody.java73
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedTableCell.java80
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedUL.java73
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedWBR.java32
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/JCM20DocImpl.java26
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/JCMDocImpl.java77
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/JSP11Namespace.java112
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/JSP20ElementCollection.java491
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/JSP20Namespace.java97
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/JSPCMDocument.java28
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/JSPElementCollection.java900
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/PropertyProvider.java23
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/PropertyProviderFactory.java360
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/Tag20ElementCollection.java693
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/TagCMDocImpl.java23
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/AttributeCollection.java314
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CHCMDocImpl.java80
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CHTMLNamespace.java152
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CMContentImpl.java56
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CMGroupImpl.java83
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CMNamedNodeMapImpl.java112
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CMNodeImpl.java64
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CMNodeListImpl.java59
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/ComplexTypeDefinition.java76
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/ComplexTypeDefinitionFactory.java144
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdAddress.java70
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdDl.java68
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdFlowContainer.java49
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdHead.java174
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdHtml.java74
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdInlineContainer.java50
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdLiContainer.java68
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdOptionContainer.java69
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/CtdSelect.java64
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/DeclCollection.java251
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/ElementCollection.java492
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/EntityCollection.java837
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HTMLAttrDeclImpl.java118
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HTMLCMDataTypeImpl.java126
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HTMLCMNode.java32
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HTMLElemDeclImpl.java369
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HTMLEntityDeclImpl.java77
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedA.java98
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedADDRESS.java57
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedBASE.java47
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedBLOCKQUOTE.java57
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedBODY.java68
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedBR.java51
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedCENTER.java55
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedDD.java56
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedDIV.java62
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedDL.java59
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedDT.java56
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedEmpty.java49
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedFORM.java91
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedFlowContainer.java26
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedHEAD.java71
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedHR.java75
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedHTML.java80
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedHeading.java84
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedIMG.java87
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedINPUT.java108
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedInlineContainer.java29
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedLI.java58
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedListItemContainer.java30
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedMENU.java86
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedMETA.java67
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedOL.java58
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedOPTION.java63
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedP.java104
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedPRE.java90
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedPcdata.java47
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSELECT.java65
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIBase.java52
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIConfig.java45
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIEcho.java43
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIExec.java44
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIFlastmod.java44
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIFsize.java44
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIInclude.java44
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSIPrintenv.java48
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedSSISet.java44
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedTEXTAREA.java62
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedTITLE.java68
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/HedUL.java57
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/PropertyProvider.java26
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/chtml/PropertyProviderFactory.java364
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/ssi/SSICMDocumentFactory.java158
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentproperties/HTMLContentProperties.java194
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentproperties/HTMLContentPropertiesManager.java238
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/AbstractResourceEncodingDetector.java261
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/ByteReader.java109
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/ContentDescriberForHTML.java231
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/EncodingGuesser.java173
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/HTMLHeadTokenizer.java1981
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/HTMLHeadTokenizerConstants.java20
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/HTMLResourceEncodingDetector.java186
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/HeadParserToken.java44
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/IntStack.java99
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/NullMemento.java37
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/DOMStyleModelImpl.java67
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/DocumentStyleImpl.java96
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/ElementStyleImpl.java73
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLConverter.java302
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLDocumentTypeAdapter.java257
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLDocumentTypeAdapterFactory.java170
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLDocumentTypeConstants.java19
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLDocumentTypeEntry.java136
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLDocumentTypeRegistry.java142
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLDocumentTypeRegistryReader.java107
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLModelParserAdapter.java356
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/HTMLModelParserAdapterFactory.java83
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/MetaData.java28
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/MetaDataAdapter.java301
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/TagScanner.java166
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/document/UnknownTagAdapter.java82
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/encoding/HTMLDocumentCharsetDetector.java42
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/encoding/HTMLDocumentLoader.java165
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/encoding/HTMLModelLoader.java112
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/EmbeddedCSSFormatter.java94
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/HTMLElementFormatter.java394
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/HTMLFormatContraintsImpl.java42
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/HTMLFormatProcessorImpl.java61
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/HTMLFormatter.java749
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/HTMLFormatterFactory.java109
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/HTMLTextFormatter.java299
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/format/SpaceConverter.java235
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/AbstractCSSModelAdapter.java105
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/AbstractStyleSheetAdapter.java249
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/CSSQueryContext.java137
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/CSSQueryDeclarationData.java44
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/CSSQueryTraverser.java115
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/CSSQueryValueData.java47
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/HTMLDocumentAdapter.java398
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/HTMLStyleSelectorAdapter.java141
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/HTMLStyleSelectorAdapterFactory.java77
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/LinkElementAdapter.java275
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/StyleAdapterFactory.java162
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/StyleAttrAdapter.java248
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/StyleElementAdapter.java453
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/StyleListener.java22
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/URLHelper.java33
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/htmlcss/URLModelProvider.java451
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelhandler/EmbeddedHTML.java166
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelhandler/ModelHandlerForHTML.java55
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/CMAttributeDeclarationBuddySystem.java67
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/CMDocumentForBuddySystem.java119
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/CMElementDeclarationBuddySystem.java201
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/CMNamedNodeMapForBuddySystem.java116
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/CMNodeBuddySystem.java74
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/DocumentQuery.java200
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/ElementDeclarationAdapter.java29
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/ElementDeclarationAdapterFactory.java68
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/HMQUtil.java121
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/HTMLElementDeclarationAdapter.java54
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/HTMLModelQueryAssociationProvider.java54
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/HTMLModelQueryCMProvider.java117
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/HTMLModelQueryImpl.java156
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/ModelQueryAdapterFactoryForEmbeddedHTML.java47
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/ModelQueryAdapterFactoryForHTML.java247
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/modelquery/XHTMLAssociationProvider.java209
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/preferences/HTMLCorePreferenceInitializer.java125
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/preferences/HTMLCorePreferenceNames.java278
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/HTML40Namespace.java675
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/HTMLCMProperties.java116
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/HTMLFilesPreferenceNames.java33
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/HTMLFormatContraints.java35
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/PreferenceNames.java35
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/contenttype/ContentTypeFamilyForHTML.java40
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/contenttype/ContentTypeIdForHTML.java40
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/provisional/text/IHTMLPartitionTypes.java31
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/text/StructuredTextPartitionerForHTML.java268
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/AbstractErrorInfo.java42
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/CMUtil.java200
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/CompositeValidator.java74
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/DocumentPropagatingValidator.java52
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/ElementPropagatingValidator.java44
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/ErrorInfoImpl.java57
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/ErrorState.java42
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/FMUtil.java120
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLAttributeValidator.java294
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLDocumentContentValidator.java196
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLElementAncestorValidator.java70
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLElementContentValidator.java223
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLSimpleDocumentValidator.java39
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLSimpleValidator.java42
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/HTMLValidationAdapterFactory.java72
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/MessageFactory.java386
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/ModuleCoreSupport.java198
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/ModuleCoreSupportDelegate.java151
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/NamespaceValidator.java132
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/NullValidator.java34
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/PrimeValidator.java25
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/SMUtil.java36
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/Segment.java64
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/validate/SyntaxValidator.java348
    -rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/text/IHTMLPartitions.java32
    -rw-r--r--bundles/org.eclipse.wst.html.ui/.classpath12
    -rw-r--r--bundles/org.eclipse.wst.html.ui/.cvsignore7
    -rw-r--r--bundles/org.eclipse.wst.html.ui/.options1
    -rw-r--r--bundles/org.eclipse.wst.html.ui/.project28
    -rw-r--r--bundles/org.eclipse.wst.html.ui/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--bundles/org.eclipse.wst.html.ui/.settings/org.eclipse.core.runtime.prefs3
    -rw-r--r--bundles/org.eclipse.wst.html.ui/.settings/org.eclipse.jdt.core.prefs79
    -rw-r--r--bundles/org.eclipse.wst.html.ui/.settings/org.eclipse.jdt.ui.prefs4
    -rw-r--r--bundles/org.eclipse.wst.html.ui/.settings/org.eclipse.ltk.core.refactoring.prefs3
    -rw-r--r--bundles/org.eclipse.wst.html.ui/.settings/org.eclipse.pde.prefs16
    -rw-r--r--bundles/org.eclipse.wst.html.ui/META-INF/MANIFEST.MF52
    -rw-r--r--bundles/org.eclipse.wst.html.ui/about.html34
    -rw-r--r--bundles/org.eclipse.wst.html.ui/build.properties23
    -rw-r--r--bundles/org.eclipse.wst.html.ui/icons/full/dtool16/newhtml_wiz.gifbin232 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.html.ui/icons/full/etool16/newhtml_wiz.gifbin352 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.html.ui/icons/full/obj16/sourceEditor.gifbin353 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.html.ui/icons/full/obj16/table.gifbin573 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-anchor.gifbin197 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-body.gifbin343 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-button.gifbin344 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-font.gifbin229 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-form.gifbin353 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-generic.gifbin98 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-html.gifbin570 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-image-map.gifbin577 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-image.gifbin601 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-jsp.gifbin135 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-template.gifbin205 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-title.gifbin581 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag.gifbin82 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.html.ui/icons/full/wizban/newhfile_wiz.pngbin3833 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.html.ui/plugin.properties75
    -rw-r--r--bundles/org.eclipse.wst.html.ui/plugin.xml624
    -rw-r--r--bundles/org.eclipse.wst.html.ui/schema/deviceProfileEntryProvider.exsd109
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/internal/validation/HTMLValidationReporter.java150
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/internal/validation/HTMLValidationResult.java64
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/internal/validation/HTMLValidationWorkbenchHelper.java47
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/internal/validation/HTMLValidator.java559
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/internal/validation/LocalizedMessage.java65
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/internal/validation/TaskListHelper.java44
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/internal/validation/TaskListUtility.java436
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/StructuredTextViewerConfigurationHTML.java279
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/HTMLUIMessages.java203
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/HTMLUIPlugin.java98
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/HTMLUIPluginResources.properties175
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/Logger.java160
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/autoedit/AutoEditStrategyForTabs.java188
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/autoedit/StructuredAutoEditStrategyHTML.java176
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/CustomTemplateProposal.java40
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/HTMLContentAssistProcessor.java508
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/HTMLMinimalContentModelGenerator.java130
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/HTMLTemplateCompletionProcessor.java164
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/NoRegionContentAssistProcessorForHTML.java38
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/ReplaceNameTemplateContext.java104
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/XHTMLMinimalContentModelGenerator.java83
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentoutline/HTMLNodeActionManager.java129
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentoutline/JFaceNodeAdapterFactoryForHTML.java50
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentoutline/JFaceNodeAdapterForHTML.java76
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentproperties/ui/AbstractDeviceProfileEntry.java33
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentproperties/ui/AbstractDeviceProfileEntryProvider.java32
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentproperties/ui/ContentSettingsRegistry.java173
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentproperties/ui/DeviceProfileEntry.java27
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentproperties/ui/DeviceProfileEntryProvider.java28
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentproperties/ui/DeviceProfileEntryProviderBuilder.java59
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentproperties/ui/HTMLContentSettingsPropertyPage.java280
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentproperties/ui/ProjectContentSettingsPropertyPage.java282
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentproperties/ui/ProjectWebContentSettingsPropertyPage.java19
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentproperties/ui/WebContentSettingsPropertyPage.java383
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/correction/CorrectionAssistantProviderHTML.java54
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/derived/SingleCharReader.java67
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/edit/ui/ActionContributorHTML.java29
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/edit/ui/CleanupActionHTMLDelegate.java162
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/edit/ui/CleanupDialogHTML.java318
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/edit/ui/CleanupDocumentHandler.java137
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/editor/HTMLEditorPluginImageHelper.java148
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/editor/HTMLEditorPluginImages.java32
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/editor/IHelpContextIds.java49
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/handlers/HTMLFindOccurrencesHandler.java148
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/hyperlink/AnchorHyperlinkDetector.java511
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/HTMLUIPreferenceInitializer.java117
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/HTMLUIPreferenceNames.java92
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/ui/AbstractValidationSettingsPage.java398
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/ui/EmptyFilePreferencePage.java100
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/ui/HTMLColorPage.java127
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/ui/HTMLFilesPreferencePage.java127
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/ui/HTMLSourcePreferencePage.java331
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/ui/HTMLSyntaxColoringPage.java874
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/ui/HTMLTemplatePreferencePage.java157
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/ui/HTMLTypingPreferencePage.java105
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/ui/HTMLValidationPreferencePage.java335
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/ui/PropertyPreferencePage.java300
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/projection/ProjectionAnnotationModelChanges.java54
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/projection/ProjectionModelNodeAdapterFactoryHTML.java205
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/projection/ProjectionModelNodeAdapterHTML.java291
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/projection/ProjectionViewerInformation.java196
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/projection/StructuredTextFoldingProviderHTML.java350
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/registry/AdapterFactoryProviderForHTML.java66
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/search/HTMLFindOccurrencesActionDelegate.java34
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/search/HTMLFindOccurrencesProcessor.java32
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/style/IStyleConstantsHTML.java22
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/style/LineStyleProviderForHTML.java80
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/taginfo/HTMLInformationProvider.java65
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/taginfo/HTMLTagInfoHoverProcessor.java28
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/templates/EncodingTemplateVariableResolverHTML.java38
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/templates/TemplateContextTypeHTML.java34
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/templates/TemplateContextTypeIdsHTML.java50
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/text/HTMLDocumentRegionEdgeMatcher.java26
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/text/IJavaPartitions.java54
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/text/JavaCodeReader.java244
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/text/JavaHeuristicScanner.java986
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/text/JavaPairMatcher.java277
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/text/Symbols.java57
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/wizard/FacetModuleCoreSupport.java65
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/wizard/FacetModuleCoreSupportDelegate.java84
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/wizard/NewHTMLFileWizardPage.java224
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/wizard/NewHTMLTemplatesWizardPage.java507
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/wizard/NewHTMLWizard.java145
    -rw-r--r--bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/views/contentoutline/HTMLContentOutlineConfiguration.java44
    -rw-r--r--bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates.properties51
    -rw-r--r--bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates.xml46
    -rw-r--r--bundles/org.eclipse.wst.jsdt.web.support.jsp/.classpath7
    -rw-r--r--bundles/org.eclipse.wst.jsdt.web.support.jsp/.cvsignore4
    -rw-r--r--bundles/org.eclipse.wst.jsdt.web.support.jsp/.project28
    -rw-r--r--bundles/org.eclipse.wst.jsdt.web.support.jsp/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--bundles/org.eclipse.wst.jsdt.web.support.jsp/.settings/org.eclipse.core.runtime.prefs3
    -rw-r--r--bundles/org.eclipse.wst.jsdt.web.support.jsp/.settings/org.eclipse.jdt.core.prefs80
    -rw-r--r--bundles/org.eclipse.wst.jsdt.web.support.jsp/.settings/org.eclipse.jdt.ui.prefs4
    -rw-r--r--bundles/org.eclipse.wst.jsdt.web.support.jsp/.settings/org.eclipse.ltk.core.refactoring.prefs3
    -rw-r--r--bundles/org.eclipse.wst.jsdt.web.support.jsp/.settings/org.eclipse.pde.prefs16
    -rw-r--r--bundles/org.eclipse.wst.jsdt.web.support.jsp/META-INF/MANIFEST.MF24
    -rw-r--r--bundles/org.eclipse.wst.jsdt.web.support.jsp/about.html28
    -rw-r--r--bundles/org.eclipse.wst.jsdt.web.support.jsp/build.properties7
    -rw-r--r--bundles/org.eclipse.wst.jsdt.web.support.jsp/plugin.properties3
    -rw-r--r--bundles/org.eclipse.wst.jsdt.web.support.jsp/plugin.xml23
    -rw-r--r--bundles/org.eclipse.wst.jsdt.web.support.jsp/src/org/eclipse/wst/jsdt/web/support/jsp/Activator.java70
    -rw-r--r--bundles/org.eclipse.wst.jsdt.web.support.jsp/src/org/eclipse/wst/jsdt/web/support/jsp/JSDTStructuredTextViewerConfigurationJSP.java129
    -rw-r--r--bundles/org.eclipse.wst.sse.core/.classpath14
    -rw-r--r--bundles/org.eclipse.wst.sse.core/.cvsignore9
    -rw-r--r--bundles/org.eclipse.wst.sse.core/.options19
    -rw-r--r--bundles/org.eclipse.wst.sse.core/.project28
    -rw-r--r--bundles/org.eclipse.wst.sse.core/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--bundles/org.eclipse.wst.sse.core/.settings/org.eclipse.core.runtime.prefs3
    -rw-r--r--bundles/org.eclipse.wst.sse.core/.settings/org.eclipse.jdt.core.prefs80
    -rw-r--r--bundles/org.eclipse.wst.sse.core/.settings/org.eclipse.jdt.ui.prefs4
    -rw-r--r--bundles/org.eclipse.wst.sse.core/.settings/org.eclipse.ltk.core.refactoring.prefs3
    -rw-r--r--bundles/org.eclipse.wst.sse.core/.settings/org.eclipse.pde.prefs16
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/CSSHeadTokenizer/CSSHeadTokenizer.jFlex279
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/CSSHeadTokenizer/CSSHeadTokenizer.java1441
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/CSSHeadTokenizer/CSSHeadTokenizerGenJava.cmd23
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/CSSHeadTokenizer/jflexerr.txt0
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/CSSHeadTokenizer/jflexout.txt6
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/HTMLHeadTokenizer/HTMLHeadTokenizer.jFlex292
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/HTMLHeadTokenizer/HTMLHeadTokenizer.java1206
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/HTMLHeadTokenizer/HTMLHeadTokenizerGenJava.cmd23
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/HTMLHeadTokenizer/jflexerr.txt0
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/HTMLHeadTokenizer/jflexout.txt8
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/XML10Names/XML10Names.jFlex98
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/XML10Names/XML10Names.java595
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/XML10Names/XML10NamesGenJavaJFlex14.cmd25
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/XML10Names/jflexerr.txt0
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/XML10Names/jflexout.txt6
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/XMLHeadTokenizer/XMLHeadTokenizer.jFlex260
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/XMLHeadTokenizer/XMLHeadTokenizer.java905
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/XMLHeadTokenizer/XMLHeadTokenizerGenJava.cmd28
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/XMLHeadTokenizer/jflexerr.txt0
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/XMLHeadTokenizer/jflexout.txt8
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/XMLHeadTokenizer/oldXMLHeadTokenizer.skeleton263
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/SedModel/CSSTokenizer/devel/CSSTokenizer.jflex520
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/SedModel/CSSTokenizer/devel/flex.cmd6
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/SedModel/HTMLTokenizer/README9
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/SedModel/HTMLTokenizer/devel/JSPTokenizer.java3838
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/SedModel/HTMLTokenizer/devel/JSPTokenizer.jflex2754
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/SedModel/HTMLTokenizer/devel/XMLTokenizer.java1937
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/SedModel/HTMLTokenizer/devel/XMLTokenizer.jflex1328
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/SedModel/HTMLTokenizer/devel/flex.cmd3
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/SedModel/HTMLTokenizer/devel/flex.sh7
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/SedModel/HTMLTokenizer/devel/flexj.cmd3
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/SedModel/HTMLTokenizer/devel/flexx.cmd3
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/SedModel/HTMLTokenizer/devel/skeleton.sse351
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/SedModel/HTMLTokenizer/devel/skeleton.sse.readme6
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/build.xml75
    -rw-r--r--bundles/org.eclipse.wst.sse.core/DevTimeSupport/devTimeSupportInfo.txt16
    -rw-r--r--bundles/org.eclipse.wst.sse.core/META-INF/MANIFEST.MF51
    -rw-r--r--bundles/org.eclipse.wst.sse.core/README.txt2
    -rw-r--r--bundles/org.eclipse.wst.sse.core/about.html34
    -rw-r--r--bundles/org.eclipse.wst.sse.core/build.properties34
    -rw-r--r--bundles/org.eclipse.wst.sse.core/component.xml20
    -rw-r--r--bundles/org.eclipse.wst.sse.core/config/charset.properties96
    -rw-r--r--bundles/org.eclipse.wst.sse.core/config/defaultIANA.properties26
    -rw-r--r--bundles/org.eclipse.wst.sse.core/config/override.properties24
    -rw-r--r--bundles/org.eclipse.wst.sse.core/doc/book.css106
    -rw-r--r--bundles/org.eclipse.wst.sse.core/doc/schema.css66
    -rw-r--r--bundles/org.eclipse.wst.sse.core/handyStuff.jpage1
    -rw-r--r--bundles/org.eclipse.wst.sse.core/plugin.properties25
    -rw-r--r--bundles/org.eclipse.wst.sse.core/plugin.xml58
    -rw-r--r--bundles/org.eclipse.wst.sse.core/schema/adaptOnCreateFactory.exsd93
    -rw-r--r--bundles/org.eclipse.wst.sse.core/schema/commentElementHandler.exsd112
    -rw-r--r--bundles/org.eclipse.wst.sse.core/schema/contentTypeFactoryContribution.exsd93
    -rw-r--r--bundles/org.eclipse.wst.sse.core/schema/cssprofile.exsd130
    -rw-r--r--bundles/org.eclipse.wst.sse.core/schema/documentTypes.exsd172
    -rw-r--r--bundles/org.eclipse.wst.sse.core/schema/embeddedTypeHandler.exsd109
    -rw-r--r--bundles/org.eclipse.wst.sse.core/schema/formatProcessors.exsd108
    -rw-r--r--bundles/org.eclipse.wst.sse.core/schema/modelHandler.exsd130
    -rw-r--r--bundles/org.eclipse.wst.sse.core/schema/taskscanner.exsd123
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-contentproperties/org/eclipse/wst/sse/internal/contentproperties/AbstractContentSettingsHandler.java83
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-contentproperties/org/eclipse/wst/sse/internal/contentproperties/AbstractSubject.java54
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-contentproperties/org/eclipse/wst/sse/internal/contentproperties/ContentSettings.java689
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-contentproperties/org/eclipse/wst/sse/internal/contentproperties/ContentSettingsChangeSubject.java62
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-contentproperties/org/eclipse/wst/sse/internal/contentproperties/ContentSettingsCreator.java26
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-contentproperties/org/eclipse/wst/sse/internal/contentproperties/ContentSettingsFileHandler.java147
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-contentproperties/org/eclipse/wst/sse/internal/contentproperties/ContentSettingsSelfHandler.java93
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-contentproperties/org/eclipse/wst/sse/internal/contentproperties/ContentSettingsSynchronizer.java174
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-contentproperties/org/eclipse/wst/sse/internal/contentproperties/IContentSettings.java83
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-contentproperties/org/eclipse/wst/sse/internal/contentproperties/IContentSettingsHandler.java25
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-contentproperties/org/eclipse/wst/sse/internal/contentproperties/IContentSettingsListener.java22
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-contentproperties/org/eclipse/wst/sse/internal/contentproperties/INotify.java22
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-contentproperties/org/eclipse/wst/sse/internal/contentproperties/ISubject.java26
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-contentproperties/org/eclipse/wst/sse/internal/contentproperties/SimpleNodeOperator.java354
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/CodedIO.java259
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/CodedReaderCreator.java542
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/CodedStreamCreator.java509
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/CommonCharsetNames.java258
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/CommonEncodingPreferenceNames.java81
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/ContentBasedPreferenceGateway.java165
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/ContentTypeEncodingPreferences.java179
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/EncodingMemento.java247
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/EncodingRule.java59
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/ICodedResourcePlugin.java19
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/IContentDescriptionExtended.java42
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/IResourceCharsetDetector.java21
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/IStreamCharsetDetector.java28
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/NonContentBasedEncodingRules.java139
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/util/Assert.java120
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/util/BufferedLimitedReader.java58
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/util/BufferedLimitedStream.java79
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/util/ByteReader.java109
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/util/CodedResourcePlugin.java55
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/util/Logger.java158
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/util/NullInputStream.java69
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/util/ResourceBundleHelper.java61
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/util/UnicodeBOMEncodingDetector.java213
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/exceptions/CharConversionErrorWithDetail.java43
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/exceptions/MalformedInputExceptionWithDetail.java103
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/exceptions/MalformedOutputExceptionWithDetail.java36
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/exceptions/UnsupportedCharsetExceptionWithDetail.java47
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-tasktags/org/eclipse/wst/sse/core/internal/provisional/tasks/IFileTaskScanner.java84
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-tasktags/org/eclipse/wst/sse/core/internal/provisional/tasks/TaskTag.java52
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-tasktags/org/eclipse/wst/sse/core/internal/tasks/FileTaskScannerRegistryReader.java183
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-tasktags/org/eclipse/wst/sse/core/internal/tasks/StructuredFileTaskScanner.java329
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-tasktags/org/eclipse/wst/sse/core/internal/tasks/TaskScanningJob.java242
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-tasktags/org/eclipse/wst/sse/core/internal/tasks/TaskScanningScheduler.java135
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-tasktags/org/eclipse/wst/sse/core/internal/tasks/TaskTagPreferenceKeys.java24
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src-tasktags/org/eclipse/wst/sse/core/internal/tasks/WorkspaceTaskScanner.java460
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/StructuredModelManager.java72
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/FileBufferModelManager.java809
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/IExecutionDelegate.java20
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/ILockable.java30
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/JSPAwareAdapterFactory.java22
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/Logger.java205
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/ModelManagerPluginRegistryReader.java198
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/NoCancelProgressMonitor.java35
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/NotImplementedException.java37
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/NullMemento.java37
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/PropagatingAdapter.java38
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/PropagatingAdapterFactory.java29
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/SSECoreMessages.java39
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/SSECorePlugin.java93
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/SSECorePluginResources.properties21
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/cleanup/AbstractStructuredCleanupProcessor.java464
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/cleanup/IStructuredCleanupHandler.java23
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/cleanup/IStructuredCleanupPreferences.java56
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/cleanup/IStructuredCleanupProcessor.java114
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/cleanup/StructuredCleanupPreferences.java135
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/cleanup/StructuredContentCleanupHandler.java20
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/cleanup/StructuredContentCleanupHandlerImpl.java43
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/document/AbstractDocumentLoader.java438
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/document/DocumentReader.java131
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/document/IDocumentCharsetDetector.java22
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/document/IDocumentLoader.java70
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/document/StructuredDocumentFactory.java66
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/document/TextUtilities.java73
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/filebuffers/BasicStructuredDocumentFactory.java91
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/format/AbstractStructuredFormatProcessor.java523
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/format/IStructuredFormatContraints.java39
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/format/IStructuredFormatPreferences.java33
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/format/IStructuredFormatProcessor.java70
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/format/IStructuredFormatter.java36
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/format/StructuredFormatContraints.java53
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/format/StructuredFormatPreferences.java43
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/ltk/modelhandler/AbstractModelHandler.java72
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/ltk/modelhandler/EmbeddedTypeHandler.java77
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/ltk/modelhandler/IDocumentTypeHandler.java42
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/ltk/modelhandler/IModelHandler.java43
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/ltk/parser/BlockMarker.java103
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/ltk/parser/BlockTagParser.java32
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/ltk/parser/BlockTokenizer.java58
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/ltk/parser/IBlockedStructuredDocumentRegion.java41
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/ltk/parser/JSPCapableParser.java28
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/ltk/parser/RegionParser.java52
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/ltk/parser/StructuredDocumentRegionHandler.java28
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/ltk/parser/StructuredDocumentRegionHandlerExtension.java20
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/ltk/parser/StructuredDocumentRegionParser.java24
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/ltk/parser/StructuredDocumentRegionParserExtension.java28
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/ltk/parser/TagMarker.java80
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/model/AbstractModelLoader.java545
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/model/AbstractStructuredModel.java1565
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/model/FactoryRegistry.java179
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/model/LifecycleNotificationManager.java119
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/model/ModelLifecycleEvent.java117
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/model/ModelManagerImpl.java2095
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/modelhandler/EmbeddedTypeRegistry.java35
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/modelhandler/EmbeddedTypeRegistryImpl.java132
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/modelhandler/EmbeddedTypeRegistryReader.java71
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/modelhandler/ModelHandlerRegistry.java295
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/modelhandler/ModelHandlerRegistryReader.java106
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/modelhandler/ModelHandlerUtility.java50
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/modelhandler/PluginContributedFactoryReader.java126
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/parser/ContextRegion.java197
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/parser/ForeignRegion.java81
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/preferences/CommonModelPreferenceNames.java76
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/preferences/PreferenceInitializer.java32
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/propertytester/StructuredFilePropertyTester.java82
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/AbstractAdapterFactory.java158
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/AbstractNotifier.java240
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/DocumentChanged.java61
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/IModelLifecycleListener.java27
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/IModelLoader.java87
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/IModelManager.java297
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/IModelStateListener.java64
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/INodeAdapter.java43
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/INodeAdapterFactory.java76
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/INodeNotifier.java103
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/IStructuredModel.java391
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/IndexedRegion.java74
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/StructuredModelManager.java75
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/document/IEncodedDocument.java58
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/document/IStructuredDocumentProposed.java223
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/events/AboutToBeChangedEvent.java44
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/events/IModelAboutToBeChangedListener.java26
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/events/IStructuredDocumentListener.java30
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/events/NewDocumentContentEvent.java40
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/events/NewDocumentEvent.java68
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/events/NoChangeEvent.java73
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/events/RegionChangedEvent.java80
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/events/RegionsReplacedEvent.java85
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/events/StructuredDocumentEvent.java146
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/events/StructuredDocumentRegionsReplacedEvent.java73
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/exceptions/ResourceAlreadyExists.java40
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/exceptions/ResourceInUse.java40
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/model/IModelManagerProposed.java338
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/model/IModelStateListenerProposed.java36
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/model/INodeAdapterFactoryManager.java33
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/model/IStructuredModelEvent.java17
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/model/IStructuredModelProposed.java152
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/text/IStructuredDocument.java218
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/text/IStructuredDocumentRegion.java163
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/text/IStructuredDocumentRegionList.java52
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/text/IStructuredPartitionTypes.java24
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/text/IStructuredPartitioning.java12
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/text/IStructuredTextPartitioner.java86
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/text/IStructuredTextReParser.java72
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/text/ITextRegion.java158
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/text/ITextRegionCollection.java178
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/text/ITextRegionContainer.java40
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/provisional/text/ITextRegionList.java131
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/text/BasicStructuredDocument.java2969
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/text/BasicStructuredDocumentRegion.java599
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/text/CharSequenceReader.java127
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/text/CoreNodeList.java130
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/text/DeleteEqualPositionUpdater.java66
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/text/GenericPositionManager.java409
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/text/IExecutionDelegatable.java20
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/text/IRegionComparible.java20
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/text/JobSafeStructuredDocument.java369
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/text/MinimalDocument.java445
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/text/ReadOnlyPosition.java37
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/text/StructuredDocumentReParser.java1651
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/text/StructuredDocumentRegionEnumeration.java87
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/text/StructuredDocumentRegionIterator.java115
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/text/StructuredDocumentSequentialRewriteTextStore.java132
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/text/StructuredDocumentTextStore.java191
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/text/SubSetTextStore.java127
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/text/TextRegionListImpl.java223
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/text/rules/IStructuredRegion.java27
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/text/rules/IStructuredTypedRegion.java24
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/text/rules/SimpleStructuredRegion.java91
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/text/rules/SimpleStructuredTypedRegion.java88
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/text/rules/StructuredTextPartitioner.java606
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/undo/CommandCursorPosition.java66
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/undo/IDocumentSelectionMediator.java35
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/undo/IStructuredTextUndoManager.java155
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/undo/StructuredTextCommand.java34
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/undo/StructuredTextCommandImpl.java137
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/undo/StructuredTextCompoundCommandImpl.java260
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/undo/StructuredTextUndoManager.java658
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/undo/UndoDocumentEvent.java45
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/util/Assert.java164
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/util/Debug.java206
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/util/DocumentInputStream.java108
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/util/JarUtilities.java283
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/util/PathHelper.java148
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/util/ProjectResolver.java259
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/util/ResourceUtil.java79
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/util/ScriptLanguageKeys.java39
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/util/Sorter.java77
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/util/TextUtilities.java63
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/util/URIResolver.java81
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/util/Utilities.java140
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/validate/ErrorInfo.java26
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/validate/ValidationAdapter.java31
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/validate/ValidationMessage.java70
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/validate/ValidationReporter.java28
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/internal/validate/ValidatorGroupListener.java83
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/text/IStructuredPartitions.java24
    -rw-r--r--bundles/org.eclipse.wst.sse.core/src/org/eclipse/wst/sse/core/utils/StringUtils.java743
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/.classpath14
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/.cvsignore8
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/.options70
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/.project27
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/.settings/org.eclipse.core.runtime.prefs3
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/.settings/org.eclipse.jdt.core.prefs91
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/.settings/org.eclipse.jdt.ui.prefs3
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/.settings/org.eclipse.ltk.core.refactoring.prefs3
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/.settings/org.eclipse.pde.prefs25
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/META-INF/MANIFEST.MF66
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/README.txt2
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/about.html34
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/build.properties30
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/html/maintopic.html13
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/html/subtopic.html13
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/html/toc.html13
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/icons/full/ctool16/spellcheck.gifbin370 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.sse.ui/icons/full/dlcl16/collapseall.gifbin155 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.sse.ui/icons/full/dlcl16/delete.gifbin221 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.sse.ui/icons/full/dlcl16/synced.gifbin149 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.sse.ui/icons/full/dtool16/spellcheck.gifbin243 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.sse.ui/icons/full/elcl16/collapseall.gifbin157 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.sse.ui/icons/full/elcl16/delete.gifbin351 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.sse.ui/icons/full/elcl16/synced.gifbin233 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.sse.ui/icons/full/etool16/spellcheck.gifbin370 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.sse.ui/icons/full/obj16/occ_match.gifbin121 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.sse.ui/icons/full/obj16/preferences.gifbin224 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.sse.ui/icons/full/obj16/prop_ps.gifbin344 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.sse.ui/icons/sourceEditor.gifbin353 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.sse.ui/plugin.properties106
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/plugin.xml761
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/reexport-info.txt4
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/schema/editorconfiguration.exsd309
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/schema/org.eclipse.wst.sse.ui.sourcevalidation.exsd191
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/schema/quickFixProcessor.exsd135
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/schema/semanticHighlighting.exsd118
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src-encoding/org/eclipse/wst/sse/ui/internal/encoding/ui/EncodingPreferencePage.java109
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src-extensions/org/eclipse/wst/sse/ui/internal/provisional/extensions/ConfigurationPointCalculator.java156
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src-extensions/org/eclipse/wst/sse/ui/internal/provisional/extensions/ISelfValidateEditAction.java27
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src-extensions/org/eclipse/wst/sse/ui/internal/provisional/extensions/ISourceEditingTextTools.java50
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src-extensions/org/eclipse/wst/sse/ui/internal/provisional/extensions/breakpoint/IBreakpointConstants.java25
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src-extensions/org/eclipse/wst/sse/ui/internal/provisional/extensions/breakpoint/IBreakpointProvider.java62
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src-extensions/org/eclipse/wst/sse/ui/internal/provisional/extensions/breakpoint/IExtendedStorageEditorInput.java37
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src-extensions/org/eclipse/wst/sse/ui/internal/provisional/extensions/breakpoint/NodeLocation.java48
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src-extensions/org/eclipse/wst/sse/ui/internal/provisional/extensions/breakpoint/NullSourceEditingTextTools.java63
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src-tasktags/org/eclipse/wst/sse/ui/internal/preferences/ui/ExclusionsTab.java373
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src-tasktags/org/eclipse/wst/sse/ui/internal/preferences/ui/MainTab.java452
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src-tasktags/org/eclipse/wst/sse/ui/internal/preferences/ui/PropertyPreferencePage.java283
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src-tasktags/org/eclipse/wst/sse/ui/internal/preferences/ui/TaskTagPreferencePage.java353
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/EditorExecutionContext.java155
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/EncodingSupport.java139
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/FoldingActionGroup.java168
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/ISemanticHighlighting.java86
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/StructuredSourceViewerDecorationSupport.java46
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/StructuredTextEditor.java3297
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/StructuredTextInvocationContext.java53
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/StructuredTextMultiPassContentFormatter.java123
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/StructuredTextViewerConfiguration.java690
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/StructuredTextViewerUndoManager.java200
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/TextHoverInformationProvider.java43
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/AbstractDropAction.java94
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/CaretMediator.java284
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/ExtendedConfigurationBuilder.java275
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/ExtendedEditorActionBuilder.java789
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/ExtendedEditorDropTargetAdapter.java207
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/FileDropAction.java47
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/FormatProcessorsExtensionReader.java102
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/GotoAnnotationAction.java370
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/IActionValidator.java17
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/IDropAction.java37
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/IExtendedContributor.java30
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/IExtendedEditorAction.java38
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/IExtendedMarkupEditor.java47
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/IExtendedSimpleEditor.java33
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/IModelProvider.java21
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/IPopupMenuContributor.java22
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/IReleasable.java20
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/ISourceViewerActionBarContributor.java29
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/ITemporaryAnnotation.java17
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/Logger.java161
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/PreferenceInitializer.java87
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/ReadOnlyAwareDropTargetAdapter.java52
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/SSEUIMessages.java433
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/SSEUIPlugin.java95
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/SSEUIPluginResources.properties406
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/ShowViewAction.java99
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/StorageModelProvider.java738
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/StructuredDocumentToTextAdapter.java1332
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/StructuredLineChangeHover.java48
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/StructuredMarkerAnnotation.java125
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/StructuredResourceMarkerAnnotationModel.java118
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/StructuredResourceMarkerAnnotationModelFactory.java49
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/StructuredTextAnnotationHover.java81
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/StructuredTextLineBreakingReader.java114
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/StructuredTextSelectionChangedEvent.java35
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/StructuredTextViewer.java982
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/TextDropAction.java27
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/TransferBuilder.java667
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/UnknownContentTypeDialog.java67
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/actions/ActionContributor.java392
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/actions/ActionDefinitionIds.java57
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/actions/ActiveEditorActionHandler.java286
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/actions/CleanupAction.java85
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/actions/FormatActionDelegate.java248
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/actions/ResourceActionDelegate.java104
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/actions/StructuredTextEditorActionConstants.java47
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/contentassist/CompoundContentAssistProcessor.java539
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/contentassist/ContentAssistUtils.java92
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/contentassist/CustomCompletionProposal.java341
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/contentassist/IRelevanceCompletionProposal.java28
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/contentassist/IRelevanceConstants.java17
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/contentassist/StructuredContentAssistant.java155
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/contentoutline/ConfigurableContentOutlinePage.java755
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/contentoutline/IJFaceNodeAdapter.java57
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/contentoutline/IJFaceNodeAdapterFactory.java26
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/contentoutline/PropertyChangeUpdateAction.java80
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/contentoutline/PropertyChangeUpdateActionContributionItem.java85
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/contentproperties/ui/ComboList.java287
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/contentproperties/ui/ComboListOnPropertyPage.java39
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/contentproperties/ui/ContentSettingsPropertyPage.java297
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/correction/AnnotationQuery.java175
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/correction/AnnotationQueryResult.java87
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/correction/CompoundQuickAssistProcessor.java211
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/correction/ContributedProcessorDescriptor.java39
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/correction/CorrectionAssistantProvider.java34
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/correction/IQuickAssistProcessor.java34
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/correction/IQuickFixProcessor.java34
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/correction/NoModificationCompletionProposal.java77
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/correction/QuickFixRegistry.java137
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/correction/QuickFixRegistryReader.java93
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/correction/SourceValidationQuickAssistProcessor.java118
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/correction/StructuredCorrectionProcessor.java161
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/debug/BreakpointRulerAction.java318
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/debug/DebugTextEditor.java438
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/debug/EditBreakpointAction.java63
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/debug/ManageBreakpointAction.java90
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/debug/ToggleBreakpointAction.java210
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/debug/ToggleBreakpointsTarget.java189
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/derived/HTML2TextReader.java304
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/derived/HTMLTextPresenter.java194
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/derived/LineBreakingReader.java124
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/derived/SingleCharReader.java66
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/derived/SubstitutionTextReader.java158
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/edit/util/SharedEditorPluginImageHelper.java58
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/editor/EditorModelUtil.java77
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/editor/EditorPluginImageHelper.java155
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/editor/EditorPluginImages.java33
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/editor/IHelpContextIds.java58
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/editor/SelectionConvertor.java62
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/editor/StructuredModelDocumentProvider.java263
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/extension/ActionDescriptor.java378
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/extension/BreakpointProviderBuilder.java405
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/extension/DropActionProxy.java150
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/extension/ExtendedEditorActionProxy.java149
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/extension/ExtendedEditorActionProxyForDelayLoading.java768
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/extension/IExtendedEditorActionProxyForDelayLoading.java25
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/extension/ImageUtil.java84
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/extension/RegistryReader.java176
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/format/StructuredFormattingStrategy.java91
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/handlers/AbstractStructuredSelectHandler.java106
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/handlers/FindOccurrencesHandler.java133
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/handlers/FormatHandler.java326
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/handlers/StructuredSelectHistoryHandler.java51
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/hyperlink/HighlighterHyperlinkPresenter.java468
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/hyperlink/OpenHyperlinkAction.java81
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/openon/AbstractOpenOn.java271
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/openon/ExternalFileEditorInput.java116
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/openon/IOpenOn.java46
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/openon/OpenFileHyperlinkTracker.java660
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/openon/OpenOnAction.java74
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/openon/OpenOnBuilder.java267
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/openon/OpenOnDefinition.java157
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/openon/OpenOnProvider.java143
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/preferences/EditorPreferenceNames.java156
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/preferences/OverlayPreferenceStore.java486
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/preferences/TabFolderLayout.java61
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/preferences/ui/AbstractColorPage.java282
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/preferences/ui/AbstractPreferencePage.java284
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/preferences/ui/AbstractPreferenceTab.java266
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/preferences/ui/ColorEditor.java142
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/preferences/ui/ColorHelper.java230
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/preferences/ui/ColorNames.java27
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/preferences/ui/EmptyFilePreferencePage.java100
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/preferences/ui/FilePreferencePage.java132
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/preferences/ui/IPreferenceTab.java29
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/preferences/ui/ScrolledPageContent.java49
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/preferences/ui/StatusInfo.java202
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/preferences/ui/StructuredTextEditorPreferencePage.java461
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/preferences/ui/StyledTextColorPicker.java905
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/preferences/ui/TextHoverPreferenceTab.java453
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/preferences/ui/TranslucencyPreferenceTab.java149
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/projection/IStructuredTextFoldingProvider.java45
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/properties/AdapterPropertySheetEntryLabelProvider.java51
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/properties/ConfigurablePropertySheetPage.java200
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/properties/CustomPropertyDescriptor.java89
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/properties/RemoveAction.java45
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/properties/ShowPropertiesAction.java69
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/provisional/preferences/CommonEditorPreferenceNames.java35
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/provisional/registry/AdapterFactoryProvider.java33
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/provisional/registry/AdapterFactoryRegistry.java32
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/provisional/registry/AdapterFactoryRegistryExtension.java22
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/provisional/registry/AdapterFactoryRegistryImpl.java210
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/provisional/registry/AdapterFactoryRegistryReader.java142
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/provisional/style/AbstractLineStyleProvider.java405
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/provisional/style/CompatibleHighlighter.java128
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/provisional/style/Highlighter.java906
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/provisional/style/IHighlighter.java34
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/provisional/style/LineStyleProvider.java59
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/provisional/style/LineStyleProviderForNoOp.java48
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/provisional/style/ReconcilerHighlighter.java157
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/provisional/style/SemanticHighlightingManager.java644
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/provisional/style/SemanticHighlightingPresenter.java789
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/provisional/style/SemanticHighlightingReconciler.java279
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/provisional/style/StructuredPresentationReconciler.java1207
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/reconcile/AbstractStructuredTextReconcilingStrategy.java527
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/reconcile/DirtyRegionProcessor.java764
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/reconcile/DocumentAdapter.java43
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/reconcile/DocumentRegionProcessor.java257
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/reconcile/IConfigurableReconciler.java35
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/reconcile/IReconcileAnnotationKey.java35
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/reconcile/IStructuredReconcileStep.java66
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/reconcile/IStructuredReconcilingStrategy.java43
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/reconcile/ReconcileAnnotationKey.java56
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/reconcile/StructuredReconcileStep.java193
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/reconcile/StructuredRegionProcessor.java304
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/reconcile/StructuredTextReconcilingStrategy.java75
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/reconcile/TemporaryAnnotation.java258
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/reconcile/validator/AnnotationInfo.java38
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/reconcile/validator/ISourceValidator.java42
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/reconcile/validator/IncrementalHelper.java57
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/reconcile/validator/IncrementalReporter.java111
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/reconcile/validator/ReconcileStepForValidator.java363
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/reconcile/validator/ValidatorBuilder.java139
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/reconcile/validator/ValidatorMetaData.java241
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/reconcile/validator/ValidatorStrategy.java336
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/rules/StructuredDocumentDamagerRepairer.java81
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/search/BasicSearchLabelProvider.java75
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/search/BasicSearchQuery.java217
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/search/FindOccurrencesActionDelegate.java161
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/search/FindOccurrencesProcessor.java121
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/search/OccurrencesContentProvider.java89
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/search/OccurrencesSearchQuery.java184
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/search/OccurrencesSearchResult.java127
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/search/OccurrencesSearchViewPage.java140
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/selection/SelectionHistory.java117
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/selection/StructureSelectAction.java110
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/selection/StructureSelectHistoryAction.java56
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/selection/StructuredSelectActionDelegate.java124
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/selection/StructuredSelectHistoryActionDelegate.java83
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/spelling/SpellcheckStrategy.java371
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/spelling/SpellingQuickAssistProcessor.java52
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/taginfo/AbstractHoverProcessor.java44
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/taginfo/AnnotationHoverProcessor.java204
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/taginfo/BestMatchHover.java136
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/taginfo/DebugInfoHoverProcessor.java94
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/taginfo/ProblemAnnotationHoverProcessor.java52
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/taginfo/TextHoverManager.java243
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/text/DocumentRegionEdgeMatcher.java159
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/ui/OffsetStatusLineContributionItem.java1235
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/ui/StructuredTextAnnotationImageProvider.java56
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/util/Assert.java120
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/util/EditorUtility.java142
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/util/PixelConverter.java65
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/util/PlatformStatusLineUtil.java171
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/util/RegistryReader.java175
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/util/Sorter.java77
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/view/events/CaretEvent.java52
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/view/events/ICaretListener.java20
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/view/events/INodeSelectionListener.java22
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/view/events/ITextSelectionListener.java20
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/view/events/NodeSelectionChangedEvent.java43
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/view/events/TextSelectionChangedEvent.java41
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/views/contentoutline/ContentOutlineConfiguration.java316
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/views/properties/IPropertySourceExtension.java41
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/views/properties/PropertySheetConfiguration.java104
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/testToc.xml8
    -rw-r--r--bundles/org.eclipse.wst.sse.ui/toc.xml13
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/.cvsignore2
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/.project22
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/.settings/org.eclipse.pde.prefs12
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/META-INF/MANIFEST.MF9
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/about.html134
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/about_files/copyright-software-19980720.htm82
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/about_files/copyright-software-19980720_files/base.css69
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/about_files/wsdl-schema-files-license.txt29
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/build.properties29
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/dtds/HTMLlat1.ent194
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/dtds/HTMLspecial.ent77
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/dtds/HTMLsymbol.ent241
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/dtds/frameset.dtd37
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/dtds/loose.dtd1093
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/dtds/strict.dtd870
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/dtds/wml11.dtd355
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/dtds/wml13.dtd4
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/dtds/xhtml-basic10-f.dtd3086
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/dtds/xhtml-lat1.ent196
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/dtds/xhtml-mobile10-flat.dtd3216
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/dtds/xhtml-special.ent79
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/dtds/xhtml-symbol.ent242
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/dtds/xhtml1-frameset.dtd1225
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/dtds/xhtml1-strict.dtd988
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/dtds/xhtml1-transitional.dtd1196
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/dtds/xhtml11-flat.dtd4513
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/plugin.properties20
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/plugin.xml210
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/xsd/http.xsd81
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/xsd/soap.xsd159
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/xsd/soapenc.xsd585
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/xsd/wsdl-mime.xsd70
    -rw-r--r--bundles/org.eclipse.wst.standard.schemas/xsd/wsdl.xsd322
    -rw-r--r--bundles/org.eclipse.wst.xml.core/.classpath43
    -rw-r--r--bundles/org.eclipse.wst.xml.core/.cvsignore8
    -rw-r--r--bundles/org.eclipse.wst.xml.core/.options4
    -rw-r--r--bundles/org.eclipse.wst.xml.core/.project27
    -rw-r--r--bundles/org.eclipse.wst.xml.core/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--bundles/org.eclipse.wst.xml.core/.settings/org.eclipse.core.runtime.prefs3
    -rw-r--r--bundles/org.eclipse.wst.xml.core/.settings/org.eclipse.jdt.core.prefs79
    -rw-r--r--bundles/org.eclipse.wst.xml.core/.settings/org.eclipse.jdt.ui.prefs3
    -rw-r--r--bundles/org.eclipse.wst.xml.core/.settings/org.eclipse.ltk.core.refactoring.prefs3
    -rw-r--r--bundles/org.eclipse.wst.xml.core/.settings/org.eclipse.pde.prefs16
    -rw-r--r--bundles/org.eclipse.wst.xml.core/DevTimeSupport/HeadParsers/XML10Names.jFlex100
    -rw-r--r--bundles/org.eclipse.wst.xml.core/DevTimeSupport/HeadParsers/XMLHeadTokenizer.jFlex254
    -rw-r--r--bundles/org.eclipse.wst.xml.core/DevTimeSupport/buildNames.xml32
    -rw-r--r--bundles/org.eclipse.wst.xml.core/DevTimeSupport/buildParser.xml32
    -rw-r--r--bundles/org.eclipse.wst.xml.core/META-INF/MANIFEST.MF76
    -rw-r--r--bundles/org.eclipse.wst.xml.core/README.txt1
    -rw-r--r--bundles/org.eclipse.wst.xml.core/about.html34
    -rw-r--r--bundles/org.eclipse.wst.xml.core/build.properties34
    -rw-r--r--bundles/org.eclipse.wst.xml.core/component.xml21
    -rw-r--r--bundles/org.eclipse.wst.xml.core/plugin.properties27
    -rw-r--r--bundles/org.eclipse.wst.xml.core/plugin.xml208
    -rw-r--r--bundles/org.eclipse.wst.xml.core/schema/annotationFiles.exsd113
    -rw-r--r--bundles/org.eclipse.wst.xml.core/schema/catalogContributions.exsd283
    -rw-r--r--bundles/org.eclipse.wst.xml.core/schema/documentFactories.exsd116
    -rw-r--r--bundles/org.eclipse.wst.xml.core/schema/errorCustomizer.exsd123
    -rw-r--r--bundles/org.eclipse.wst.xml.core/schema/modelQueryExtensions.exsd102
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-catalog/org/eclipse/wst/xml/core/internal/catalog/Catalog.java556
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-catalog/org/eclipse/wst/xml/core/internal/catalog/CatalogContributorRegistryReader.java269
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-catalog/org/eclipse/wst/xml/core/internal/catalog/CatalogElement.java155
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-catalog/org/eclipse/wst/xml/core/internal/catalog/CatalogEntry.java73
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-catalog/org/eclipse/wst/xml/core/internal/catalog/CatalogEvent.java47
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-catalog/org/eclipse/wst/xml/core/internal/catalog/CatalogReader.java220
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-catalog/org/eclipse/wst/xml/core/internal/catalog/CatalogSet.java65
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-catalog/org/eclipse/wst/xml/core/internal/catalog/CatalogWriter.java231
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-catalog/org/eclipse/wst/xml/core/internal/catalog/NextCatalog.java59
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-catalog/org/eclipse/wst/xml/core/internal/catalog/OASISCatalogConstants.java83
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-catalog/org/eclipse/wst/xml/core/internal/catalog/XMLCatalogURIResolverExtension.java102
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-catalog/org/eclipse/wst/xml/core/internal/catalog/provisional/ICatalog.java233
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-catalog/org/eclipse/wst/xml/core/internal/catalog/provisional/ICatalogElement.java83
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-catalog/org/eclipse/wst/xml/core/internal/catalog/provisional/ICatalogEntry.java71
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-catalog/org/eclipse/wst/xml/core/internal/catalog/provisional/ICatalogEvent.java54
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-catalog/org/eclipse/wst/xml/core/internal/catalog/provisional/ICatalogListener.java34
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-catalog/org/eclipse/wst/xml/core/internal/catalog/provisional/INextCatalog.java53
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMAnyElement.java24
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMAttributeDeclaration.java52
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMContent.java32
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMDataType.java78
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMDocument.java38
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMDocumentation.java22
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMElementDeclaration.java68
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMEntityDeclaration.java30
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMGroup.java39
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMNamedNodeMap.java41
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMNamespace.java30
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMNode.java61
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMNodeList.java31
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/ContentModelManager.java80
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/annotation/Annotation.java53
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/annotation/AnnotationMap.java101
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMAnyElementImpl.java51
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMAttributeDeclarationImpl.java123
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMContentImpl.java46
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMDataTypeImpl.java73
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMDocumentImpl.java88
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMElementDeclarationImpl.java121
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMEntityDeclarationImpl.java47
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMGroupImpl.java43
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMNamedNodeMapImpl.java100
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMNodeImpl.java46
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMNodeListImpl.java77
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/factory/CMDocumentFactory.java22
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/factory/CMDocumentFactoryDescriptor.java44
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/factory/CMDocumentFactoryRegistry.java53
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/factory/CMDocumentFactoryRegistryReader.java78
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/annotation/AnnotationFileInfo.java44
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/annotation/AnnotationFileParser.java207
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/annotation/AnnotationFileRegistry.java52
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/annotation/AnnotationFileRegistryReader.java77
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/annotation/AnnotationUtility.java44
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/annotation/ResourceBundleHelper.java57
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/modelqueryimpl/InferredGrammarFactory.java156
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/modelqueryimpl/ModelQueryExtensionDescriptor.java65
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/modelqueryimpl/ModelQueryExtensionManagerImpl.java125
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/modelqueryimpl/ModelQueryExtensionRegistry.java97
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/util/CMDataTypeValueHelper.java161
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/util/CMValidator.java1244
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/util/DOMValidator.java424
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/CMDocumentManager.java141
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/CMDocumentManagerListener.java23
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/CMDocumentReference.java20
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/CMDocumentReferenceProvider.java27
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/ModelQuery.java195
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/ModelQueryAction.java36
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/ModelQueryAssociationProvider.java35
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/ModelQueryCMProvider.java30
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/extension/ModelQueryExtension.java61
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/extension/ModelQueryExtensionManager.java30
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/BaseAssociationProvider.java88
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/CMDocumentLoader.java214
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/CMDocumentManagerImpl.java290
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/CMDocumentReferenceImpl.java42
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/InferredGrammarBuildingCMDocumentLoader.java189
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/ModelQueryActionHelper.java574
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/ModelQueryImpl.java856
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/SimpleAssociationProvider.java49
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/XMLAssociationProvider.java403
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/CMDescriptionBuilder.java140
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/CMDocumentCache.java203
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/CMDocumentCacheListener.java33
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/CMVisitor.java135
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/ContentBuilder.java171
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/DOMContentBuilder.java53
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/DOMContentBuilderImpl.java602
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/DOMNamespaceHelper.java198
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/DOMNamespaceInfoManager.java225
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/DOMVisitor.java133
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/DOMWriter.java411
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/InferredGrammarFactory.java30
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/NamespaceAttributeVisitor.java110
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/NamespaceInfo.java83
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/NamespaceTable.java253
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-emfModelSynch/org/eclipse/wst/xml/core/internal/emf2xml/EMF2DOMSSEAdapter.java439
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-emfModelSynch/org/eclipse/wst/xml/core/internal/emf2xml/EMF2DOMSSERenderer.java644
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-emfModelSynch/org/eclipse/wst/xml/core/internal/emf2xml/EMF2DOMSSERendererFactory.java32
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-search/org/eclipse/wst/xml/core/internal/search/ComponentSearchContributor.java73
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-search/org/eclipse/wst/xml/core/internal/search/TargetNamespaceReferencePattern.java30
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-search/org/eclipse/wst/xml/core/internal/search/XMLComponentDeclarationPattern.java34
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-search/org/eclipse/wst/xml/core/internal/search/XMLComponentReferencePattern.java37
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-search/org/eclipse/wst/xml/core/internal/search/XMLComponentSearchPattern.java96
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-search/org/eclipse/wst/xml/core/internal/search/XMLSearchParticipant.java387
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-search/org/eclipse/wst/xml/core/internal/search/XMLSearchPattern.java111
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-search/org/eclipse/wst/xml/core/internal/search/impl/IXMLSearchConstants.java20
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-search/org/eclipse/wst/xml/core/internal/search/impl/Messages.java73
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-search/org/eclipse/wst/xml/core/internal/search/impl/XMLSearchDocument.java105
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-search/org/eclipse/wst/xml/core/internal/search/impl/messages.properties10
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-search/org/eclipse/wst/xml/core/internal/search/matching/PatternMatcher.java79
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-search/org/eclipse/wst/xml/core/internal/search/matching/SAXSearchElement.java78
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-search/org/eclipse/wst/xml/core/internal/search/matching/XMLSearchPatternMatcher.java237
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-search/org/eclipse/wst/xml/core/internal/search/quickscan/XMLQuickScan.java117
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-search/org/eclipse/wst/xml/core/internal/search/quickscan/XMLQuickScanContentHandler.java212
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/ValidatorHelper.java361
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/XMLNestedValidatorContext.java55
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/XMLValidationConfiguration.java107
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/XMLValidationInfo.java196
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/XMLValidationMessages.java36
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/XMLValidationReport.java44
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/XMLValidator.java800
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/core/AbstractNestedValidator.java514
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/core/Helper.java259
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/core/LazyURLInputStream.java161
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/core/NestedValidatorContext.java22
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/core/ValidationInfo.java286
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/core/ValidationMessage.java201
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/core/ValidationReport.java45
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/core/logging/CommandLineLogger.java32
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/core/logging/EclipseLogger.java34
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/core/logging/ILogger.java35
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/core/logging/LoggerFactory.java102
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/eclipse/ErrorCustomizationPluginRegistryReader.java81
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/eclipse/Validator.java147
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/eclipse/XMLMessageInfoHelper.java112
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/eclipse/XMLValidator.java49
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/errorcustomization/ElementInformation.java72
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/errorcustomization/ErrorCustomizationManager.java110
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/errorcustomization/ErrorCustomizationRegistry.java97
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/errorcustomization/ErrorMessageCustomizerDelegate.java72
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/errorcustomization/IErrorMessageCustomizer.java34
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/xmlvalidation.properties32
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/.cvsignore1
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/DebugAdapterFactory.java77
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/EveryNodeDebugAdapter.java284
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/IDebugAdapter.java19
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/Logger.java157
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/XMLCoreMessages.java42
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/XMLCorePlugin.java80
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/XMLCorePluginResources.properties26
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/cleanup/CleanupProcessorXML.java88
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/cleanup/ElementNodeCleanupHandler.java557
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/cleanup/NodeCleanupHandler.java63
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/cleanup/XMLCleanupPreferencesImpl.java142
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/commentelement/CommentElementAdapter.java103
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/commentelement/CommentElementHandler.java107
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/commentelement/impl/BasicCommentElementHandler.java135
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/commentelement/impl/CommentElementConfiguration.java226
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/commentelement/impl/CommentElementRegistry.java84
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/commentelement/util/CommentElementFactory.java65
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/commentelement/util/TagScanner.java196
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/AbstractResourceEncodingDetector.java258
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/ByteReader.java108
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/ContentDescriberForXML.java264
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/EncodingParserConstants.java30
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/HeadParserToken.java44
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/IntStack.java99
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/NullMemento.java37
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/XMLDeclDetector.java156
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/XMLHeadTokenizer.java1451
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/XMLHeadTokenizerConstants.java21
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/XMLResourceEncodingDetector.java142
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/AttrImpl.java767
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/CDATASectionImpl.java146
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/CMNodeUtil.java42
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/CharacterDataImpl.java352
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/CommentImpl.java203
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/DOMModelImpl.java915
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/DocumentFragmentImpl.java81
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/DocumentImpl.java1179
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/DocumentTypeAdapter.java51
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/DocumentTypeAdapterImpl.java119
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/DocumentTypeImpl.java228
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/ElementImpl.java1474
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/EntityImpl.java247
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/EntityReferenceImpl.java95
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/InvalidCharacterException.java67
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/JSPTag.java34
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/ModelParserAdapter.java55
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/NodeContainer.java514
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/NodeImpl.java1063
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/NodeIteratorImpl.java257
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/NodeListImpl.java114
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/NotationImpl.java144
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/ProcessingInstructionImpl.java233
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/RangeImpl.java630
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/ReadOnlyController.java343
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/SourceValidator.java346
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/StructuredDocumentRegionChecker.java143
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/StructuredDocumentRegionContainer.java435
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/StructuredDocumentRegionManagementException.java33
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/StructuredDocumentRegionProxy.java369
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/StructuredDocumentRegionUtil.java166
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/TagAdapter.java35
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/TextImpl.java1182
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/XMLGeneratorImpl.java735
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/XMLModelContext.java237
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/XMLModelNotifier.java139
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/XMLModelNotifierImpl.java496
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/XMLModelParser.java2410
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/XMLModelUpdater.java1700
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/encoding/XMLDocumentCharsetDetector.java37
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/encoding/XMLDocumentLoader.java82
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/formatter/DefaultXMLPartitionFormatter.java1680
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/formatter/XMLFormatterFormatProcessor.java146
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/formatter/XMLFormattingConstraints.java94
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/formatter/XMLFormattingPreferences.java157
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelhandler/EmbeddedXML.java98
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelhandler/ModelHandlerForXML.java59
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelhandler/XMLModelLoader.java93
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelquery/ModelQueryAdapterFactoryForEmbeddedXML.java50
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelquery/ModelQueryAdapterFactoryForXML.java253
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelquery/ModelQueryUtil.java64
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelquery/XMLCatalogIdResolver.java102
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelquery/XMLModelQueryAssociationProvider.java60
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelquery/XMLModelQueryImpl.java38
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/BlockStructuredDocumentRegion.java46
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/ContextRegionContainer.java310
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/IntStack.java97
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/RegionFactory.java49
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/XML10Names.java595
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/XMLSourceParser.java623
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/XMLStructuredDocumentReParser.java124
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/XMLStructuredRegionFactory.java42
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/XMLTokenizer.java1937
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/AttributeEqualsRegion.java92
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/AttributeNameRegion.java165
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/AttributeValueRegion.java162
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/EmptyTagCloseRegion.java90
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/EndTagOpenRegion.java101
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/GenericTemplateRegion.java102
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/RegionToStringUtil.java29
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/RegionUpdateRule.java209
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/TagCloseRegion.java89
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/TagNameRegion.java93
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/TagOpenRegion.java98
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/WhiteSpaceOnlyRegion.java188
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/XMLCDataTextRegion.java175
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/XMLContentRegion.java175
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/XMLHeadParserFactory.java25
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/XMLHeadParserRegion.java107
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/XMLParserRegionFactory.java103
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/preferences/XMLCorePreferenceInitializer.java64
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/preferences/XMLCorePreferenceNames.java215
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/propagate/PropagatingAdapterFactoryImpl.java113
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/propagate/PropagatingAdapterImpl.java144
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/IXMLCharEntity.java39
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/IXMLNamespace.java26
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/IXMLPreferenceNames.java55
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/NameValidator.java63
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/contentmodel/CMDocType.java41
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/contentmodel/CMDocumentTracker.java32
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/contentmodel/CMNodeWrapper.java21
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/contentmodel/ContentModelAdapter.java54
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/contentmodel/NullContentModel.java101
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/contenttype/ContentTypeIdForXML.java54
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/document/IDOMAttr.java128
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/document/IDOMDocument.java100
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/document/IDOMDocumentType.java43
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/document/IDOMElement.java196
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/document/IDOMEntity.java33
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/document/IDOMImplementation.java48
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/document/IDOMModel.java59
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/document/IDOMNode.java272
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/document/IDOMText.java129
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/document/ISourceGenerator.java201
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/format/CommentNodeFormatter.java101
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/format/DocumentNodeFormatter.java55
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/format/ElementNodeFormatter.java425
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/format/FormatProcessorXML.java115
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/format/NoMoveFormatter.java28
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/format/NodeFormatter.java753
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/format/StructuredFormatPreferencesXML.java81
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/format/TextNodeFormatter.java385
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/provisional/text/IXMLPartitions.java42
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/regions/DOMRegionContext.java69
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/ssemodelquery/ModelQueryAdapter.java31
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/ssemodelquery/ModelQueryAdapterImpl.java76
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/ssemodelquery/MovableModelQuery.java23
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/tasks/XMLFileTaskScanner.java28
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/text/XMLStructuredDocumentRegion.java36
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/text/rules/StructuredTextPartitionerForXML.java132
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/validate/AbstractPropagatingValidator.java66
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/validate/Propagator.java54
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/validate/ValidationComponent.java54
    -rw-r--r--bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/text/IXMLPartitions.java42
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/.classpath66
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/.cvsignore10
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/.options1
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/.project27
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/.settings/org.eclipse.core.runtime.prefs3
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/.settings/org.eclipse.jdt.core.prefs79
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/.settings/org.eclipse.jdt.ui.prefs51
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/.settings/org.eclipse.ltk.core.refactoring.prefs3
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/.settings/org.eclipse.pde.prefs25
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/META-INF/MANIFEST.MF62
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/about.html34
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/build.properties30
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/examples/EditingAndValidatingXML.zipbin13213 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/XMLFile.gifbin564 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/collapse.gifbin146 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/collapse_all.gifbin155 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/constrainoff.gifbin216 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/constrainon.gifbin210 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/expand.gifbin153 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/expand_all.gifbin164 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/new_xml.gifbin239 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/rldgrmr.gifbin245 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/validate.gifbin334 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/etool16/collapse.gifbin146 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/etool16/collapse_all.gifbin157 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/etool16/constrainoff.gifbin348 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/etool16/constrainon.gifbin333 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/etool16/expand.gifbin153 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/etool16/expand_all.gifbin164 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/etool16/new_xml.gifbin370 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/etool16/rldgrmr.gifbin368 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/etool16/validate.gifbin558 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/XSDFile.gifbin574 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/add_correction.gifbin318 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/att_req_obj.gifbin221 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/attribute_obj.gifbin167 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/cdatasection.gifbin359 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/choice.gifbin145 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/comment_obj.gifbin196 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/correction_change.gifbin197 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/default.gifbin863 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/doctype.gifbin594 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/dtdfile.gifbin351 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/element_obj.gifbin351 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/entity.gifbin124 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/entity_reference.gifbin316 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/enum.gifbin80 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/error-overlay.gifbin82 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/localvariable_obj.gifbin152 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/notation.gifbin177 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/occurone_obj.gifbin139 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/proinst_obj.gifbin138 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/sort.gifbin162 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/tag-generic.gifbin98 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/tag-macro.gifbin205 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/tag_generic_deemphasized_obj.gifbin81 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/tag_generic_emphasized_obj.gifbin99 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/text.gifbin349 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/txtext.gifbin354 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/obj16/warning_obj.gifbin337 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/ovr16/error_ovr.gifbin82 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/ovr16/stale_error_ovr.gifbin77 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/ovr16/warn_ovr.gifbin162 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/view16/attibute.gifbin167 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/full/wizban/generatexml_wiz.pngbin4789 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/newSampleProject_wiz.gifbin596 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/newSampleProject_wizbanner.pngbin4129 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/sourceEditor.gifbin353 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/icons/xmldoc.gifbin564 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/plugin.properties139
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/plugin.xml1576
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/schema/catalogFileType.exsd120
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/AdvancedOptionsDialog.java229
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/CatalogFileTypeRegistryReader.java90
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/EditCatalogEntryDialog.java1071
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/ElementNodePage.java38
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/ImageFactory.java201
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/URIUtils.java54
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/XMLCatalogEntriesView.java304
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/XMLCatalogEntryDetailsView.java115
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/XMLCatalogFileType.java50
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/XMLCatalogMessages.java137
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/XMLCatalogPreferencePage.java242
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/XMLCatalogResources.properties115
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/XMLCatalogTreeViewer.java260
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/XMLQuickScan.java107
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/icons/etool50/catalogEntry.gifbin1736 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/icons/etool50/nextCatalog.gifbin1701 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/icons/obj16/entry_obj.pngbin4129 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/icons/obj16/file_expand.gifbin323 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/icons/obj16/file_obj.gifbin561 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/icons/obj16/nextCatalog_obj.gifbin608 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/icons/obj16/xmlcatalog_obj.gifbin598 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/icons/ovr16/error-overlay.gifbin82 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/DOMPropertyDescriptorFactory.java135
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/IDesignViewer.java25
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/IDesignViewerActionBarContributor.java21
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/SourceEditorActionBarContributor.java228
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/SourcePageActionContributor.java62
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/TreeContentHelper.java459
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/TreeExtension.java557
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/ViewerExpandCollapseAction.java66
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLEditorActionDefinitionIds.java33
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLEditorMessages.java51
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLEditorPluginHOLD_OLD.java53
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLEditorPluginImageHelper.java157
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLEditorPluginImages.java27
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLEditorResources.properties30
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLMultiPageEditorActionBarContributor.java93
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLMultiPageEditorPart.java938
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreeActionBarContributor.java319
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreeContentProvider.java320
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreeHelpContextIds.java31
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreePropertyDescriptorFactory.java118
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreeViewer.java334
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTreeExtension.java170
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-validation/org/eclipse/wst/xml/ui/internal/validation/XMLValidationUIMessages.java41
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-validation/org/eclipse/wst/xml/ui/internal/validation/core/errorinfo/GroupNamePropertyTester.java52
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-validation/org/eclipse/wst/xml/ui/internal/validation/core/errorinfo/ReferencedFileErrorDialog.java254
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-validation/org/eclipse/wst/xml/ui/internal/validation/core/errorinfo/ReferencedFileErrorUtility.java118
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-validation/org/eclipse/wst/xml/ui/internal/validation/core/errorinfo/ReferencedFileErrorsHandler.java108
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-validation/org/eclipse/wst/xml/ui/internal/validation/core/errorinfo/TaskListTableViewer.java159
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-validation/org/eclipse/wst/xml/ui/internal/validation/xmlvalidation.properties29
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/ExampleProjectCreationOperation.java206
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/ExampleProjectCreationWizard.java232
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/ExampleProjectCreationWizardPage.java111
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/ExportXMLCatalogWizard.java95
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/IXMLWizardHelpContextIds.java48
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/ImportXMLCatalogPage.java71
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/ImportXMLCatalogWizard.java97
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NamespaceInfoContentBuilder.java51
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NewModelWizard.java325
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NewXMLGenerator.java412
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NewXMLHandler.java71
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NewXMLTemplatesWizardPage.java510
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NewXMLWizard.java879
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/XMLImportActionDelegate.java78
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/XMLSchemaValidationChecker.java71
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/XMLWizard.java40
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/XMLWizardsMessages.java97
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/wizardResource.properties99
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/StructuredTextViewerConfigurationXML.java230
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/DOMObserver.java237
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/DOMObserverAdapter.java74
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/Logger.java163
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/XMLFormattingStrategy.java105
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/XMLUIMessages.java328
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/XMLUIPlugin.java117
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/XMLUIPluginResources.properties335
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/actions/AbstractCommentActionXMLDelegate.java117
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/actions/AbstractNodeActionManager.java682
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/actions/ActionContributorXML.java224
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/actions/AddBlockCommentActionXMLDelegate.java85
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/actions/BaseNodeActionManager.java519
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/actions/CleanupActionXMLDelegate.java139
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/actions/CleanupDialogXML.java204
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/actions/EditAttributeAction.java79
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/actions/EditDoctypeAction.java191
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/actions/EditElementAction.java117
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/actions/EditProcessingInstructionAction.java95
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/actions/EditSchemaInfoAction.java166
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/actions/GoToMatchingTagAction.java299
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/actions/MenuBuilder.java146
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/actions/NodeAction.java26
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/actions/RemoveBlockCommentActionXMLDelegate.java87
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/actions/ReplacePrefixAction.java79
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/actions/SiblingNavigationAction.java110
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/actions/ToggleCommentActionXMLDelegate.java174
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/autoedit/AutoEditStrategyForTabs.java200
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/autoedit/StructuredAutoEditStrategyXML.java180
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentassist/AbstractContentAssistProcessor.java2494
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentassist/AbstractContentModelGenerator.java90
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentassist/AttributeContextInformation.java115
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentassist/AttributeContextInformationPresenter.java122
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentassist/AttributeContextInformationProvider.java231
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentassist/ContentAssistRequest.java260
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentassist/ContextInfoModelUtil.java66
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentassist/CustomTemplateProposal.java40
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentassist/NoRegionContentAssistProcessor.java274
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentassist/NonValidatingModelQueryAction.java159
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentassist/ProposalComparator.java49
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentassist/ReplaceNameTemplateContext.java104
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentassist/SimpleCMElementDeclaration.java170
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentassist/SourceEditorImageHelper.java48
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentassist/XMLContentAssistProcessor.java166
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentassist/XMLContentAssistUtilities.java516
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentassist/XMLContentModelGenerator.java154
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentassist/XMLRelevanceConstants.java52
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentassist/XMLTemplateCompletionProcessor.java172
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentoutline/JFaceNodeAdapter.java257
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentoutline/JFaceNodeAdapterFactory.java173
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentoutline/JFaceNodeContentProvider.java120
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentoutline/JFaceNodeLabelProvider.java81
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentoutline/RefreshStructureJob.java359
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentoutline/XMLNodeActionManager.java53
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/CorrectionAssistantProviderXML.java51
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/CorrectionProcessorXML.java47
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/InsertRequiredAttrsQuickAssistProposal.java180
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/ProblemIDsXML.java32
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/QuickAssistProcessorXML.java192
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/QuickFixProcessorXML.java151
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/RemoveUnknownElementQuickFixProposal.java162
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/RenameInFileQuickAssistProposal.java188
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/SurroundWithNewElementQuickAssistProposal.java111
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/XMLQuickAssistProcessor.java212
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditAttributeDialog.java172
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditDoctypeDialog.java235
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditElementDialog.java141
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditEntityHelper.java73
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditNamespaceInfoDialog.java274
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditProcessingInstructionDialog.java116
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/EditSchemaInfoDialog.java80
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/NamespaceInfoErrorHelper.java104
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/NamespaceInfoTable.java398
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/SelectFileOrXMLCatalogIdDialog.java87
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/SelectFileOrXMLCatalogIdPanel.java184
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/SelectXMLCatalogIdDialog.java111
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/SelectXMLCatalogIdPanel.java147
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/UpdateListener.java20
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dialogs/XMLCatalogTableViewer.java201
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dnd/DragNodeCommand.java287
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/dnd/XMLDragAndDropManager.java54
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/doubleclick/XMLDoubleClickStrategy.java327
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/editor/CMImageUtil.java115
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/editor/DOMSelectionConvertorFactory.java86
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/editor/IHelpContextIds.java48
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/editor/XMLEditorPluginImageHelper.java159
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/editor/XMLEditorPluginImages.java60
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/handlers/AbstractSiblingNavigationHandler.java92
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/handlers/AddBlockCommentHandler.java77
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/handlers/CleanupdocumentHandler.java119
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/handlers/CollapseAllHandler.java52
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/handlers/CommentHandler.java103
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/handlers/ExpandAllHandler.java54
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/handlers/ExpandCollapseAllHandler.java58
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/handlers/NextSiblingNavigationHandler.java19
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/handlers/PreviousSiblingNavigationHandler.java19
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/handlers/ReloadDependenciesHandler.java80
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/handlers/RemoveBlockCommentHandler.java84
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/handlers/StructuredSelectEnclosingXMLHandler.java59
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/handlers/StructuredSelectNextXMLHandler.java97
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/handlers/StructuredSelectPreviousXMLHandler.java75
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/handlers/ToggleCommentHandler.java193
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/handlers/ToggleEditModeHandler.java137
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/handlers/XMLFindOccurencesHandler.java152
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/hyperlink/CatalogEntryHyperlink.java101
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/hyperlink/ExternalFileEditorInput.java171
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/hyperlink/ExternalFileHyperlink.java76
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/hyperlink/WorkspaceFileHyperlink.java89
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/hyperlink/XMLHyperlinkDetector.java569
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/nsedit/CommonAddNamespacesControl.java281
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/nsedit/CommonAddNamespacesDialog.java205
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/nsedit/CommonEditNamespacesDialog.java327
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/nsedit/CommonEditNamespacesTargetFieldDialog.java104
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/nsedit/CommonNamespaceInfoTable.java346
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/EmptyFilePreferencePage.java100
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/EncodingSettings.java359
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/WorkbenchDefaultEncodingSettings.java141
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLColorPage.java288
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLFilesPreferencePage.java259
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLSourcePreferencePage.java387
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLSyntaxColoringPage.java873
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLTemplatePreferencePage.java169
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLTypingPreferencePage.java106
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLUIPreferenceInitializer.java137
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLUIPreferenceNames.java137
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/projection/ProjectionAnnotationModelChanges.java54
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/projection/ProjectionModelNodeAdapterFactoryXML.java157
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/projection/ProjectionModelNodeAdapterXML.java298
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/projection/ProjectionViewerInformation.java197
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/projection/StructuredTextFoldingProviderXML.java350
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/properties/EnumeratedStringPropertyDescriptor.java71
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/properties/StringComboBoxCellEditor.java119
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/properties/XMLPropertySource.java819
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/provisional/IDOMSourceEditingTextTools.java68
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/provisional/XMLSourceEditingTextTools.java182
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/registry/AdapterFactoryProviderForXML.java90
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/search/XMLFindOccurrencesActionDelegate.java34
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/search/XMLFindOccurrencesProcessor.java31
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/selection/StructuredSelectEnclosingXMLActionDelegate.java72
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/selection/StructuredSelectNextXMLActionDelegate.java109
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/selection/StructuredSelectPreviousXMLActionDelegate.java88
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/style/IStyleConstantsXML.java43
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/style/LineStyleProviderForXML.java212
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/taginfo/MarkupTagInfoProvider.java184
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/taginfo/XMLInformationProvider.java67
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/taginfo/XMLTagInfoHoverProcessor.java362
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/templates/EncodingTemplateVariableResolverXML.java38
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/templates/TemplateContextTypeIdsXML.java50
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/templates/TemplateContextTypeXML.java35
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/text/XMLDocumentRegionEdgeMatcher.java27
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/util/SharedXMLEditorPluginImageHelper.java72
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/util/XMLCommonResources.java95
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/util/XMLCommonUIContextIds.java51
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/validation/DelegatingSourceValidator.java602
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/validation/DelegatingSourceValidatorForXML.java56
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/validation/MarkupQuickAssistProcessor.java147
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/validation/MarkupValidator.java1037
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/AbstractXMLContentOutlineConfiguration.java344
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/XMLContentOutlineConfiguration.java411
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/properties/XMLPropertySheetConfiguration.java259
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates.properties26
    -rw-r--r--bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates.xml24
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/.classpath41
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/.cvsignore6
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/.project28
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/.settings/org.eclipse.core.runtime.prefs3
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/.settings/org.eclipse.jdt.core.prefs79
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/.settings/org.eclipse.jdt.ui.prefs4
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/.settings/org.eclipse.ltk.core.refactoring.prefs3
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/.settings/org.eclipse.pde.prefs16
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/META-INF/MANIFEST.MF22
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/about.html34
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/build.properties22
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/plugin.properties22
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/plugin.xml98
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/src-contentmodel/org/eclipse/wst/xsd/contentmodel/internal/CMDocumentFactoryXSD.java47
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/src-contentmodel/org/eclipse/wst/xsd/contentmodel/internal/CMNodeImpl.java41
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/src-contentmodel/org/eclipse/wst/xsd/contentmodel/internal/XSDCMManager.java38
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/src-contentmodel/org/eclipse/wst/xsd/contentmodel/internal/XSDImpl.java3135
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/src-contentmodel/org/eclipse/wst/xsd/contentmodel/internal/XSDTypeUtil.java121
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/src-contentmodel/org/eclipse/wst/xsd/contentmodel/internal/XSDVisitor.java203
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/src-contentmodel/org/eclipse/wst/xsd/contentmodel/internal/util/XSDSchemaLocatorAdapterFactory.java31
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/src-contentmodel/org/eclipse/wst/xsd/contentmodel/internal/util/XSDSchemaLocatorImpl.java75
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/src-validation/org/eclipse/wst/xsd/core/internal/validation/XSDValidationConfiguration.java71
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/src-validation/org/eclipse/wst/xsd/core/internal/validation/XSDValidator.java250
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/src-validation/org/eclipse/wst/xsd/core/internal/validation/eclipse/Validator.java113
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/src-validation/org/eclipse/wst/xsd/core/internal/validation/eclipse/XSDDelegatingValidator.java31
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/src-validation/org/eclipse/wst/xsd/core/internal/validation/eclipse/XSDMessageInfoHelper.java120
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/src-validation/org/eclipse/wst/xsd/core/internal/validation/eclipse/XSDValidator.java48
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/src/org/eclipse/wst/xsd/core/internal/XSDCorePlugin.java56
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/src/org/eclipse/wst/xsd/core/internal/preferences/XSDCorePreferenceInitializer.java39
    -rw-r--r--bundles/org.eclipse.wst.xsd.core/src/org/eclipse/wst/xsd/core/internal/preferences/XSDCorePreferenceNames.java32
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/.classpath21
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/.cvsignore8
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/.project28
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/.settings/org.eclipse.core.runtime.prefs3
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/.settings/org.eclipse.jdt.core.prefs79
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/.settings/org.eclipse.jdt.ui.prefs4
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/.settings/org.eclipse.ltk.core.refactoring.prefs3
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/.settings/org.eclipse.pde.prefs16
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/META-INF/MANIFEST.MF85
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/about.html34
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/build.properties28
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/component.xml7
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/XSDFile.gifbin361 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/blank.gifbin832 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/browsebutton.gifbin825 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/collapse_attr.gifbin854 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/delete_obj.gifbin351 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/dlcl16/schemaview_co.gifbin336 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/dlcl16/showproperties_obj.gifbin577 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/dtool16/capturescreen.gifbin384 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/dtool16/help_contents.gifbin253 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/dtool16/showproperties_obj.gifbin577 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/elcl16/schemaview_co.gifbin351 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/elcl16/showproperties_obj.gifbin577 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/etool16/capturescreen.gifbin613 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/etool16/help_contents.gifbin259 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/etool16/showproperties_obj.gifbin577 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/etool16/zoomminus.gifbin559 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/etool16/zoomplus.gifbin559 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/expand_attr.gifbin856 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/filter.gifbin219 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/XSDAnyAttributedis.gifbin358 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/XSDAnydis.gifbin365 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/XSDAttributeGroup.gifbin215 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/XSDAttributeGroupRef.gifbin327 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/XSDAttributeGroupRefdis.gifbin212 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/XSDAttributeGroupdis.gifbin209 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/XSDAttributeRefdis.gifbin233 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/XSDAttributedis.gifbin164 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/XSDComplexContent.gifbin348 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/XSDComplexType.gifbin345 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/XSDComplexTypedis.gifbin229 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/XSDElementRefdis.gifbin349 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/XSDElementdis.gifbin223 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/XSDGroup.gifbin327 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/XSDGroupRef.gifbin331 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/XSDGroupRefdis.gifbin215 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/XSDGroupdis.gifbin209 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/XSDSimpleContent.gifbin210 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/all_obj.gifbin116 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/alldis_obj.gifbin73 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/annotationsheader.gifbin376 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/attributegroupsheader.gifbin369 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/attributesheader.gifbin367 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/choice_obj.gifbin130 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/choicedis_obj.gifbin97 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/directivesheader.gifbin336 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/elementsheader.gifbin595 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/error_marker.gifbin292 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/error_tsk.gifbin353 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/extnsn_obj.gifbin185 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/extnsndis_obj.gifbin130 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/groupsheader.gifbin372 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/index.gifbin1109 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/notationsheader.gifbin345 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/sequence_obj.gifbin120 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/sequencedis_obj.gifbin91 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/simpletype_obj.gifbin149 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/simpletypedis_obj.gifbin145 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/smpl_list_obj.gifbin350 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/smpl_listdis_obj.gifbin224 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/smpl_restrict_obj.gifbin231 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/smpl_restrictdis_obj.gifbin213 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/smpl_union_obj.gifbin243 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/smpl_uniondis_obj.gifbin230 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/obj16/typesheader.gifbin242 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/ovr16/attributeoverlay.gifbin117 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/ovr16/error_ovr.gifbin82 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/ovr16/extnsn_ovr.gifbin111 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/ovr16/extnsndis_ovr.gifbin111 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/icons/ovr16/textoverlay.gifbin167 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/plugin.properties854
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/plugin.xml485
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd-typeviz/org/eclipse/wst/xsd/ui/internal/adt/typeviz/TypeVizEditorMode.java53
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd-typeviz/org/eclipse/wst/xsd/ui/internal/adt/typeviz/design/figures/BoxFigure.java119
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd-typeviz/org/eclipse/wst/xsd/ui/internal/adt/typeviz/design/figures/CompartmentFigure.java188
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd-typeviz/org/eclipse/wst/xsd/ui/internal/adt/typeviz/design/figures/FieldFigure.java312
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd-typeviz/org/eclipse/wst/xsd/ui/internal/adt/typeviz/design/figures/HeadingFigure.java91
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd-typeviz/org/eclipse/wst/xsd/ui/internal/adt/typeviz/design/figures/RoundedLineBorder.java66
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd-typeviz/org/eclipse/wst/xsd/ui/internal/adt/typeviz/design/figures/StructureFigure.java61
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd-typeviz/org/eclipse/wst/xsd/ui/internal/adt/typeviz/design/figures/TypeVizFigureFactory.java64
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd-typeviz/org/eclipse/wst/xsd/ui/internal/adt/typeviz/design/layouts/ColumnData.java83
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd-typeviz/org/eclipse/wst/xsd/ui/internal/adt/typeviz/design/layouts/RowLayout.java179
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/actions/CreateElementAction.java360
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/actions/DOMAttribute.java75
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/actions/IXSDToolbarAction.java19
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/actions/MoveXSDAttributeAction.java248
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/actions/MoveXSDBaseAction.java28
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/actions/MoveXSDElementAction.java173
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/actions/XSDEditNamespacesAction.java290
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/CategoryAdapter.java175
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDAdapterFactory.java148
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDAnyTypeDefinitionAdapter.java56
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDAttributeDeclarationAdapter.java111
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDAttributeGroupDefinitionAdapter.java229
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDAttributeUseAdapter.java101
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDBaseAdapter.java238
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDBaseAttributeAdapter.java236
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDChildUtility.java280
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDComplexTypeDefinitionAdapter.java446
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDElementDeclarationAdapter.java339
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDEmptyFieldAdapter.java120
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDEnumerationFacetAdapter.java89
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDModelGroupAdapter.java260
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDModelGroupDefinitionAdapter.java290
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDParticleAdapter.java161
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDSchemaAdapter.java531
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDSchemaDirectiveAdapter.java170
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDSimpleTypeDefinitionAdapter.java206
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDTypeDefinitionAdapter.java68
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDVisitor.java241
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDVisitorForFields.java188
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/adapters/XSDWildcardAdapter.java237
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/commands/BaseDragAndDropCommand.java430
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/commands/XSDAttributeDragAndDropCommand.java243
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/commands/XSDElementDragAndDropCommand.java295
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/editparts/AttributeGroupDefinitionEditPart.java114
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/editparts/CategoryEditPart.java237
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/editparts/ConnectableEditPart.java275
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/editparts/ModelGroupDefinitionReferenceEditPart.java148
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/editparts/ModelGroupEditPart.java224
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/editparts/ReferenceConnection.java67
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/editparts/SpaceFillerForFieldEditPart.java48
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/editparts/TargetConnectionSpacingFigureEditPart.java46
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/editparts/TopLevelComponentEditPart.java460
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/editparts/XSDAttributesForAnnotationEditPart.java43
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/editparts/XSDBaseFieldEditPart.java164
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/editparts/XSDEditPartFactory.java160
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/editparts/XSDGroupsForAnnotationEditPart.java74
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/editparts/XSDModelGroupRouter.java378
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/editparts/XSDSchemaEditPart.java328
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/editparts/XSDSimpleTypeEditPart.java232
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/editparts/model/SpaceFiller.java169
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/editparts/model/TargetConnectionSpaceFiller.java46
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/editpolicies/DragAndDropEditPolicy.java92
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/editpolicies/GraphNodeDragTracker.java89
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/editpolicies/SelectionHandlesEditPolicyImpl.java110
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/editpolicies/TopLevelComponentLabelCellEditorLocator.java49
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/editpolicies/TopLevelNameDirectEditManager.java189
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/figures/CategoryFigure.java97
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/figures/CenteredIconFigure.java121
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/figures/GenericGroupFigure.java93
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/figures/HyperLinkLabel.java47
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/figures/IExtendedFigureFactory.java18
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/figures/IModelGroupFigure.java17
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/figures/ModelGroupFigure.java58
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/figures/SpacingFigure.java25
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/layouts/ContainerLayout.java219
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/layouts/FillLayout.java158
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/design/layouts/ModelGroupLayout.java197
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/dialogs/BuiltInTypesTreeViewerProvider.java221
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/dialogs/IOpenInNewEditor.java16
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/dialogs/NewAttributeDialog.java93
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/dialogs/NewComponentDialog.java196
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/dialogs/NewElementButtonHandler.java26
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/dialogs/NewElementDialog.java92
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/dialogs/NewTypeButtonHandler.java26
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/dialogs/NewTypeDialog.java209
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/dialogs/SelectBuiltInTypesForFilteringDialog.java108
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/dialogs/XSDEditSchemaNS.java44
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/dialogs/XSDGraphViewerDialog.java359
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/BaseHyperlinkDetector.java267
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/ISelectionMapper.java18
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/InternalXSDMultiPageEditor.java1421
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/KeyboardDragImpl.java80
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/Logger.java157
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/Messages.java136
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/SourcePageActionContributor.java58
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/StructuredTextViewerConfigurationXSD.java28
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/XSDAttributeReferenceEditManager.java96
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/XSDComplexTypeBaseTypeEditManager.java128
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/XSDEditorCSHelpIds.java140
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/XSDEditorConfiguration.java192
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/XSDEditorContextIds.java460
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/XSDEditorExtensionProperties.java70
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/XSDEditorPlugin.java387
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/XSDElementReferenceEditManager.java143
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/XSDFileEditorInput.java70
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/XSDHyperlink.java104
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/XSDHyperlinkDetector.java151
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/XSDHyperlinkTargetLocator.java301
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/XSDMultiPageEditorContributor.java269
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/XSDSelectionMapper.java44
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/XSDSubstitutionGroupEditManager.java75
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/XSDTabbedPropertySheetPage.java155
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/XSDTypeReferenceEditManager.java227
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/Dot.gifbin806 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/GenerateDtd.gifbin605 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/GenerateJava.gifbin609 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/GraphViewElementRef.gifbin860 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/NewXSD.pngbin4283 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/RegexWizardArrow.gifbin54 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/TriangleToolBar.gifbin92 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/ValidateXSD.gifbin558 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDAll.gifbin88 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDAnnotate.gifbin594 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDAny.gifbin613 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDAnyAttribute.gifbin384 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDAppInfo.gifbin121 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDAttribute.gifbin167 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDAttributeGroup.gifbin235 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDAttributeGroupRef.gifbin361 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDAttributeRef.gifbin350 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDChoice.gifbin145 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDComplexContent.gifbin211 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDComplexType.gifbin155 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDDateAndTimeTypes.gifbin594 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDDoc.gifbin368 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDElement.gifbin351 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDElementRef.gifbin585 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDExtension.gifbin101 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDField.gifbin227 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDFile.gifbin361 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDGlobalAttribute.gifbin167 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDGlobalElement.gifbin351 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDGroup.gifbin205 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDGroupRef.gifbin899 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDImport.gifbin114 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDInclude.gifbin324 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDKey.gifbin323 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDKeyRef.gifbin558 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDNotation.gifbin177 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDNumberTypes.gifbin115 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDRedefine.gifbin373 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDSelector.gifbin136 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDSequence.gifbin91 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDSimpleContent.gifbin210 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDSimpleEnum.gifbin105 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDSimpleList.gifbin347 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDSimplePattern.gifbin120 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDSimpleRestrict.gifbin141 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDSimpleType.gifbin150 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDSimpleTypeForEditPart.gifbin150 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDSimpleUnion.gifbin138 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/XSDUnique.gifbin210 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/appinfo_browse.gifbin323 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/appinfo_category.gifbin583 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/back.gifbin873 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/browsebutton.gifbin825 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/error_st_obj.gifbin339 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/forward.gifbin874 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/generate_xml.gifbin612 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/quickassist.gifbin225 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/regx_wiz.pngbin4272 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/reloadgrammar.gifbin365 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/sort.gifbin159 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/icons/xmlcatalog_obj.gifbin598 -> 0 bytes-rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/messages.properties135
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/search/IXSDTypesFilter.java25
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/search/XSDAttributeSearchListProvider.java64
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/search/XSDComponentDescriptionProvider.java195
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/search/XSDElementsSearchListProvider.java59
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/search/XSDSearchListDialogDelegate.java137
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/search/XSDSearchListProvider.java248
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/editor/search/XSDTypesSearchListProvider.java110
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/navigation/DesignViewNavigationLocation.java334
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/navigation/MultiPageEditorTextSelectionNavigationLocation.java50
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/nsedit/SchemaPrefixChangeHandler.java214
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/nsedit/TargetNamespaceChangeHandler.java152
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/nsedit/XSDVisitor.java216
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/preferences/XSDPreferencePage.java363
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/text/XSDModelAdapter.java237
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/text/XSDModelQueryExtension.java197
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/text/XSDModelReconcileAdapter.java186
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/util/DocumentAdapter.java58
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/util/ModelReconcileAdapter.java150
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/util/SelectionAdapter.java83
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/util/TypesHelper.java404
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/util/ViewUtility.java246
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/util/XSDDOMHelper.java456
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/util/XSDSchemaLocationResolverAdapterFactory.java31
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/util/XSDSchemaLocationResolverImpl.java39
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/utils/OpenOnSelectionHelper.java369
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/validation/DelegatingSourceValidatorForXSD.java48
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/widgets/EnumerationsDialog.java111
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/widgets/TypeSection.java335
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/widgets/XSDEditSchemaInfoDialog.java135
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/wizards/NewXSDWizard.java172
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/wizards/RegexCompositionPage.java947
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/wizards/RegexNode.java421
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/wizards/RegexTestingPage.java147
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/wizards/RegexWizard.java68
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/wizards/XSDLocationChoicePage.java69
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/wizards/XSDNewFilePage.java129
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt-xsd/org/eclipse/wst/xsd/ui/internal/wizards/XSDSelectIncludeFileWizard.java371
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/actions/AddFieldAction.java77
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/actions/BaseDirectEditAction.java90
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/actions/BaseSelectionAction.java127
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/actions/CaptureScreenAction.java239
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/actions/DeleteAction.java103
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/actions/DesignSelectAll.java75
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/actions/SetInputToGraphView.java74
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/actions/ShowPropertiesViewAction.java56
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/ADTFloatingToolbar.java73
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/BaseGraphicalViewerKeyHandler.java168
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/DesignViewContextMenuProvider.java158
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/DesignViewGraphicalViewer.java427
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/DesignViewerGraphicConstants.java21
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/FlatCCombo.java1490
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/IAnnotationProvider.java17
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/IKeyboardDrag.java19
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/ImageOverlayDescriptor.java60
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/directedit/ADTComboBoxCellEditor.java268
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/directedit/AttributeReferenceDirectEditManager.java38
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/directedit/ComboBoxCellEditorManager.java224
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/directedit/ElementReferenceDirectEditManager.java37
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/directedit/LabelCellEditorLocator.java90
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/directedit/LabelEditManager.java150
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/directedit/ReferenceDirectEditManager.java180
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/directedit/TypeReferenceDirectEditManager.java43
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/ADTEditPartFactory.java102
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/ADTFloatingToolbarEditPart.java166
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/BackToSchemaEditPart.java134
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/BaseEditPart.java293
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/BaseFieldEditPart.java518
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/BaseTypeConnectingEditPart.java207
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/BoxEditPart.java92
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/CenteredConnectionAnchor.java115
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/ColumnEditPart.java127
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/CompartmentEditPart.java217
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/ComplexTypeEditPart.java121
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/EditPartNavigationHandlerUtil.java72
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/FieldEditPart.java21
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/IAutoDirectEdit.java20
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/IConnectionContainer.java16
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/IHolderEditPart.java16
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/INamedEditPart.java21
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/RootContentEditPart.java184
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/RootEditPart.java115
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/RootHolderEditPart.java62
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/SectionEditPart.java38
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/StructureEditPart.java244
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/TopLevelFieldEditPart.java131
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/TypeReferenceConnection.java105
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/model/AbstractModelCollection.java65
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/model/Annotation.java37
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/model/Compartment.java73
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/model/FocusTypeColumn.java60
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/model/IActionProvider.java18
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/model/IFeedbackHandler.java17
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/model/IGraphElement.java23
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/model/IModelProxy.java18
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/model/ReferencedTypeColumn.java138
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/model/RootHolder.java28
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editpolicies/ADTDirectEditPolicy.java46
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editpolicies/ADTSelectionFeedbackEditPolicy.java52
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editpolicies/DirectEditPolicyDelegate.java18
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editpolicies/IADTUpdateCommand.java18
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editpolicies/KeyBoardAccessibilityEditPolicy.java28
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editpolicies/SimpleDirectEditPolicy.java58
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/figures/IADTFigure.java22
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/figures/ICompartmentFigure.java19
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/figures/IFieldFigure.java23
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/figures/IFigureFactory.java18
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/figures/IStructureFigure.java22
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/edit/ComponentReferenceEditManager.java26
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/edit/ComponentReferenceEditManager2.java19
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/edit/IComponentDialog.java31
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/editor/ADTExternalResourceVariant.java156
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/editor/ADTFileStoreEditorInput.java60
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/editor/ADTMultiPageEditor.java337
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/editor/ADTReadOnlyFileEditorInput.java135
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/editor/CommonMultiPageEditor.java931
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/editor/CommonSelectionManager.java111
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/editor/ContextMenuParticipant.java25
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/editor/EditorMode.java37
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/editor/EditorModeManager.java136
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/editor/IADTEditorInput.java19
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/editor/IEditorModeListener.java16
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/editor/Messages.java52
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/editor/ProductCustomizationProvider.java47
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/editor/messages.properties35
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/facade/IADTObject.java18
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/facade/IADTObjectListener.java16
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/facade/IComplexType.java18
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/facade/IField.java35
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/facade/IModel.java18
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/facade/IStructure.java23
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/facade/IType.java24
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/outline/ADTContentOutlinePage.java323
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/outline/ADTContentOutlineProvider.java147
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/outline/ADTLabelProvider.java79
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/outline/ExtensibleContentOutlinePage.java147
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/outline/ITreeElement.java23
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/properties/ADTTabbedPropertySheetPage.java42
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/actions/AddXSDAnyAttributeAction.java90
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/actions/AddXSDAnyElementAction.java80
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/actions/AddXSDAttributeDeclarationAction.java128
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/actions/AddXSDAttributeGroupDefinitionAction.java78
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/actions/AddXSDComplexTypeDefinitionAction.java52
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/actions/AddXSDElementAction.java156
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/actions/AddXSDEnumerationFacetAction.java90
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/actions/AddXSDModelGroupAction.java97
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/actions/AddXSDModelGroupDefinitionAction.java62
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/actions/AddXSDSchemaDirectiveAction.java92
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/actions/AddXSDSimpleTypeDefinitionAction.java53
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/actions/DeleteXSDConcreteComponentAction.java74
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/actions/OpenInNewEditor.java544
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/actions/SetMultiplicityAction.java88
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/actions/SetTypeAction.java50
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/actions/XSDBaseAction.java81
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/AddDocumentationCommand.java131
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/AddEnumerationsCommand.java98
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/AddExtensibilityElementCommand.java81
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/AddExtensionAttributeCommand.java110
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/AddExtensionCommand.java48
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/AddExtensionElementCommand.java152
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/AddXSDAnyAttributeCommand.java64
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/AddXSDAnyElementCommand.java80
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/AddXSDAttributeDeclarationCommand.java238
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/AddXSDAttributeGroupDefinitionCommand.java159
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/AddXSDComplexTypeDefinitionCommand.java122
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/AddXSDElementCommand.java388
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/AddXSDImportCommand.java42
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/AddXSDIncludeCommand.java43
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/AddXSDModelGroupCommand.java167
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/AddXSDModelGroupDefinitionCommand.java124
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/AddXSDRedefineCommand.java44
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/AddXSDSchemaDirectiveCommand.java60
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/AddXSDSimpleTypeDefinitionCommand.java91
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/BaseCommand.java196
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/ChangeToLocalSimpleTypeCommand.java80
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/DeleteCommand.java181
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/ExtensibleAddExtensionCommand.java214
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/ExtensibleRemoveExtensionNodeCommand.java94
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/RemoveExtensionAttributerCommand.java43
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/RemoveExtensionElementCommand.java46
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/RemoveExtensionNodeCommand.java61
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/SetBaseTypeAndManagerDirectivesCommand.java49
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/SetBaseTypeCommand.java85
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/SetMultiplicityCommand.java70
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/SetTypeCommand.java116
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/SetXSDFacetValueCommand.java50
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateAttributeReferenceAndManagerDirectivesCommand.java60
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateAttributeReferenceCommand.java38
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateAttributeValueCommand.java91
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateComplexTypeDerivationBy.java51
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateComponentReferenceAndManageDirectivesCommand.java150
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateContentModelCommand.java49
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateElementReferenceAndManageDirectivesCommand.java59
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateElementReferenceCommand.java39
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateMaxOccursCommand.java65
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateMinOccursCommand.java92
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateNameCommand.java112
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateNamespaceInformationCommand.java298
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateNumericBoundsFacetCommand.java168
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateStringLengthFacetCommand.java230
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateTextValueCommand.java61
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateTypeReferenceAndManageDirectivesCommand.java62
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateTypeReferenceCommand.java78
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateXSDPatternFacetCommand.java76
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateXSDWhiteSpaceFacetCommand.java60
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/providers/XSDSectionLabelProvider.java172
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/AbstractExtensionsSection.java615
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/AbstractSection.java396
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/AbstractSectionDescriptor.java108
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/AnnotationSection.java166
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/CommonDirectivesSection.java163
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/EnumerationsSection.java392
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/ExtensionsSection.java294
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/FacetViewer.java559
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/IDocumentChangedNotifier.java19
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/MultiplicitySection.java216
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/RefactoringSection.java106
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/SchemaLocationSection.java147
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/SimpleContentUnionMemberTypesDialog.java312
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/SpecificConstraintsWidget.java727
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDActionManager.java148
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDAnyElementContentsSection.java250
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDAttributeDeclarationSection.java908
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDAttributeGroupDefinitionSection.java295
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDComplexTypeAdvancedSection.java257
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDComplexTypeSection.java406
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDElementDeclarationAdvancedSection.java453
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDElementDeclarationSection.java647
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDEnumerationFacetSection.java129
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDFacetSection.java1019
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDFacetSectionFilter.java42
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDImportSection.java264
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDModelGroupDefinitionSection.java360
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDModelGroupSection.java163
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDSchemaAdvancedSection.java208
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDSchemaSection.java318
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDSimpleTypeAdvancedSection.java120
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDSimpleTypeSection.java651
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/XSDTableTreeViewer.java126
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/appinfo/AddExtensionsComponentDialog.java785
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/appinfo/AddNewCategoryDialog.java370
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/appinfo/CategoryProvider.java81
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/appinfo/DOMExtensionDetailsContentProvider.java211
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/appinfo/DOMExtensionItem.java226
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/appinfo/DOMExtensionItemEditManager.java50
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/appinfo/DOMExtensionItemMenuListener.java127
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/appinfo/DOMExtensionTreeContentProvider.java83
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/appinfo/DOMExtensionTreeLabelProvider.java88
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/appinfo/ExtensionDetailsContentProvider.java19
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/appinfo/ExtensionDetailsViewer.java334
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/appinfo/ExtensionItem.java31
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/appinfo/ExtensionItemEditManager.java32
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/appinfo/ExtensionItemFilter.java28
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/appinfo/ExtensionsSchemasRegistry.java330
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/appinfo/SelectFromCatalogDialog.java212
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/appinfo/SpecificationForExtensionsSchema.java219
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/appinfo/XSDExtensionTreeContentProvider.java119
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/appinfo/custom/DefaultListNodeEditorConfiguration.java27
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/appinfo/custom/DialogNodeEditorConfiguration.java33
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/appinfo/custom/ListNodeEditorConfiguration.java35
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/appinfo/custom/NodeCustomizationRegistry.java157
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/appinfo/custom/NodeEditorConfiguration.java43
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/appinfo/custom/NodeEditorProvider.java18
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/properties/sections/appinfo/custom/NodeFilter.java21
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/util/Messages.java137
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/util/XSDCommonUIUtils.java622
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/util/XSDDirectivesManager.java815
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/util/XSDDirectivesSchemaLocationUpdater.java169
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/util/messages.properties122
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/Checks.java38
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/INameUpdating.java25
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/IReferenceUpdating.java35
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/PerformUnsavedRefactoringOperation.java70
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/RefactoringComponent.java62
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/RefactoringMessages.java49
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/TextChangeManager.java115
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/XMLRefactoringComponent.java78
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/actions/MakeAnonymousTypeGlobalAction.java158
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/actions/MakeLocalElementGlobalAction.java76
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/actions/RenameAction.java118
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/actions/RenameComponentAction.java156
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/actions/RenameResourceAction.java78
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/actions/RenameResourceActionDelegate.java57
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/actions/RenameTargetNamespaceAction.java78
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/actions/SelectionDispatchAction.java195
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/actions/XSDRefactorActionGroup.java70
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/actions/XSDRefactorGroupActionDelegate.java60
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/actions/XSDSelectionDispatchAction.java54
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/messages.properties55
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/rename/ComponentRenameArguments.java52
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/rename/RenameComponentProcessor.java519
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/rename/RenameResourceProcessor.java174
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/rename/RenameTargetNamespaceProcessor.java419
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/rename/ResourceRenameChange.java108
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/rename/ResourceRenameParticipant.java296
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/rename/SortingSearchRequestor.java87
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/rename/XMLComponentRenameParticipant.java138
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/rename/XSDComponentRenameParticipant.java43
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/structure/AbstractCommand.java71
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/structure/MakeAnonymousTypeGlobalCommand.java84
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/structure/MakeLocalElementGlobalCommand.java81
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/structure/MakeTypeGlobalChange.java168
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/structure/MakeTypeGlobalProcessor.java220
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/util/TextChangeCompatibility.java97
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/wizard/RefactorActionGroup.java215
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/wizard/RefactorGroupActionDelegate.java146
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/wizard/RefactorGroupSubMenu.java57
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/wizard/RefactoringWizardMessages.java70
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/wizard/RenameInputWizardPage.java257
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/wizard/RenameRefactoringWizard.java72
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-refactor/org/eclipse/wst/xsd/ui/internal/refactor/wizard/messages.properties55
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/IXSDSearchConstants.java29
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/SearchMessages.java31
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/XSDSearchContributor.java93
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/XSDSearchParticipant.java51
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/XSDSearchQuery.java54
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/actions/BaseGroupActionDelegate.java146
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/actions/CompositeActionGroup.java99
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/actions/DeclarationsSearchGroup.java17
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/actions/FindAction.java30
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/actions/FindReferencesAction.java149
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/actions/FindReferencesInProjectAction.java45
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/actions/FindReferencesInWorkingSetAction.java88
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/actions/ImplementorsSearchGroup.java17
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/actions/OccurrencesSearchGroup.java17
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/actions/ReferencesSearchGroup.java179
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/actions/SearchGroup.java20
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/actions/XSDSearchActionGroup.java35
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/actions/XSDSearchDeclarationsGroupActionDelegate.java22
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/actions/XSDSearchGroupSubMenu.java72
    -rw-r--r--bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/actions/XSDSearchReferencesGroupActionDelegate.java46
    -rw-r--r--development/org.eclipse.wst.sse.unittests/.classpath7
    -rw-r--r--development/org.eclipse.wst.sse.unittests/.cvsignore4
    -rw-r--r--development/org.eclipse.wst.sse.unittests/.project28
    -rw-r--r--development/org.eclipse.wst.sse.unittests/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--development/org.eclipse.wst.sse.unittests/.settings/org.eclipse.jdt.core.prefs80
    -rw-r--r--development/org.eclipse.wst.sse.unittests/.settings/org.eclipse.jdt.ui.prefs3
    -rw-r--r--development/org.eclipse.wst.sse.unittests/.settings/org.eclipse.ltk.core.refactoring.prefs3
    -rw-r--r--development/org.eclipse.wst.sse.unittests/.settings/org.eclipse.pde.prefs15
    -rw-r--r--development/org.eclipse.wst.sse.unittests/META-INF/MANIFEST.MF41
    -rw-r--r--development/org.eclipse.wst.sse.unittests/SSE Master List Test Suite.launch39
    -rw-r--r--development/org.eclipse.wst.sse.unittests/build.properties15
    -rw-r--r--development/org.eclipse.wst.sse.unittests/icons/sourceEditor.gifbin353 -> 0 bytes-rw-r--r--development/org.eclipse.wst.sse.unittests/plugin.properties17
    -rw-r--r--development/org.eclipse.wst.sse.unittests/plugin.xml21
    -rw-r--r--development/org.eclipse.wst.sse.unittests/schema/additionalTests.exsd123
    -rw-r--r--development/org.eclipse.wst.sse.unittests/src/org/eclipse/wst/sse/unittests/MasterListTestSuite.java111
    -rw-r--r--development/org.eclipse.wst.sse.unittests/src/org/eclipse/wst/sse/unittests/MasterPerformanceTestSuite.java51
    -rw-r--r--development/org.eclipse.wst.sse.unittests/src/org/eclipse/wst/sse/unittests/TestTurkish.java34
    -rw-r--r--development/org.eclipse.wst.sse.unittests/src/org/eclipse/wst/sse/unittests/minortools/TestString.java64
    -rw-r--r--development/org.eclipse.wst.sse.unittests/src/org/eclipse/wst/sse/unittests/minortools/TestStringUtils.java46
    -rw-r--r--development/org.eclipse.wst.sse.unittests/src/org/eclipse/wst/sse/unittests/minortools/VersionRemover.java105
    -rw-r--r--development/org.eclipse.wst.sse.unittests/src/testStringXML.jpage10
    -rw-r--r--development/org.eclipse.wst.sse.unittests/tet.jsp21
    -rw-r--r--development/org.eclipse.wst.sse.unittests/turkishCase.jpage3
    -rw-r--r--docs/org.eclipse.jst.jsp.ui.infopop/.cvsignore1
    -rw-r--r--docs/org.eclipse.jst.jsp.ui.infopop/.project22
    -rw-r--r--docs/org.eclipse.jst.jsp.ui.infopop/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--docs/org.eclipse.jst.jsp.ui.infopop/.settings/org.eclipse.jdt.core.prefs80
    -rw-r--r--docs/org.eclipse.jst.jsp.ui.infopop/.settings/org.eclipse.jdt.ui.prefs3
    -rw-r--r--docs/org.eclipse.jst.jsp.ui.infopop/.settings/org.eclipse.ltk.core.refactoring.prefs3
    -rw-r--r--docs/org.eclipse.jst.jsp.ui.infopop/.settings/org.eclipse.pde.prefs15
    -rw-r--r--docs/org.eclipse.jst.jsp.ui.infopop/EditorJspContexts.xml74
    -rw-r--r--docs/org.eclipse.jst.jsp.ui.infopop/EditorJspContexts2.xml83
    -rw-r--r--docs/org.eclipse.jst.jsp.ui.infopop/JspWizContexts.xml19
    -rw-r--r--docs/org.eclipse.jst.jsp.ui.infopop/META-INF/MANIFEST.MF7
    -rw-r--r--docs/org.eclipse.jst.jsp.ui.infopop/about.html34
    -rw-r--r--docs/org.eclipse.jst.jsp.ui.infopop/build.properties14
    -rw-r--r--docs/org.eclipse.jst.jsp.ui.infopop/plugin.properties7
    -rw-r--r--docs/org.eclipse.jst.jsp.ui.infopop/plugin.xml27
    -rw-r--r--docs/org.eclipse.wst.doc.user/.cvsignore2
    -rw-r--r--docs/org.eclipse.wst.doc.user/.project22
    -rw-r--r--docs/org.eclipse.wst.doc.user/META-INF/MANIFEST.MF8
    -rw-r--r--docs/org.eclipse.wst.doc.user/about.html34
    -rw-r--r--docs/org.eclipse.wst.doc.user/book.css203
    -rw-r--r--docs/org.eclipse.wst.doc.user/build.properties13
    -rw-r--r--docs/org.eclipse.wst.doc.user/common.css1197
    -rw-r--r--docs/org.eclipse.wst.doc.user/commonltr.css1306
    -rw-r--r--docs/org.eclipse.wst.doc.user/commonrtl.css113
    -rw-r--r--docs/org.eclipse.wst.doc.user/images/SelectExistingServer.jpgbin43906 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/SelectNewServer.jpgbin43236 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/XMLCatalog-Figure1.jpgbin39687 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/XMLCatalog-Figure2.jpgbin14815 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/XMLCatalog-Figure3.jpgbin9277 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/XMLCatalog-Figure4.jpgbin21628 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/XMLCatalog-Figure5.jpgbin18294 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/image99L.jpgbin73786 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/imageEJ9.jpgbin50725 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/imageIAI.jpgbin53806 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/imageLKF.jpgbin72286 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/imageO78.jpgbin71949 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/imageU71.jpgbin47607 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/note.gifbin1014 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/selectRootElementDTD.pngbin14811 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/selectRootElementXSD.pngbin16425 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/wsdl.gifbin563 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/wsdl_main.gifbin158 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/wsdleditor-backbutton.jpgbin436 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/wsdleditor-binding.jpgbin22242 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/wsdleditor-complex-type.jpgbin6899 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/wsdleditor-finished-wsdl.jpgbin62972 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/wsdleditor-new-operation.jpgbin7490 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/wsdleditor-new-skeleton.jpgbin44414 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/wsdleditor-new-wizard.jpgbin25784 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/wsdleditor-setelement-dialog.jpgbin25350 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/wsdleditor-settype-dialog.jpgbin22932 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/wsdleditor-smart-rename1.jpgbin17781 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/xsdeditor-backbutton.jpgbin504 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/xsdeditor-figure1.jpgbin80337 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/xsdeditor-figure2.jpgbin25177 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/xsdeditor-figure3.jpgbin14100 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/xsdeditor-figure4.jpgbin4911 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/xsdeditor-figure5.jpgbin24458 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/xsdeditor-figure6.jpgbin15499 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/xsdeditor-figure7.jpgbin17880 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/xsdeditor-figure8.jpgbin12423 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/images/xsdeditor-figure9.jpgbin43743 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.doc.user/notices.html17
    -rw-r--r--docs/org.eclipse.wst.doc.user/plugin.properties13
    -rw-r--r--docs/org.eclipse.wst.doc.user/plugin.xml10
    -rw-r--r--docs/org.eclipse.wst.doc.user/reference_toc.xml26
    -rw-r--r--docs/org.eclipse.wst.doc.user/toc.xml49
    -rw-r--r--docs/org.eclipse.wst.doc.user/topics/limitations.html57
    -rw-r--r--docs/org.eclipse.wst.doc.user/topics/overview.html25
    -rw-r--r--docs/org.eclipse.wst.dtd.ui.infopop/.cvsignore1
    -rw-r--r--docs/org.eclipse.wst.dtd.ui.infopop/.project22
    -rw-r--r--docs/org.eclipse.wst.dtd.ui.infopop/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--docs/org.eclipse.wst.dtd.ui.infopop/.settings/org.eclipse.jdt.core.prefs80
    -rw-r--r--docs/org.eclipse.wst.dtd.ui.infopop/.settings/org.eclipse.jdt.ui.prefs3
    -rw-r--r--docs/org.eclipse.wst.dtd.ui.infopop/.settings/org.eclipse.ltk.core.refactoring.prefs3
    -rw-r--r--docs/org.eclipse.wst.dtd.ui.infopop/.settings/org.eclipse.pde.prefs15
    -rw-r--r--docs/org.eclipse.wst.dtd.ui.infopop/EditorDtdContexts.xml80
    -rw-r--r--docs/org.eclipse.wst.dtd.ui.infopop/EditorDtdContexts2.xml25
    -rw-r--r--docs/org.eclipse.wst.dtd.ui.infopop/META-INF/MANIFEST.MF7
    -rw-r--r--docs/org.eclipse.wst.dtd.ui.infopop/about.html34
    -rw-r--r--docs/org.eclipse.wst.dtd.ui.infopop/build.properties8
    -rw-r--r--docs/org.eclipse.wst.dtd.ui.infopop/plugin.properties13
    -rw-r--r--docs/org.eclipse.wst.dtd.ui.infopop/plugin.xml25
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/.cvsignore3
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/.project22
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/.settings/org.eclipse.jdt.core.prefs80
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/.settings/org.eclipse.jdt.ui.prefs3
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/.settings/org.eclipse.ltk.core.refactoring.prefs3
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/.settings/org.eclipse.pde.prefs15
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/DTDEditormap_toc.ditamap32
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/DTDEditormap_toc.xml26
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/DTDreftable.ditamap23
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/DTDreftable.xml12
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/DocBuild.xml66
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/META-INF/MANIFEST.MF8
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/about.html34
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/build.properties15
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/images/ADD_Comment.gifbin196 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/images/ADD_Element.gifbin353 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/images/ADD_Entity.gifbin124 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/images/ADD_Entity_Reference.gifbin318 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/images/ADD_Notation.gifbin177 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/images/XSDChoice.gifbin145 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/images/XSDSequence.gifbin91 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/images/attribute.gifbin167 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/images/attribute_list.gifbin247 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/images/nDTDFile.gifbin135 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/images/nany.gifbin136 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/images/nempty.gifbin121 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/images/organize_dtd_logically.gifbin347 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/images/sort.gifbin162 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/index/_9.cfsbin14180 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/index/deletablebin4 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/index/indexed_contributions3
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/index/indexed_dependencies4
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/index/indexed_docs11
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/index/segmentsbin27 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/myplugin.xml25
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/org.eclipse.wst.dtdeditor.doc.user.maplist9
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/org.eclipse.wst.dtdeditor.doc.userindex.xml48
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/plugin.properties4
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/plugin.xml25
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/topics/cdtdover.dita33
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/topics/cdtdover.html61
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/topics/cworkdtds.dita10
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/topics/cworkdtds.html50
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/topics/rdtdicons.dita88
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/topics/rdtdicons.html146
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/topics/rdtdkey.dita48
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/topics/rdtdkey.html94
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/topics/tcretdtd.dita45
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/topics/tcretdtd.html87
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/topics/tdtemplt.dita46
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/topics/tdtemplt.html82
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/topics/tedtsrcst.dita47
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/topics/tedtsrcst.html82
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/topics/timptdtd.dita33
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/topics/timptdtd.html68
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/topics/tvaldtd.dita39
    -rw-r--r--docs/org.eclipse.wst.dtdeditor.doc.user/topics/tvaldtd.html64
    -rw-r--r--docs/org.eclipse.wst.html.ui.infopop/.cvsignore1
    -rw-r--r--docs/org.eclipse.wst.html.ui.infopop/.project22
    -rw-r--r--docs/org.eclipse.wst.html.ui.infopop/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--docs/org.eclipse.wst.html.ui.infopop/.settings/org.eclipse.jdt.core.prefs80
    -rw-r--r--docs/org.eclipse.wst.html.ui.infopop/.settings/org.eclipse.jdt.ui.prefs3
    -rw-r--r--docs/org.eclipse.wst.html.ui.infopop/.settings/org.eclipse.ltk.core.refactoring.prefs3
    -rw-r--r--docs/org.eclipse.wst.html.ui.infopop/.settings/org.eclipse.pde.prefs15
    -rw-r--r--docs/org.eclipse.wst.html.ui.infopop/EditorHtmlContexts.xml95
    -rw-r--r--docs/org.eclipse.wst.html.ui.infopop/EditorHtmlContexts2.xml23
    -rw-r--r--docs/org.eclipse.wst.html.ui.infopop/HTMLWizContexts.xml21
    -rw-r--r--docs/org.eclipse.wst.html.ui.infopop/META-INF/MANIFEST.MF7
    -rw-r--r--docs/org.eclipse.wst.html.ui.infopop/about.html34
    -rw-r--r--docs/org.eclipse.wst.html.ui.infopop/build.properties8
    -rw-r--r--docs/org.eclipse.wst.html.ui.infopop/plugin.properties3
    -rw-r--r--docs/org.eclipse.wst.html.ui.infopop/plugin.xml26
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/.cvsignore4
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/.project22
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/.settings/org.eclipse.jdt.core.prefs80
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/.settings/org.eclipse.jdt.ui.prefs3
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/.settings/org.eclipse.ltk.core.refactoring.prefs3
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/.settings/org.eclipse.pde.prefs15
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/DocBuild.xml64
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/META-INF/MANIFEST.MF8
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/about.html34
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/build.properties16
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/images/ncontass.gifbin19680 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.sse.doc.user/images/njscdast.gifbin19047 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.sse.doc.user/images/nlinux.gifbin174 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.sse.doc.user/images/nmacscrp.gifbin1112 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.sse.doc.user/images/nquest.gifbin873 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.sse.doc.user/images/nwin.gifbin221 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.sse.doc.user/index/_p.cfsbin39759 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.sse.doc.user/index/deletablebin4 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.sse.doc.user/index/indexed_contributions3
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/index/indexed_dependencies4
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/index/indexed_docs24
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/index/segmentsbin27 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.sse.doc.user/myplugin.xml31
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/org.eclipse.wst.sse.doc.user.maplist7
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/org.eclipse.wst.sse.doc.userindex.html242
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/org.eclipse.wst.sse.doc.userindex.xml165
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/plugin.properties3
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/plugin.xml31
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/sse_toc.ditamap57
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/sse_toc.xml35
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/cencoding.dita31
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/cencoding.html56
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/csrcedt001.dita57
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/csrcedt001.html89
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/csrcedt004.dita125
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/csrcedt004.html191
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/csrcedt006.dita115
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/csrcedt006.html148
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/cvalidate.dita48
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/cvalidate.html77
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tcontenttype.dita32
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tcontenttype.html58
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt000.dita52
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt000.html82
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt001.dita61
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt001.html91
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt005.dita70
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt005.html99
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt007.dita44
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt007.html72
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt010.dita51
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt010.html79
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt014.dita53
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt014.html96
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt015.dita81
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt015.html123
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt016.dita47
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt016.html70
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt022.dita56
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt022.html84
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt023.dita63
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt023.html96
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt024.dita74
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt024.html108
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt025.dita86
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt025.html153
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt026.dita44
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt026.html70
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt027.dita40
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt027.html63
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt028.dita71
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt028.html108
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt029.dita71
    -rw-r--r--docs/org.eclipse.wst.sse.doc.user/topics/tsrcedt029.html108
    -rw-r--r--docs/org.eclipse.wst.sse.ui.infopop/.cvsignore1
    -rw-r--r--docs/org.eclipse.wst.sse.ui.infopop/.project22
    -rw-r--r--docs/org.eclipse.wst.sse.ui.infopop/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--docs/org.eclipse.wst.sse.ui.infopop/.settings/org.eclipse.jdt.core.prefs80
    -rw-r--r--docs/org.eclipse.wst.sse.ui.infopop/.settings/org.eclipse.jdt.ui.prefs3
    -rw-r--r--docs/org.eclipse.wst.sse.ui.infopop/.settings/org.eclipse.ltk.core.refactoring.prefs3
    -rw-r--r--docs/org.eclipse.wst.sse.ui.infopop/.settings/org.eclipse.pde.prefs15
    -rw-r--r--docs/org.eclipse.wst.sse.ui.infopop/EditorContexts.xml85
    -rw-r--r--docs/org.eclipse.wst.sse.ui.infopop/EditorCssContexts2.xml30
    -rw-r--r--docs/org.eclipse.wst.sse.ui.infopop/META-INF/MANIFEST.MF7
    -rw-r--r--docs/org.eclipse.wst.sse.ui.infopop/about.html34
    -rw-r--r--docs/org.eclipse.wst.sse.ui.infopop/build.properties8
    -rw-r--r--docs/org.eclipse.wst.sse.ui.infopop/plugin.properties3
    -rw-r--r--docs/org.eclipse.wst.sse.ui.infopop/plugin.xml22
    -rw-r--r--docs/org.eclipse.wst.web.ui.infopop/.cvsignore1
    -rw-r--r--docs/org.eclipse.wst.web.ui.infopop/.project11
    -rw-r--r--docs/org.eclipse.wst.web.ui.infopop/META-INF/MANIFEST.MF8
    -rw-r--r--docs/org.eclipse.wst.web.ui.infopop/StaticWebWizContexts.xml33
    -rw-r--r--docs/org.eclipse.wst.web.ui.infopop/about.html34
    -rw-r--r--docs/org.eclipse.wst.web.ui.infopop/build.properties7
    -rw-r--r--docs/org.eclipse.wst.web.ui.infopop/plugin.properties13
    -rw-r--r--docs/org.eclipse.wst.web.ui.infopop/plugin.xml24
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/.cvsignore3
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/.project22
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/DocBuild.xml66
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/META-INF/MANIFEST.MF8
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/about.html34
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/build.properties15
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/images/fixit.gifbin887 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.webtools.doc.user/images/grptype.gifbin1032 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.webtools.doc.user/images/menubutton.gifbin88 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.webtools.doc.user/images/nlinux.gifbin174 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.webtools.doc.user/images/nshowerr.gifbin167 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.webtools.doc.user/images/nwarning.gifbin152 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.webtools.doc.user/images/nwin.gifbin221 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.webtools.doc.user/images/nwlnkbrk.gifbin878 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.webtools.doc.user/images/nwlnkcss.gifbin924 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.webtools.doc.user/images/nwlnkgr-l.gifbin1017 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.webtools.doc.user/images/nwlnkgr.gifbin1017 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.webtools.doc.user/images/nwlnkind.gifbin927 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.webtools.doc.user/images/nwlnkmal.gifbin888 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.webtools.doc.user/images/nwlnknum.gifbin882 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.webtools.doc.user/images/nwlnkotr.gifbin883 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.webtools.doc.user/images/nwlnkque.gifbin871 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.webtools.doc.user/images/nwlnktsk.gifbin895 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.webtools.doc.user/images/skipit.gifbin874 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.webtools.doc.user/images/viewlink.gifbin935 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.webtools.doc.user/index/_10.cfsbin58078 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.webtools.doc.user/index/deletablebin4 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.webtools.doc.user/index/indexed_contributions3
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/index/indexed_dependencies4
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/index/indexed_docs34
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/index/segmentsbin28 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.webtools.doc.user/myplugin.xml26
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/org.eclipse.wst.webtools.doc.user.maplist8
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/org.eclipse.wst.webtools.doc.userindex.xml219
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/plugin.properties13
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/plugin.xml26
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/relatedlinks.ditamap482
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/relatedlinks.xml5
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/ccstatic.dita63
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/ccstatic.html110
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/ccwebprj.dita140
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/ccwebprj.html186
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/ccwebvw.dita56
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/ccwebvw.html82
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/ccwtover.dita27
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/ccwtover.html55
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/cpdjsps.dita46
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/cpdjsps.html76
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/cwebartifact.dita16
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/cwebartifact.html39
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/cwebpagedesign.dita20
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/cwebpagedesign.html46
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/cwebprojects.dita28
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/cwebprojects.html62
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/cwebresources.dita23
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/cwebresources.html49
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/cwfiltbn.dita41
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/cwfiltbn.html84
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/cwlistbn.dita33
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/cwlistbn.html72
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/cwservbn.dita48
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/cwservbn.html86
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/cwtfeatures.dita40
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/cwtfeatures.html99
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/cwwarovr.dita31
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/cwwarovr.html66
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/cwwedtvw.dita52
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/cwwedtvw.html79
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/tjchgxdt.dita38
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/tjchgxdt.html60
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/tjcrehtm.dita47
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/tjcrehtm.html75
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/tjcrejsp.dita42
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/tjcrejsp.html81
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/tjdetags.dita28
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/tjdetags.html53
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/tjprefs.dita62
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/tjprefs.html102
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/tservertarget.dita21
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/tservertarget.html46
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/tstylesheet.dita42
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/tstylesheet.html73
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/twcreprj.dita59
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/twcreprj.html108
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/twcresta.dita43
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/twcresta.html85
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/twcrewar.dita33
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/twcrewar.html61
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/twcvsr.dita37
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/twcvsr.html60
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/twfltwiz.dita73
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/twfltwiz.html123
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/twimpwar.dita42
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/twimpwar.html71
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/twlstwiz.dita40
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/twlstwiz.html93
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/twpcnvrt.dita30
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/twpcnvrt.html57
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/twplib.dita34
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/twplib.html56
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/twprjset.dita124
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/twprjset.html183
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/twsrvwiz.dita51
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/topics/twsrvwiz.html93
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/webtools_toc.ditamap64
    -rw-r--r--docs/org.eclipse.wst.webtools.doc.user/webtools_toc.xml49
    -rw-r--r--docs/org.eclipse.wst.xml.ui.infopop/.cvsignore1
    -rw-r--r--docs/org.eclipse.wst.xml.ui.infopop/.project22
    -rw-r--r--docs/org.eclipse.wst.xml.ui.infopop/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--docs/org.eclipse.wst.xml.ui.infopop/.settings/org.eclipse.jdt.core.prefs80
    -rw-r--r--docs/org.eclipse.wst.xml.ui.infopop/.settings/org.eclipse.jdt.ui.prefs3
    -rw-r--r--docs/org.eclipse.wst.xml.ui.infopop/.settings/org.eclipse.ltk.core.refactoring.prefs3
    -rw-r--r--docs/org.eclipse.wst.xml.ui.infopop/.settings/org.eclipse.pde.prefs15
    -rw-r--r--docs/org.eclipse.wst.xml.ui.infopop/EditorXmlContexts.xml193
    -rw-r--r--docs/org.eclipse.wst.xml.ui.infopop/EditorXmlContexts2.xml23
    -rw-r--r--docs/org.eclipse.wst.xml.ui.infopop/META-INF/MANIFEST.MF7
    -rw-r--r--docs/org.eclipse.wst.xml.ui.infopop/TableTree.xml24
    -rw-r--r--docs/org.eclipse.wst.xml.ui.infopop/WSDLContexts.xml127
    -rw-r--r--docs/org.eclipse.wst.xml.ui.infopop/XMLWizardContexts.xml122
    -rw-r--r--docs/org.eclipse.wst.xml.ui.infopop/XSDContexts.xml50
    -rw-r--r--docs/org.eclipse.wst.xml.ui.infopop/about.html34
    -rw-r--r--docs/org.eclipse.wst.xml.ui.infopop/build.properties12
    -rw-r--r--docs/org.eclipse.wst.xml.ui.infopop/plugin.properties13
    -rw-r--r--docs/org.eclipse.wst.xml.ui.infopop/plugin.xml26
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/.cvsignore5
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/.project22
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/.settings/org.eclipse.jdt.core.prefs80
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/.settings/org.eclipse.jdt.ui.prefs3
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/.settings/org.eclipse.ltk.core.refactoring.prefs3
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/.settings/org.eclipse.pde.prefs15
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/DocBuild.xml66
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/META-INF/MANIFEST.MF8
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/XMLBuildermap_toc.ditamap85
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/XMLBuildermap_toc.xml73
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/XMLBuilderrel.ditamap136
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/XMLBuilderrel.xml55
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/about.html34
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/build.properties15
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/images/cdatasection.gifbin359 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/images/collapse_all.gifbin155 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/images/comment_obj.gifbin196 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/images/doctype.gifbin594 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/images/expand_all.gifbin164 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/images/nattrib.gifbin167 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/images/nelem.gifbin159 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/images/nrstrval.gifbin155 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/images/proinst_obj.gifbin138 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/images/rldgrmr.gifbin368 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/images/suggestion.gifbin9962 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/index/_w.cfsbin56242 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/index/deletablebin4 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/index/indexed_contributions3
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/index/indexed_dependencies4
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/index/indexed_docs31
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/index/segmentsbin27 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/myplugin.xml34
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/org.eclipse.wst.xmleditor.doc.user.maplist8
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/org.eclipse.wst.xmleditor.doc.userindex.xml159
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/plugin.properties13
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/plugin.xml34
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/ccreatxm.dita19
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/ccreatxm.html41
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/cworkXML.html45
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/cworkxml.dita22
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/cwxmledt.dita55
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/cwxmledt.html116
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/cxmlcat.dita119
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/cxmlcat.html195
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/cxmlenc.dita134
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/cxmlenc.html273
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/cxmltool.dita38
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/cxmltool.html50
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/rextctn.dita25
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/rextctn.html50
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/rlimitations_slushXML.dita19
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/rlimitations_slushXML.html43
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/rxmlbicons.dita58
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/rxmlbicons.html99
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/rxmlcatkey.dita45
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/rxmlcatkey.html76
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/rxmltoolskey.dita131
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/rxmltoolskey.html220
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/tcretxml.dita43
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/tcretxml.html85
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/tcrexdtd.dita61
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/tcrexdtd.html109
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/tcrexxsd.dita85
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/tcrexxsd.html143
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/tedtcnst.dita64
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/tedtcnst.html115
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/tedtdoc.dita46
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/tedtdoc.html89
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/tedtenc.dita40
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/tedtenc.html64
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/tedtgram.dita34
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/tedtgram.html72
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/tedtproc.dita33
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/tedtproc.html63
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/tedtsch.dita56
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/tedtsch.html105
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/tsugstrat.dita36
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/tsugstrat.html67
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/ttaghilt.dita47
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/ttaghilt.html80
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/twcdast.dita50
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/twcdast.html87
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/twmacro.dita60
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/twmacro.html96
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/twxvalid.dita47
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/twxvalid.html76
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/txedtdes.dita129
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/txedtdes.html211
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/txedtsrc.dita73
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/txedtsrc.html131
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/txedttag.dita47
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/txedttag.html90
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/txmlcat.dita104
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/txmlcat.html163
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/txprefs.dita63
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/txprefs.html95
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/txsityp.dita51
    -rw-r--r--docs/org.eclipse.wst.xmleditor.doc.user/topics/txsityp.html82
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/.cvsignore4
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/.project22
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/.settings/org.eclipse.jdt.core.prefs80
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/.settings/org.eclipse.jdt.ui.prefs3
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/.settings/org.eclipse.ltk.core.refactoring.prefs3
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/.settings/org.eclipse.pde.prefs15
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/DocBuild.xml66
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/META-INF/MANIFEST.MF7
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/XSDLeditorrel.ditamap158
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/XSDLeditorrel.xml68
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/XSDeditormap_toc.ditamap83
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/XSDeditormap_toc.xml68
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/about.html34
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/build.properties15
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/images/Browse.gifbin90 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/images/More.gifbin90 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/images/XSDAll.gifbin116 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/images/XSDAny.gifbin613 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/images/XSDAnyAttribute.gifbin384 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/images/XSDAttribute.gifbin167 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/images/XSDAttributeGroup.gifbin215 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/images/XSDAttributeGroupRef.gifbin327 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/images/XSDAttributeRef.gifbin350 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/images/XSDChoice.gifbin130 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/images/XSDComplexType.gifbin345 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/images/XSDElement.gifbin351 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/images/XSDElementRef.gifbin585 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/images/XSDGlobalAttribute.gifbin167 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/images/XSDGlobalElement.gifbin351 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/images/XSDGroup.gifbin327 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/images/XSDGroupRef.gifbin331 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/images/XSDImport.gifbin114 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/images/XSDInclude.gifbin324 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/images/XSDRedefine.gifbin373 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/images/XSDSequence.gifbin120 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/images/XSDSimpleEnum.gifbin105 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/images/XSDSimplePattern.gifbin120 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/images/XSDSimpleType.gifbin149 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/index/_v.cfsbin54984 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/index/deletablebin4 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/index/indexed_contributions3
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/index/indexed_dependencies4
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/index/indexed_docs30
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/index/segmentsbin27 -> 0 bytes-rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/myplugin.xml33
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/org.eclipse.wst.xsdeditor.doc.user.maplist9
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/org.eclipse.wst.xsdeditor.doc.userindex.html168
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/org.eclipse.wst.xsdeditor.doc.userindex.xml166
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/plugin.properties5
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/plugin.xml33
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/cworkXSD.dita29
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/cworkXSD.html58
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/cxmlsced.dita57
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/cxmlsced.html109
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/rlimitations_slushXSD.dita20
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/rlimitations_slushXSD.html43
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/rnmspc.dita190
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/rnmspc.html276
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/rrefintg.dita46
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/rrefintg.html88
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/rxsdicons.dita140
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/rxsdicons.html209
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddagrp.dita99
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddagrp.html147
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddanye.dita77
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddanye.html117
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddcmod.dita87
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddcmod.html139
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddcmxt.dita64
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddcmxt.html101
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddelm.dita69
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddelm.html116
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddelmr.dita58
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddelmr.html98
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddglba.dita55
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddglba.html89
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddglem.dita79
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddglem.html129
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddgrpr.dita40
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddgrpr.html70
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddgrup.dita42
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddgrup.html78
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddimpt.dita77
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddimpt.html127
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddincl.dita85
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddincl.html132
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddnot.dita51
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddnot.html52
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddrdfn.dita72
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddrdfn.html120
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddreg.dita58
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddreg.html99
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddsmpt.dita115
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/taddsmpt.html174
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/tcxmlsch.dita33
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/tcxmlsch.html69
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/tdelscmp.dita32
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/tdelscmp.html63
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/tedtpref.dita46
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/tedtpref.html73
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/tedtschm.dita47
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/tedtschm.html74
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/timpschm.dita52
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/timpschm.html102
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/tnavsrc.dita41
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/tnavsrc.html82
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/trefactrXSD.dita98
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/trefactrXSD.html168
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/tvdtschm.dita63
    -rw-r--r--docs/org.eclipse.wst.xsdeditor.doc.user/topics/tvdtschm.html95
    -rw-r--r--features/org.eclipse.wst.web_core.feature.patch/.project17
    -rw-r--r--features/org.eclipse.wst.web_core.feature.patch/build.properties1
    -rw-r--r--features/org.eclipse.wst.web_core.feature.patch/buildnotes_org.eclipse.wst.xml_ui.feature.patch.html19
    -rw-r--r--features/org.eclipse.wst.web_core.feature.patch/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--features/org.eclipse.wst.web_core.feature.patch/epl-v10.html328
    -rw-r--r--features/org.eclipse.wst.web_core.feature.patch/feature.properties156
    -rw-r--r--features/org.eclipse.wst.web_core.feature.patch/feature.xml31
    -rw-r--r--features/org.eclipse.wst.web_core.feature.patch/license.html93
    -rw-r--r--features/org.eclipse.wst.web_core.feature/.cvsignore2
    -rw-r--r--features/org.eclipse.wst.web_core.feature/.project17
    -rw-r--r--features/org.eclipse.wst.web_core.feature/build.properties5
    -rw-r--r--features/org.eclipse.wst.web_core.feature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--features/org.eclipse.wst.web_core.feature/epl-v10.html328
    -rw-r--r--features/org.eclipse.wst.web_core.feature/feature.properties145
    -rw-r--r--features/org.eclipse.wst.web_core.feature/feature.xml65
    -rw-r--r--features/org.eclipse.wst.web_core.feature/license.html98
    -rw-r--r--features/org.eclipse.wst.web_core.feature/sourceTemplateBundle/about.html27
    -rw-r--r--features/org.eclipse.wst.web_core.feature/sourceTemplateBundle/about.ini31
    -rw-r--r--features/org.eclipse.wst.web_core.feature/sourceTemplateBundle/about.mappings6
    -rw-r--r--features/org.eclipse.wst.web_core.feature/sourceTemplateBundle/about.properties26
    -rw-r--r--features/org.eclipse.wst.web_core.feature/sourceTemplateBundle/build.properties2
    -rw-r--r--features/org.eclipse.wst.web_core.feature/sourceTemplateBundle/plugin.properties12
    -rw-r--r--features/org.eclipse.wst.web_core.feature/sourceTemplateBundle/wtp_prod32.gifbin1752 -> 0 bytes-rw-r--r--features/org.eclipse.wst.web_core.feature/sourceTemplateBundle/wtp_prod32.pngbin2672 -> 0 bytes-rw-r--r--features/org.eclipse.wst.web_core.feature/sourceTemplateFeature/build.properties16
    -rw-r--r--features/org.eclipse.wst.web_core.feature/sourceTemplateFeature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--features/org.eclipse.wst.web_core.feature/sourceTemplateFeature/epl-v10.html328
    -rw-r--r--features/org.eclipse.wst.web_core.feature/sourceTemplateFeature/feature.properties145
    -rw-r--r--features/org.eclipse.wst.web_core.feature/sourceTemplateFeature/license.html82
    -rw-r--r--features/org.eclipse.wst.web_core.feature/sourceTemplatePlugin/about.html27
    -rw-r--r--features/org.eclipse.wst.web_core.feature/sourceTemplatePlugin/about.ini31
    -rw-r--r--features/org.eclipse.wst.web_core.feature/sourceTemplatePlugin/about.mappings6
    -rw-r--r--features/org.eclipse.wst.web_core.feature/sourceTemplatePlugin/about.properties26
    -rw-r--r--features/org.eclipse.wst.web_core.feature/sourceTemplatePlugin/build.properties2
    -rw-r--r--features/org.eclipse.wst.web_core.feature/sourceTemplatePlugin/plugin.properties12
    -rw-r--r--features/org.eclipse.wst.web_core.feature/sourceTemplatePlugin/wtp_prod32.gifbin1752 -> 0 bytes-rw-r--r--features/org.eclipse.wst.web_core.feature/sourceTemplatePlugin/wtp_prod32.pngbin2672 -> 0 bytes-rw-r--r--features/org.eclipse.wst.web_sdk.feature/.cvsignore4
    -rw-r--r--features/org.eclipse.wst.web_sdk.feature/.project17
    -rw-r--r--features/org.eclipse.wst.web_sdk.feature/build.properties8
    -rw-r--r--features/org.eclipse.wst.web_sdk.feature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--features/org.eclipse.wst.web_sdk.feature/epl-v10.html328
    -rw-r--r--features/org.eclipse.wst.web_sdk.feature/feature.properties145
    -rw-r--r--features/org.eclipse.wst.web_sdk.feature/feature.xml48
    -rw-r--r--features/org.eclipse.wst.web_sdk.feature/license.html98
    -rw-r--r--features/org.eclipse.wst.web_ui.feature/.cvsignore1
    -rw-r--r--features/org.eclipse.wst.web_ui.feature/.project17
    -rw-r--r--features/org.eclipse.wst.web_ui.feature/build.properties5
    -rw-r--r--features/org.eclipse.wst.web_ui.feature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--features/org.eclipse.wst.web_ui.feature/epl-v10.html328
    -rw-r--r--features/org.eclipse.wst.web_ui.feature/feature.properties145
    -rw-r--r--features/org.eclipse.wst.web_ui.feature/feature.xml101
    -rw-r--r--features/org.eclipse.wst.web_ui.feature/license.html98
    -rw-r--r--features/org.eclipse.wst.web_ui.feature/sourceTemplateBundle/about.html27
    -rw-r--r--features/org.eclipse.wst.web_ui.feature/sourceTemplateBundle/about.ini31
    -rw-r--r--features/org.eclipse.wst.web_ui.feature/sourceTemplateBundle/about.mappings6
    -rw-r--r--features/org.eclipse.wst.web_ui.feature/sourceTemplateBundle/about.properties26
    -rw-r--r--features/org.eclipse.wst.web_ui.feature/sourceTemplateBundle/build.properties3
    -rw-r--r--features/org.eclipse.wst.web_ui.feature/sourceTemplateBundle/plugin.properties12
    -rw-r--r--features/org.eclipse.wst.web_ui.feature/sourceTemplateBundle/wtp_prod32.gifbin1752 -> 0 bytes-rw-r--r--features/org.eclipse.wst.web_ui.feature/sourceTemplateBundle/wtp_prod32.pngbin2672 -> 0 bytes-rw-r--r--features/org.eclipse.wst.web_ui.feature/sourceTemplateFeature/build.properties19
    -rw-r--r--features/org.eclipse.wst.web_ui.feature/sourceTemplateFeature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--features/org.eclipse.wst.web_ui.feature/sourceTemplateFeature/epl-v10.html328
    -rw-r--r--features/org.eclipse.wst.web_ui.feature/sourceTemplateFeature/feature.properties133
    -rw-r--r--features/org.eclipse.wst.web_ui.feature/sourceTemplateFeature/license.html82
    -rw-r--r--features/org.eclipse.wst.web_ui.feature/sourceTemplatePlugin/about.html27
    -rw-r--r--features/org.eclipse.wst.web_ui.feature/sourceTemplatePlugin/about.ini31
    -rw-r--r--features/org.eclipse.wst.web_ui.feature/sourceTemplatePlugin/about.mappings6
    -rw-r--r--features/org.eclipse.wst.web_ui.feature/sourceTemplatePlugin/about.properties26
    -rw-r--r--features/org.eclipse.wst.web_ui.feature/sourceTemplatePlugin/build.properties3
    -rw-r--r--features/org.eclipse.wst.web_ui.feature/sourceTemplatePlugin/plugin.properties12
    -rw-r--r--features/org.eclipse.wst.web_ui.feature/sourceTemplatePlugin/wtp_prod32.gifbin1752 -> 0 bytes-rw-r--r--features/org.eclipse.wst.web_ui.feature/sourceTemplatePlugin/wtp_prod32.pngbin2672 -> 0 bytes-rw-r--r--features/org.eclipse.wst.web_userdoc.feature/.cvsignore2
    -rw-r--r--features/org.eclipse.wst.web_userdoc.feature/.project17
    -rw-r--r--features/org.eclipse.wst.web_userdoc.feature/build.properties5
    -rw-r--r--features/org.eclipse.wst.web_userdoc.feature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--features/org.eclipse.wst.web_userdoc.feature/epl-v10.html328
    -rw-r--r--features/org.eclipse.wst.web_userdoc.feature/feature.properties145
    -rw-r--r--features/org.eclipse.wst.web_userdoc.feature/feature.xml38
    -rw-r--r--features/org.eclipse.wst.web_userdoc.feature/license.html98
    -rw-r--r--features/org.eclipse.wst.xml_core.feature.patch/.project17
    -rw-r--r--features/org.eclipse.wst.xml_core.feature.patch/description.txt4
    -rw-r--r--features/org.eclipse.wst.xml_core.feature/.cvsignore3
    -rw-r--r--features/org.eclipse.wst.xml_core.feature/.project17
    -rw-r--r--features/org.eclipse.wst.xml_core.feature/.settings/org.eclipse.core.resources.prefs3
    -rw-r--r--features/org.eclipse.wst.xml_core.feature/build.properties6
    -rw-r--r--features/org.eclipse.wst.xml_core.feature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--features/org.eclipse.wst.xml_core.feature/epl-v10.html328
    -rw-r--r--features/org.eclipse.wst.xml_core.feature/feature.properties145
    -rw-r--r--features/org.eclipse.wst.xml_core.feature/feature.xml87
    -rw-r--r--features/org.eclipse.wst.xml_core.feature/license.html96
    -rw-r--r--features/org.eclipse.wst.xml_core.feature/sourceTemplateBundle/about.html27
    -rw-r--r--features/org.eclipse.wst.xml_core.feature/sourceTemplateBundle/about.ini31
    -rw-r--r--features/org.eclipse.wst.xml_core.feature/sourceTemplateBundle/about.mappings6
    -rw-r--r--features/org.eclipse.wst.xml_core.feature/sourceTemplateBundle/about.properties26
    -rw-r--r--features/org.eclipse.wst.xml_core.feature/sourceTemplateBundle/build.properties2
    -rw-r--r--features/org.eclipse.wst.xml_core.feature/sourceTemplateBundle/plugin.properties12
    -rw-r--r--features/org.eclipse.wst.xml_core.feature/sourceTemplateBundle/wtp_prod32.gifbin1752 -> 0 bytes-rw-r--r--features/org.eclipse.wst.xml_core.feature/sourceTemplateBundle/wtp_prod32.pngbin2672 -> 0 bytes-rw-r--r--features/org.eclipse.wst.xml_core.feature/sourceTemplateFeature/build.properties16
    -rw-r--r--features/org.eclipse.wst.xml_core.feature/sourceTemplateFeature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--features/org.eclipse.wst.xml_core.feature/sourceTemplateFeature/epl-v10.html328
    -rw-r--r--features/org.eclipse.wst.xml_core.feature/sourceTemplateFeature/feature.properties145
    -rw-r--r--features/org.eclipse.wst.xml_core.feature/sourceTemplateFeature/license.html82
    -rw-r--r--features/org.eclipse.wst.xml_core.feature/sourceTemplatePlugin/about.html27
    -rw-r--r--features/org.eclipse.wst.xml_core.feature/sourceTemplatePlugin/about.ini31
    -rw-r--r--features/org.eclipse.wst.xml_core.feature/sourceTemplatePlugin/about.mappings6
    -rw-r--r--features/org.eclipse.wst.xml_core.feature/sourceTemplatePlugin/about.properties26
    -rw-r--r--features/org.eclipse.wst.xml_core.feature/sourceTemplatePlugin/build.properties2
    -rw-r--r--features/org.eclipse.wst.xml_core.feature/sourceTemplatePlugin/plugin.properties12
    -rw-r--r--features/org.eclipse.wst.xml_core.feature/sourceTemplatePlugin/wtp_prod32.gifbin1752 -> 0 bytes-rw-r--r--features/org.eclipse.wst.xml_core.feature/sourceTemplatePlugin/wtp_prod32.pngbin2672 -> 0 bytes-rw-r--r--features/org.eclipse.wst.xml_sdk.feature/.cvsignore4
    -rw-r--r--features/org.eclipse.wst.xml_sdk.feature/.project17
    -rw-r--r--features/org.eclipse.wst.xml_sdk.feature/build.properties6
    -rw-r--r--features/org.eclipse.wst.xml_sdk.feature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--features/org.eclipse.wst.xml_sdk.feature/epl-v10.html328
    -rw-r--r--features/org.eclipse.wst.xml_sdk.feature/feature.properties145
    -rw-r--r--features/org.eclipse.wst.xml_sdk.feature/feature.xml36
    -rw-r--r--features/org.eclipse.wst.xml_sdk.feature/license.html96
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature.patch/.project17
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature.patch/build.properties1
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature.patch/feature.xml23
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature/.cvsignore1
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature/.project17
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature/build.properties5
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--features/org.eclipse.wst.xml_ui.feature/epl-v10.html328
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature/feature.properties145
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature/feature.xml86
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature/license.html96
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature/sourceTemplateBundle/about.html27
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature/sourceTemplateBundle/about.ini31
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature/sourceTemplateBundle/about.mappings6
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature/sourceTemplateBundle/about.properties26
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature/sourceTemplateBundle/build.properties3
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature/sourceTemplateBundle/plugin.properties12
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature/sourceTemplateBundle/wtp_prod32.gifbin1752 -> 0 bytes-rw-r--r--features/org.eclipse.wst.xml_ui.feature/sourceTemplateBundle/wtp_prod32.pngbin2672 -> 0 bytes-rw-r--r--features/org.eclipse.wst.xml_ui.feature/sourceTemplateFeature/build.properties18
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature/sourceTemplateFeature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--features/org.eclipse.wst.xml_ui.feature/sourceTemplateFeature/epl-v10.html328
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature/sourceTemplateFeature/feature.properties145
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature/sourceTemplateFeature/license.html82
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature/sourceTemplatePlugin/about.html27
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature/sourceTemplatePlugin/about.ini31
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature/sourceTemplatePlugin/about.mappings6
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature/sourceTemplatePlugin/about.properties26
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature/sourceTemplatePlugin/build.properties3
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature/sourceTemplatePlugin/plugin.properties12
    -rw-r--r--features/org.eclipse.wst.xml_ui.feature/sourceTemplatePlugin/wtp_prod32.gifbin1752 -> 0 bytes-rw-r--r--features/org.eclipse.wst.xml_ui.feature/sourceTemplatePlugin/wtp_prod32.pngbin2672 -> 0 bytes-rw-r--r--features/org.eclipse.wst.xml_userdoc.feature/.cvsignore1
    -rw-r--r--features/org.eclipse.wst.xml_userdoc.feature/.project17
    -rw-r--r--features/org.eclipse.wst.xml_userdoc.feature/build.properties5
    -rw-r--r--features/org.eclipse.wst.xml_userdoc.feature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--features/org.eclipse.wst.xml_userdoc.feature/epl-v10.html328
    -rw-r--r--features/org.eclipse.wst.xml_userdoc.feature/feature.properties145
    -rw-r--r--features/org.eclipse.wst.xml_userdoc.feature/feature.xml52
    -rw-r--r--features/org.eclipse.wst.xml_userdoc.feature/license.html96
    4328 files changed, 0 insertions, 623799 deletions
    diff --git a/bundles/org.eclipse.jst.jsp.core/.classpath b/bundles/org.eclipse.jst.jsp.core/.classpath
    deleted file mode 100644
    index ca82c98039..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/.classpath
    +++ /dev/null
    @@ -1,19 +0,0 @@
    -<?xml version="1.0" encoding="UTF-8"?>
    -<classpath>
    - <classpathentry kind="src" path="src"/>
    - <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.4">
    - <accessrules>
    - <accessrule kind="accessible" pattern="org/eclipse/wst/sse/**"/>
    - </accessrules>
    - </classpathentry>
    - <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins">
    - <accessrules>
    - <accessrule kind="accessible" pattern="org/eclipse/wst/sse/core/**"/>
    - <accessrule kind="accessible" pattern="org/eclipse/wst/xml/core/**"/>
    - <accessrule kind="accessible" pattern="org/eclipse/wst/css/core/**"/>
    - <accessrule kind="accessible" pattern="org/eclipse/wst/html/core/**"/>
    - <accessrule kind="accessible" pattern="org/eclipse/wst/validation/**"/>
    - </accessrules>
    - </classpathentry>
    - <classpathentry kind="output" path="bin"/>
    -</classpath>
    diff --git a/bundles/org.eclipse.jst.jsp.core/.cvsignore b/bundles/org.eclipse.jst.jsp.core/.cvsignore
    deleted file mode 100644
    index 12f30eb312..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/.cvsignore
    +++ /dev/null
    @@ -1,11 +0,0 @@
    -bin
    -temp.folder
    -jspmodel.jar
    -dev.properties
    -org.eclipse.jst.jsp.core_6.0.0.jar
    -build.xml
    -org.eclipse.jst.jsp.core_6.0.0.zip
    -jspmodelsrc.zip
    -@dot
    -src.zip
    -javaCompiler...args
    diff --git a/bundles/org.eclipse.jst.jsp.core/.options b/bundles/org.eclipse.jst.jsp.core/.options
    deleted file mode 100644
    index 89a2c969e5..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/.options
    +++ /dev/null
    @@ -1,35 +0,0 @@
    -org.eclipse.jst.jsp.core/debug=true
    -org.eclipse.jst.jsp.core/debug/tracefilter=
    -org.eclipse.jst.jsp.core/debug/jspindexmanager=false
    -org.eclipse.jst.jsp.core/debug/jsptranslation=false
    -org.eclipse.jst.jsp.core/debug/jsptranslationstodisk=false
    -org.eclipse.jst.jsp.core/debug/jspsearch=false
    -
    -org.eclipse.jst.jsp.core/taglib/resolve=false
    -
    -
    -# org.eclipse.jst.jsp.core.contentmodel.tld.TLDCMDocumentManager._debug
    -org.eclipse.jst.jsp.core/debug/tldcmdocument/manager=false
    -org.eclipse.jst.jsp.core/debug/tldcmdocument/cache=false
    -
    -# org.eclipse.jst.jsp.core.contentmodel.tld.CMDocumentFactoryTLD._debug
    -org.eclipse.jst.jsp.core/debug/tldcmdocument/factory=false
    -
    -#org.eclipse.jst.jsp.core.internal.contentmodel.ProjectDescription._debugIndexCreation
    -org.eclipse.jst.jsp.core/taglib/indexcreation=false
    -#org.eclipse.jst.jsp.core.internal.contentmodel.ProjectDescription._debugIndexTime
    -org.eclipse.jst.jsp.core/taglib/indextime=false
    -
    -#org.eclipse.jst.jsp.core.internal.contentmodel.TaglibIndex._debugEvents
    -org.eclipse.jst.jsp.core/taglib/events=false
    -#org.eclipse.jst.jsp.core.internal.contentmodel.TaglibIndex._debugIndexCreation
    -org.eclipse.jst.jsp.core/taglib/indexcreation=false
    -#org.eclipse.jst.jsp.core.internal.contentmodel.TaglibIndex._debugResolution
    -org.eclipse.jst.jsp.core/taglib/resolve=false
    -
    -org.eclipse.jst.jsp.core/debug/jspjavamapping=false
    -
    -org.eclipse.jst.jsp.core/debug/jspvalidator=false
    -org.eclipse.jst.jsp.core/debug/taglibvars=false
    -
    -org.eclipse.jst.jsp.core/debug/taglibclassloader \ No newline at end of file
    diff --git a/bundles/org.eclipse.jst.jsp.core/.project b/bundles/org.eclipse.jst.jsp.core/.project
    deleted file mode 100644
    index 0f10b7a1d8..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/.project
    +++ /dev/null
    @@ -1,28 +0,0 @@
    -<?xml version="1.0" encoding="UTF-8"?>
    -<projectDescription>
    - <name>org.eclipse.jst.jsp.core</name>
    - <comment></comment>
    - <projects>
    - </projects>
    - <buildSpec>
    - <buildCommand>
    - <name>org.eclipse.jdt.core.javabuilder</name>
    - <arguments>
    - </arguments>
    - </buildCommand>
    - <buildCommand>
    - <name>org.eclipse.pde.ManifestBuilder</name>
    - <arguments>
    - </arguments>
    - </buildCommand>
    - <buildCommand>
    - <name>org.eclipse.pde.SchemaBuilder</name>
    - <arguments>
    - </arguments>
    - </buildCommand>
    - </buildSpec>
    - <natures>
    - <nature>org.eclipse.pde.PluginNature</nature>
    - <nature>org.eclipse.jdt.core.javanature</nature>
    - </natures>
    -</projectDescription>
    diff --git a/bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.core.resources.prefs b/bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.core.resources.prefs
    deleted file mode 100644
    index afa5c91352..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.core.resources.prefs
    +++ /dev/null
    @@ -1,3 +0,0 @@
    -#Tue Apr 04 03:36:32 EDT 2006
    -eclipse.preferences.version=1
    -encoding/<project>=ISO-8859-1
    diff --git a/bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.core.runtime.prefs b/bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.core.runtime.prefs
    deleted file mode 100644
    index 7ec5750225..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.core.runtime.prefs
    +++ /dev/null
    @@ -1,3 +0,0 @@
    -#Mon Apr 17 01:48:39 EDT 2006
    -eclipse.preferences.version=1
    -line.separator=\r\n
    diff --git a/bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.jdt.core.prefs
    deleted file mode 100644
    index 66ddc696d6..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.jdt.core.prefs
    +++ /dev/null
    @@ -1,79 +0,0 @@
    -#Wed Mar 28 02:56:12 EDT 2007
    -eclipse.preferences.version=1
    -org.eclipse.jdt.core.builder.cleanOutputFolder=clean
    -org.eclipse.jdt.core.builder.duplicateResourceTask=warning
    -org.eclipse.jdt.core.builder.invalidClasspath=ignore
    -org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch
    -org.eclipse.jdt.core.circularClasspath=error
    -org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
    -org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
    -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled
    -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2
    -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
    -org.eclipse.jdt.core.compiler.compliance=1.4
    -org.eclipse.jdt.core.compiler.debug.lineNumber=generate
    -org.eclipse.jdt.core.compiler.debug.localVariable=generate
    -org.eclipse.jdt.core.compiler.debug.sourceFile=generate
    -org.eclipse.jdt.core.compiler.doc.comment.support=enabled
    -org.eclipse.jdt.core.compiler.maxProblemPerUnit=100
    -org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
    -org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning
    -org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
    -org.eclipse.jdt.core.compiler.problem.deprecation=ignore
    -org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
    -org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled
    -org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
    -org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
    -org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning
    -org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
    -org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
    -org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=error
    -org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
    -org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
    -org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
    -org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
    -org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=error
    -org.eclipse.jdt.core.compiler.problem.invalidJavadoc=ignore
    -org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=enabled
    -org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled
    -org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private
    -org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
    -org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=error
    -org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
    -org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
    -org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled
    -org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public
    -org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore
    -org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled
    -org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private
    -org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
    -org.eclipse.jdt.core.compiler.problem.missingSerialVersion=error
    -org.eclipse.jdt.core.compiler.problem.noEffectAssignment=error
    -org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
    -org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
    -org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
    -org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=error
    -org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=enabled
    -org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=error
    -org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
    -org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
    -org.eclipse.jdt.core.compiler.problem.typeParameterHiding=ignore
    -org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
    -org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
    -org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
    -org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
    -org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
    -org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
    -org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
    -org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
    -org.eclipse.jdt.core.compiler.problem.unusedImport=error
    -org.eclipse.jdt.core.compiler.problem.unusedLabel=error
    -org.eclipse.jdt.core.compiler.problem.unusedLocal=error
    -org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
    -org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
    -org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
    -org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=error
    -org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
    -org.eclipse.jdt.core.compiler.source=1.3
    -org.eclipse.jdt.core.incompatibleJDKLevel=ignore
    -org.eclipse.jdt.core.incompleteClasspath=error
    diff --git a/bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.jdt.ui.prefs b/bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.jdt.ui.prefs
    deleted file mode 100644
    index 301c7adde6..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.jdt.ui.prefs
    +++ /dev/null
    @@ -1,4 +0,0 @@
    -#Mon Apr 17 01:48:39 EDT 2006
    -eclipse.preferences.version=1
    -internal.default.compliance=default
    -org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8"?>\r\n<templates/>
    diff --git a/bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.ltk.core.refactoring.prefs b/bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.ltk.core.refactoring.prefs
    deleted file mode 100644
    index c59368c5e1..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.ltk.core.refactoring.prefs
    +++ /dev/null
    @@ -1,3 +0,0 @@
    -#Tue Apr 04 03:36:32 EDT 2006
    -eclipse.preferences.version=1
    -org.eclipse.ltk.core.refactoring.enable.project.refactoring.history=false
    diff --git a/bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.pde.prefs b/bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.pde.prefs
    deleted file mode 100644
    index fc522bba76..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.pde.prefs
    +++ /dev/null
    @@ -1,16 +0,0 @@
    -#Mon Apr 17 02:01:33 EDT 2006
    -compilers.incompatible-environment=0
    -compilers.p.build=0
    -compilers.p.deprecated=1
    -compilers.p.illegal-att-value=0
    -compilers.p.no-required-att=0
    -compilers.p.not-externalized-att=0
    -compilers.p.unknown-attribute=0
    -compilers.p.unknown-class=0
    -compilers.p.unknown-element=0
    -compilers.p.unknown-resource=0
    -compilers.p.unresolved-ex-points=0
    -compilers.p.unresolved-import=0
    -compilers.p.unused-element-or-attribute=0
    -compilers.use-project=true
    -eclipse.preferences.version=1
    diff --git a/bundles/org.eclipse.jst.jsp.core/DevTimeSupport/CSSJSPParser/HowToGen.html b/bundles/org.eclipse.jst.jsp.core/DevTimeSupport/CSSJSPParser/HowToGen.html
    deleted file mode 100644
    index ea439f1291..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/DevTimeSupport/CSSJSPParser/HowToGen.html
    +++ /dev/null
    @@ -1,9 +0,0 @@
    -<html>
    -<body>
    -<p>
    -JSPedCSSTokenizer class is a scanner generated by <a href="http://www.jflex.de/">JFlex</a> 1.4.1
    -from the JSPedCSSTokenizer.flex grammer file.
    -After generating the scanner, I removed unused private field errors.
    -</p>
    -</body>
    -<html>
    diff --git a/bundles/org.eclipse.jst.jsp.core/DevTimeSupport/CSSJSPParser/JSPedCSSTokenizer.flex b/bundles/org.eclipse.jst.jsp.core/DevTimeSupport/CSSJSPParser/JSPedCSSTokenizer.flex
    deleted file mode 100644
    index 6daf75a833..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/DevTimeSupport/CSSJSPParser/JSPedCSSTokenizer.flex
    +++ /dev/null
    @@ -1,598 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2006, 2008 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.jsp.css.core.internal.parser;
    -
    -import java.io.CharArrayReader;
    -import java.io.IOException;
    -import java.util.ArrayList;
    -import java.util.List;
    -
    -import org.eclipse.jst.jsp.css.core.internal.parserz.JSPedCSSRegionContexts;
    -import org.eclipse.wst.css.core.internal.parser.CSSRegionUtil;
    -import org.eclipse.wst.css.core.internal.parser.ICSSTokenizer;
    -import org.eclipse.wst.css.core.internal.parser.regions.CSSTextRegionFactory;
    -import org.eclipse.wst.css.core.internal.parserz.CSSTextToken;
    -import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
    -
    -%%
    -
    -%public
    -%class JSPedCSSTokenizer
    -%implements JSPedCSSRegionContexts, ICSSTokenizer
    -%function primGetNextToken
    -%type String
    -%char
    -%line
    -%unicode
    -%caseless
    -%pack
    -
    -%{
    - private final static String UNDEFINED = "undefined";
    - private String fBufferedContext = null;
    - private int fBufferedStart;
    -// private int fBufferedTextLength;
    - private int fBufferedLength;
    -// private StringBuffer fBufferedText = null;
    - private CSSTextRegionFactory fRegionFactory = CSSTextRegionFactory.getInstance();
    - private int fInitialState = YYINITIAL;
    - public final static int BUFFER_SIZE_NORMAL = 16384;
    - public final static int BUFFER_SIZE_SMALL = 256;
    - private int fInitialBufferSize = BUFFER_SIZE_NORMAL;
    -
    - public void setInitialState(int state) {
    - fInitialState = state;
    - }
    -
    - public void setInitialBufferSize(int size) {
    - fInitialBufferSize = size;
    - }
    -
    - /* user method */
    - public final ITextRegion getNextToken() throws IOException {
    - String context;
    - String nextTokenType;
    - boolean spaceFollows;
    -// StringBuffer text;
    - int start;
    - int textLength;
    - int length;
    - if (fBufferedContext != null) {
    - context = fBufferedContext;
    -// text = fBufferedText;
    - start = fBufferedStart;
    - textLength = length = fBufferedLength;
    -
    - fBufferedContext = null;
    - } else {
    - context = primGetNextToken();
    -// text = new StringBuffer(yytext());
    - start = yychar;
    - textLength = length = yylength();
    - }
    -
    - if (context != null) {
    - if (context == CSS_JSP_SCRIPTLET || context == CSS_JSP_EL){
    - nextTokenType = primGetNextToken();
    - while (nextTokenType != CSS_JSP_END && nextTokenType != CSS_EL_END && nextTokenType != CSS_JSP_COMMENT) {
    -// text.append(yytext());
    - textLength += yylength();
    - length = textLength;
    - if (context.equals(CSS_JSP_SCRIPTLET) && (yystate() == ST_JSP_DIRECTIVE || yystate() == ST_JSP_EXP || yystate() == ST_JSP_DECLARATION)){
    - context = nextTokenType;
    - }
    - nextTokenType = primGetNextToken();
    - if (nextTokenType == null){
    - break;
    - }
    - }
    - // [236008] - Should not try and consider the token a
    - // comment unless a comment was started
    - if (context == CSS_JSP_SCRIPTLET && nextTokenType == CSS_JSP_COMMENT){
    - while (nextTokenType != CSS_JSP_COMMENT_END) {
    -// text.append(yytext());
    - textLength += yylength();
    - length = textLength;
    - if (context.equals(CSS_JSP_SCRIPTLET) && yystate() == ST_JSP_COMMENT){
    - context = nextTokenType;
    - }
    -
    - nextTokenType = primGetNextToken();
    - if (nextTokenType == null){
    - break;
    - }
    - }
    - if (context == CSS_JSP_COMMENT){
    - context = CSS_COMMENT;
    - }
    - }
    - textLength += yylength();
    - length = textLength;
    -
    - }
    - if (context == UNDEFINED) {
    - // undef -> concatenate undef's
    - nextTokenType = primGetNextToken();
    - while (nextTokenType == UNDEFINED) {
    -// text.append(yytext());
    - textLength += yylength();
    - length = textLength;
    - nextTokenType = primGetNextToken();
    - }
    - fBufferedContext = nextTokenType;
    -// fBufferedText = new StringBuffer(yytext());
    - fBufferedStart = yychar;
    - fBufferedLength = yylength();
    - } else {
    - nextTokenType = null;
    - spaceFollows = false;
    - if (CSSRegionUtil.isDeclarationValueType(context)) { // declaration value can contain VALUE_S
    - nextTokenType = primGetNextToken();
    - spaceFollows = (nextTokenType == CSS_DECLARATION_VALUE_S);
    - } else if (canContainSpace(context)) {
    - nextTokenType = primGetNextToken();
    - spaceFollows = (nextTokenType == CSS_S);
    - }
    - if (nextTokenType != null) { // nextToken is retrieved
    - if (spaceFollows) {
    - // next is space -> append
    -// text.append(yytext());
    - length += yylength();
    - } else {
    - // next is NOT space -> push this for next time, return itself
    - fBufferedContext = nextTokenType;
    -// fBufferedText = new StringBuffer(yytext());
    - fBufferedStart = yychar;
    - fBufferedLength = yylength();
    - }
    - }
    - }
    - }
    -
    - if (context != null) {
    - if (context == UNDEFINED) {
    - context = CSS_UNKNOWN;
    - }
    - return fRegionFactory.createRegion(context, start, textLength, length);
    - } else {
    - return null;
    - }
    - }
    -
    - /* user method */
    - /* for standalone use */
    - public final List parseText() throws IOException {
    - List tokens = new ArrayList();
    -
    - CSSTextToken token;
    - for (String kind = primGetNextToken(); kind != null; kind = primGetNextToken()) {
    - token = new CSSTextToken();
    - token.kind = kind;
    - token.start = yychar;
    - token.length = yylength();
    - token.image = yytext();
    - tokens.add(token);
    - }
    -
    - return tokens;
    - }
    -
    - /* user method */
    - private boolean canContainSpace(String type) {
    - if (type == CSS_DELIMITER || type == CSS_RBRACE || type == CSS_DECLARATION_DELIMITER) {
    - return false;
    - } else {
    - return true;
    - }
    - }
    -
    - /* user method */
    - public final int getOffset() {
    - return yychar;
    - }
    -
    - /* user method */
    - public final boolean isEOF() {
    - return zzAtEOF;
    - }
    -
    - /* user method */
    - public void reset(char[] charArray) {
    - reset(new CharArrayReader(charArray), 0);
    - }
    -
    - /* user method */
    - public final void reset(java.io.Reader in, int newOffset) {
    - /** the input device */
    - zzReader = in;
    -
    - /** the current state of the DFA */
    - zzState = 0;
    -
    - /** the current lexical state */
    - zzLexicalState = fInitialState; //YYINITIAL;
    -
    - /** this buffer contains the current text to be matched and is
    - the source of the yytext() string */
    - if (zzBuffer.length != fInitialBufferSize) {
    - zzBuffer = new char[fInitialBufferSize];
    - }
    - java.util.Arrays.fill(zzBuffer, (char)0);
    -
    - /** the textposition at the last accepting state */
    - zzMarkedPos = 0;
    -
    - /** the textposition at the last state to be included in yytext */
    - zzPushbackPos = 0;
    -
    - /** the current text position in the buffer */
    - zzCurrentPos = 0;
    -
    - /** startRead marks the beginning of the yytext() string in the buffer */
    - zzStartRead = 0;
    -
    - /** endRead marks the last character in the buffer, that has been read
    - from input */
    - zzEndRead = 0;
    -
    - /** number of newlines encountered up to the start of the matched text */
    - yyline = 0;
    -
    - /** the number of characters up to the start of the matched text */
    - yychar = 0;
    -
    - /**
    - * the number of characters from the last newline up to the start of the
    - * matched text
    - */
    - yycolumn = 0;
    -
    - /**
    - * yy_atBOL == true <=> the scanner is currently at the beginning of a line
    - */
    - zzAtBOL = false;
    -
    - /** yy_atEOF == true <=> the scanner has returned a value for EOF */
    - zzAtEOF = false;
    -
    - /* user variables */
    - // fUndefined.delete(0, fUndefined.length());
    - }
    -
    - /* user method */
    - public JSPedCSSTokenizer() {
    - super();
    - }
    -
    - private int fJSPPreviousState = fInitialState;
    - private void yyJspBegin(int newstate){
    - fJSPPreviousState = yystate();
    - yybegin(newstate);
    - }
    - private void yyJspEnd(){
    - yybegin(fJSPPreviousState);
    - }
    -%}
    -
    -%state ST_CHARSET_NAME
    -%state ST_CHARSET_DELIMITER
    -%state ST_IMPORT_URI
    -%state ST_IMPORT_MEDIUM
    -%state ST_IMPORT_DELIMITER
    -%state ST_MEDIA_MEDIUM
    -%state ST_MEDIA_DELIMITER
    -%state ST_PAGE_PSEUDO_PAGE
    -%state ST_PAGE_DELIMITER
    -%state ST_FONT_FACE_DELIMITER
    -%state ST_SELECTOR
    -%state ST_SELECTOR_MODIFIER
    -%state ST_SELECTOR_ATTRIBUTE_NAME
    -%state ST_SELECTOR_ATTRIBUTE_OPERATOR
    -%state ST_SELECTOR_ATTRIBUTE_VALUE
    -%state ST_SELECTOR_ATTRIBUTE_END
    -%state ST_DECLARATION
    -%state ST_DECLARATION_SEPARATOR
    -%state ST_DECLARATION_PRE_VALUE
    -%state ST_DECLARATION_VALUE
    -%state ST_JSP_SCRIPTLET
    -%state ST_JSP_DIRECTIVE
    -%state ST_JSP_DECLARATION
    -%state ST_JSP_EXP
    -%state ST_JSP_EL
    -%state ST_JSP_COMMENT
    -
    -
    -h = [0-9a-f]
    -nonascii = [\u0080-\uffff]
    -unicode = \\{h}{1,6}[ \t\r\n\f]?
    -escape = {unicode}|\\[ -~\u0080-\uffff]
    -nmstart = [_a-zA-Z-]|{nonascii}|{escape}
    -nmchar = [_a-zA-Z0-9-]|{nonascii}|{escape}
    -string1 = \"([\t !#$%&(-~]|\\{nl}|\'|{nonascii}|{escape})*\"
    -string2 = \'([\t !#$%&(-~]|\\{nl}|\"|{nonascii}|{escape})*\'
    -
    -ident = {nmstart}{nmchar}*
    -name = {nmchar}+
    -num = [+-]?([0-9]+|[0-9]*"."[0-9]+)
    -string = {string1}|{string2}
    -url = ([ !#$%&*-~]|{nonascii}|{escape})*
    -s = [ \t\r\n\f]
    -w = {s}*
    -nl = \n|\r\n|\r|\f
    -range = \?{1,6}|{h}(\?{0,5}|{h}(\?{0,4}|{h}(\?{0,3}|{h}(\?{0,2}|{h}(\??|{h})))))
    -
    -hash = "#"{name}
    -uri = ("url("{w}{string}{w}")"|"url("{w}{url}{w}")")
    -function = {ident}"("
    -unicode_range = "U"\+[0-9a-fA-F?]{1,6}("-"[0-9a-fA-F?]{1,6})?
    -
    -SS = [\x20\x09\x0D\x0A]
    -jspstart = "<"{SS}*"%"{SS}*
    -jspend = "%"{SS}*">"
    -elstart = "$"{SS}*"{"
    -elend = "}"
    -
    -%%
    -
    -
    -
    -<YYINITIAL> {
    - {jspstart} {yyJspBegin(ST_JSP_SCRIPTLET); return CSS_JSP_SCRIPTLET;}
    - {elstart} {yyJspBegin(ST_JSP_EL); return CSS_JSP_EL;}
    -}
    -
    -<ST_JSP_SCRIPTLET> {
    - "@" {yybegin(ST_JSP_DIRECTIVE); return CSS_JSP_DIRECTIVE;}
    - "=" {yybegin(ST_JSP_EXP); return CSS_JSP_EXP;}
    - "!" {yybegin(ST_JSP_DECLARATION); return CSS_JSP_DECL;}
    - {jspend} {yyJspEnd(); return CSS_JSP_END;}
    - "--" { yybegin(ST_JSP_COMMENT); return CSS_JSP_COMMENT;}
    -}
    -
    -/* override global "}" */
    -<ST_JSP_EL> {
    - {elend} {yyJspEnd(); return CSS_EL_END; }
    -}
    -
    -<ST_JSP_DIRECTIVE, ST_JSP_EXP, ST_JSP_DECLARATION> {
    - {jspend} {yyJspEnd(); return CSS_JSP_END;}
    -}
    -
    -<ST_JSP_COMMENT> {
    - -+-{jspend} { yyJspEnd(); return CSS_JSP_COMMENT_END; }
    - "}" { return UNDEFINED; }
    -}
    -
    -
    -/*
    - * *** global ***
    - */
    -
    -{s}+ { return CSS_S; }
    -"<!--" { return CSS_CDO; }
    -"-->" { return CSS_CDC; }
    -"}" { yybegin(YYINITIAL); return CSS_RBRACE; }
    -\/\*[^*]*\*+([^/*][^*]*\*+)*\/ { return CSS_COMMENT; }
    -//\<\%--[^-}]*[}]*[^}]*-+-\%\> { return CSS_COMMENT; }
    -
    -
    -//<YYINITIAL> {
    -// "@import" { yybegin(ST_IMPORT_URI); return CSS_IMPORT; }
    -//}
    -
    -/*
    - * *** charset rule ***
    - * CHARSET_SYM S* STRING S* ';'
    - */
    -
    -"@charset" { yybegin(ST_CHARSET_NAME); return CSS_CHARSET; }
    -
    -<ST_CHARSET_NAME> {
    - {string} { yybegin(ST_CHARSET_DELIMITER); return CSS_STRING; }
    -}
    -
    -<ST_CHARSET_DELIMITER> {
    - ";" { yybegin(YYINITIAL); return CSS_DELIMITER; }
    -}
    -
    -/*
    - * *** import rule ***
    - * IMPORT_SYM S* [STRING|URI] S* [ medium [ COMMA S* medium]* ]? ';' S*
    - */
    -
    -"@import" { yybegin(ST_IMPORT_URI); return CSS_IMPORT; }
    -
    -<ST_IMPORT_URI> {
    - {string} { yybegin(ST_IMPORT_MEDIUM); return CSS_STRING; }
    - // "url("{w}{string}{w}")" { yybegin(ST_IMPORT_MEDIUM); return CSS_URI; }
    - // "url("{w}{url}{w}")" { yybegin(ST_IMPORT_MEDIUM); return CSS_URI; }
    - {uri} { yybegin(ST_IMPORT_MEDIUM); return CSS_URI; }
    - ";" { yybegin(YYINITIAL); return CSS_DELIMITER; }
    -}
    -
    -<ST_IMPORT_MEDIUM> {
    - {ident} { yybegin(ST_IMPORT_DELIMITER); return CSS_MEDIUM; }
    - ";" { yybegin(YYINITIAL); return CSS_DELIMITER; }
    -}
    -
    -<ST_IMPORT_DELIMITER> {
    - ";" { yybegin(YYINITIAL); return CSS_DELIMITER; }
    - "," { yybegin(ST_IMPORT_MEDIUM); return CSS_MEDIA_SEPARATOR; }
    -}
    -
    -/*
    - * *** media rule ***
    - * MEDIA_SYM S* medium [ COMMA S* medium ]* LBRACE S* ruleset* '}' S*
    - */
    -
    -"@media" { yybegin(ST_MEDIA_MEDIUM); return CSS_MEDIA; }
    -
    -/*
    - * medium
    - * IDENT S*
    - */
    -<ST_MEDIA_MEDIUM> {
    - {ident} { yybegin(ST_MEDIA_DELIMITER); return CSS_MEDIUM; }
    -}
    -
    -<ST_MEDIA_DELIMITER> {
    - "{" { yybegin(YYINITIAL); return CSS_LBRACE; }
    - "," { yybegin(ST_MEDIA_MEDIUM); return CSS_MEDIA_SEPARATOR; }
    -}
    -
    -/*
    - * *** page rule **
    - * PAGE_SYM S* pseudo_page? S* LBRACE S* declaration [ ';' S* declaration ]* '}' S*
    - */
    -
    -"@page" { yybegin(ST_PAGE_PSEUDO_PAGE); return CSS_PAGE; }
    -
    -/*
    - * pseudo_page
    - * ':' IDENT
    - */
    -
    -<ST_PAGE_PSEUDO_PAGE> {
    - ":"?{ident} { yybegin(ST_PAGE_DELIMITER); return CSS_PAGE_SELECTOR; }
    - "{" { yybegin(ST_DECLARATION); return CSS_LBRACE; }
    -}
    -
    -<ST_PAGE_DELIMITER> {
    - "{" { yybegin(ST_DECLARATION); return CSS_LBRACE; }
    -}
    -
    -/*
    - * font-face
    - * FONT_FACE_SYM S* '{' S* declaration [ ';' S* declaration '* '}' S*
    - */
    -
    -"@font-face" { yybegin(ST_FONT_FACE_DELIMITER); return CSS_FONT_FACE; }
    -
    -<ST_FONT_FACE_DELIMITER> {
    - "{" { yybegin(ST_DECLARATION); return CSS_LBRACE; }
    -}
    -
    -/*
    - * selector
    - * simple_selector [ combinator simple_selector ]*
    - */
    -
    -/*
    - * simple_selector
    - * element_name [ HASH | class | attrib | pseudo ]* | [ HASH | class | attrib | pseudo ]+
    - */
    -
    -<YYINITIAL, ST_SELECTOR_MODIFIER, ST_SELECTOR> {
    - "*" { yybegin(ST_SELECTOR_MODIFIER); return CSS_SELECTOR_UNIVERSAL; }
    - {hash} { yybegin(ST_SELECTOR_MODIFIER); return CSS_SELECTOR_ID; }
    -// ":"{ident} { yybegin(ST_SELECTOR_MODIFIER); return CSS_SELECTOR_PSEUDO; }
    - ":"{ident}("("{s}*{ident}{s}*")")? { yybegin(ST_SELECTOR_MODIFIER); return CSS_SELECTOR_PSEUDO; }
    - "."{name} { yybegin(ST_SELECTOR_MODIFIER); return CSS_SELECTOR_CLASS; }
    - "[" { yybegin(ST_SELECTOR_ATTRIBUTE_NAME); return CSS_SELECTOR_ATTRIBUTE_START; }
    -}
    -
    -<YYINITIAL, ST_SELECTOR> {
    - {ident} { yybegin(ST_SELECTOR_MODIFIER); return CSS_SELECTOR_ELEMENT_NAME; }
    -}
    -
    -<ST_SELECTOR_MODIFIER> {
    - "," { yybegin(ST_SELECTOR); return CSS_SELECTOR_SEPARATOR; }
    - // using LOOKAHEAD
    - {s}+/[^+>\{] { yybegin(ST_SELECTOR); return CSS_SELECTOR_COMBINATOR; }
    - "+"|">" { yybegin(ST_SELECTOR); return CSS_SELECTOR_COMBINATOR; }
    - "{" { yybegin(ST_DECLARATION); return CSS_LBRACE; }
    -}
    -
    -/*
    - * attrib
    - * '[' S* IDENT S* [ [ '=' | INCLUDES | DASHMATCH ] S* [ IDENT | STRING ] S* ]? ']'
    - */
    -
    -<ST_SELECTOR_ATTRIBUTE_NAME> {
    - {ident} { yybegin(ST_SELECTOR_ATTRIBUTE_OPERATOR); return CSS_SELECTOR_ATTRIBUTE_NAME; }
    -}
    -
    -<ST_SELECTOR_ATTRIBUTE_OPERATOR> {
    - "="|"~="|"|=" { yybegin(ST_SELECTOR_ATTRIBUTE_VALUE); return CSS_SELECTOR_ATTRIBUTE_OPERATOR; }
    - "]" { yybegin(ST_SELECTOR_MODIFIER); return CSS_SELECTOR_ATTRIBUTE_END; }
    -}
    -
    -<ST_SELECTOR_ATTRIBUTE_VALUE> {
    - {ident}|{string} { yybegin(ST_SELECTOR_ATTRIBUTE_END); return CSS_SELECTOR_ATTRIBUTE_VALUE; }
    -}
    -
    -<ST_SELECTOR_ATTRIBUTE_END> {
    - "]" { yybegin(ST_SELECTOR_MODIFIER); return CSS_SELECTOR_ATTRIBUTE_END; }
    -}
    -
    -/*
    - * declaration
    - * property ':' S* expr prio? | // empty //
    - */
    -
    -<ST_DECLARATION> {
    - {ident} { yybegin(ST_DECLARATION_SEPARATOR); return CSS_DECLARATION_PROPERTY; }
    - {jspstart} {yyJspBegin(ST_JSP_SCRIPTLET); return CSS_JSP_SCRIPTLET;}
    - {elstart} {yyJspBegin(ST_JSP_EL); return CSS_JSP_EL;}
    -}
    -
    -<ST_DECLARATION_SEPARATOR> {
    - ":" { yybegin(ST_DECLARATION_PRE_VALUE); return CSS_DECLARATION_SEPARATOR; }
    - {jspstart} {yyJspBegin(ST_JSP_SCRIPTLET); return CSS_JSP_SCRIPTLET;}
    - {elstart} {yyJspBegin(ST_JSP_EL); return CSS_JSP_EL;}
    -}
    -
    -<ST_DECLARATION_PRE_VALUE, ST_DECLARATION_VALUE> {
    - "!"{s}*"important" { yybegin(ST_DECLARATION_VALUE); return CSS_DECLARATION_VALUE_IMPORTANT; }
    - {ident} { yybegin(ST_DECLARATION_VALUE); return CSS_DECLARATION_VALUE_IDENT; }
    - ")" { yybegin(ST_DECLARATION_VALUE); return CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE; }
    - {num}{ident} { yybegin(ST_DECLARATION_VALUE); return CSS_DECLARATION_VALUE_DIMENSION; }
    - {num}"%" { yybegin(ST_DECLARATION_VALUE); return CSS_DECLARATION_VALUE_PERCENTAGE; }
    - {num} { yybegin(ST_DECLARATION_VALUE); return CSS_DECLARATION_VALUE_NUMBER; }
    - {function} { yybegin(ST_DECLARATION_VALUE); return CSS_DECLARATION_VALUE_FUNCTION; }
    - {string} { yybegin(ST_DECLARATION_VALUE); return CSS_DECLARATION_VALUE_STRING; }
    - {uri} { yybegin(ST_DECLARATION_VALUE); return CSS_DECLARATION_VALUE_URI; }
    - "#"{name} { yybegin(ST_DECLARATION_VALUE); return CSS_DECLARATION_VALUE_HASH; }
    - {unicode_range} { yybegin(ST_DECLARATION_VALUE); return CSS_DECLARATION_VALUE_UNICODE_RANGE; }
    - [,/] { yybegin(ST_DECLARATION_VALUE); return CSS_DECLARATION_VALUE_OPERATOR; }
    - {jspstart} {yyJspBegin(ST_JSP_SCRIPTLET); return CSS_JSP_SCRIPTLET;}
    - {elstart} {yyJspBegin(ST_JSP_EL); return CSS_JSP_EL;}
    -}
    -
    -<ST_DECLARATION_VALUE> {
    - {s}+/[^;}] { return CSS_DECLARATION_VALUE_S; }
    - {jspstart} {yyJspBegin(ST_JSP_SCRIPTLET); return CSS_JSP_SCRIPTLET;}
    - {elstart} {yyJspBegin(ST_JSP_EL); return CSS_JSP_EL;}
    -}
    -
    -<ST_DECLARATION, ST_DECLARATION_SEPARATOR, ST_DECLARATION_PRE_VALUE, ST_DECLARATION_VALUE> {
    - ";" { yybegin(ST_DECLARATION); return CSS_DECLARATION_DELIMITER; }
    - // "}" { yybegin(YYINITIAL); return CSS_RBRACE; }
    -}
    -
    -
    -//<YYINITIAL, ST_IMPORT_URI, ST_IMPORT_MEDIUM, ST_IMPORT_DELIMITER> {
    -// \/\*[^*]*\*+([^/*][^*]*\*+)*\/ { return CSS_COMMENT; }
    -// {s}+ { return CSS_S; }
    -// . { return UNDEFINED; }
    -//}
    -
    -//<YYINITIAL, ST_IMPORT_URI, ST_IMPORT_MEDIUM, ST_IMPORT_DELIMITER> {
    -// [^ \t\r\n\f]+ { return CSS_UNKNOWN; }
    -//}
    -
    -
    -
    -
    -
    -. {
    - return UNDEFINED;
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/DevTimeSupport/HeadParsers/JSPHeadTokenizer.jFlex b/bundles/org.eclipse.jst.jsp.core/DevTimeSupport/HeadParsers/JSPHeadTokenizer.jFlex
    deleted file mode 100644
    index 9cfce8625d..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/DevTimeSupport/HeadParsers/JSPHeadTokenizer.jFlex
    +++ /dev/null
    @@ -1,304 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005, 2008 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
    - *******************************************************************************/
    -/*nlsXXX*/
    -package org.eclipse.jst.jsp.core.internal.contenttype;
    -import java.io.IOException;
    -import java.io.Reader;
    -import java.util.Arrays;
    -
    -import org.eclipse.wst.xml.core.internal.contenttype.EncodingParserConstants;
    -import org.eclipse.wst.xml.core.internal.contenttype.XMLHeadTokenizerConstants;
    -
    -%%
    -
    -%{
    -
    -
    -
    -
    - private boolean hasMore = true;
    - private final static int MAX_TO_SCAN = 8000;
    - StringBuffer string = new StringBuffer();
    - // state stack for easier state handling
    - private IntStack fStateStack = new IntStack();
    - private String valueText = null;
    - private boolean isXHTML;
    - private boolean isWML;
    -
    -
    - public JSPHeadTokenizer() {
    - super();
    - }
    -
    - public void reset (Reader in) {
    - /* the input device */
    - zzReader = in;
    -
    - /* the current state of the DFA */
    - zzState = 0;
    -
    - /* the current lexical state */
    - zzLexicalState = YYINITIAL;
    -
    - /* this buffer contains the current text to be matched and is
    - the source of the yytext() string */
    - Arrays.fill(zzBuffer, (char)0);
    -
    - /* the textposition at the last accepting state */
    - zzMarkedPos = 0;
    -
    - /* the textposition at the last state to be included in yytext */
    - //zzPushbackPos = 0;
    -
    - /* the current text position in the buffer */
    - zzCurrentPos = 0;
    -
    - /* startRead marks the beginning of the yytext() string in the buffer */
    - zzStartRead = 0;
    -
    - /**
    - * endRead marks the last character in the buffer, that has been read
    - * from input
    - */
    - zzEndRead = 0;
    -
    - /* number of newlines encountered up to the start of the matched text */
    - //yyline = 0;
    -
    - /* the number of characters up to the start of the matched text */
    - yychar = 0;
    -
    - /**
    - * the number of characters from the last newline up to the start
    - * of the matched text
    - */
    - //yycolumn = 0;
    -
    - /**
    - * yy_atBOL == true <=> the scanner is currently at the beginning
    - * of a line
    - */
    - zzAtBOL = true;
    -
    - /* yy_atEOF == true <=> the scanner has returned a value for EOF */
    - zzAtEOF = false;
    -
    - /* denotes if the user-EOF-code has already been executed */
    - zzEOFDone = false;
    -
    -
    - fStateStack.clear();
    -
    - hasMore = true;
    - isXHTML=false;
    - isWML=false;
    -
    -
    - }
    -
    -
    - public final HeadParserToken getNextToken() throws IOException, Exception {
    - String context = null;
    - context = primGetNextToken();
    - HeadParserToken result = null;
    - if (valueText != null) {
    - result = createToken(context, yychar, valueText);
    - valueText = null;
    - } else {
    - result = createToken(context, yychar, yytext());
    - }
    - return result;
    - }
    -
    - public final boolean hasMoreTokens() {
    - return hasMore && yychar < MAX_TO_SCAN;
    - }
    - private void pushCurrentState() {
    - fStateStack.push(yystate());
    -
    - }
    -
    - private void popState() {
    - yybegin(fStateStack.pop());
    - }
    - private HeadParserToken createToken(String context, int start, String text) {
    - return new HeadParserToken(context, start, text);
    - }
    -
    - public boolean isXHTML() {
    - return isXHTML;
    - }
    - public boolean isWML() {
    - return isWML;
    - }
    -
    -%}
    -
    -%eof{
    - hasMore=false;
    -%eof}
    -
    -%public
    -%class JSPHeadTokenizer
    -%function primGetNextToken
    -%type String
    -%char
    -%unicode
    -%ignorecase
    -//%debug
    -%switch
    -%buffer 8192
    -%scanerror java.lang.Exception
    -
    -
    -UTF16BE = \xFE\xFF
    -UTF16LE = \xFF\xFE
    -UTF83ByteBOM = \xEF\xBB\xBF
    -
    -// SpaceChar = [\x20\x09]
    -
    -
    -// [3] S ::= (0x20 | 0x9 | 0xD | 0xA)+
    -S = [\x20\x09\x0D\x0A]
    -
    -//BeginAttributeeValue = {S}* \= {S}*
    -
    -LineTerminator = \r|\n
    -
    -
    -Z = (\x00)?
    -S_UTF = {Z}{S}{Z}
    -BeginAttributeValueUTF = {S_UTF}* \= {S_UTF}*
    -
    -%state ST_XMLDecl
    -%state ST_PAGE_DIRECTIVE
    -%state QuotedAttributeValue
    -%state DQ_STRING
    -%state SQ_STRING
    -%state UnDelimitedString
    -
    -%%
    -
    -
    -<YYINITIAL>
    -{
    - // force to start at beginning of line (^) and at beginning of file (yychar == 0)
    - ^ {UTF16BE} {if (yychar == 0 ) {hasMore = false; return EncodingParserConstants.UTF16BE;}}
    - ^ {UTF16LE} {if (yychar == 0 ) {hasMore = false; return EncodingParserConstants.UTF16LE;}}
    - ^ {UTF83ByteBOM} {if (yychar == 0 ) {hasMore = false; return EncodingParserConstants.UTF83ByteBOM;}}
    -
    - // force to be started on first line, but we do allow preceeding spaces
    - ^ {S_UTF}* ({Z}<{Z}\?{Z}x{Z}m{Z}l{Z}){S_UTF}+ {if (yychar == 0 ) {yybegin(ST_XMLDecl); return XMLHeadTokenizerConstants.XMLDeclStart;}}
    -
    -
    - // following are some simply rules to identify JSP content as "XHTML"
    - // see http://www.rfc-editor.org/rfc/rfc3236.txt
    - {Z}<{Z}\!{Z}D{Z}O{Z}C{Z}T{Z}Y{Z}P{Z}E{Z} {S_UTF}* {Z}h{Z}t{Z}m{Z}l{Z} {S_UTF}* {Z}P{Z}U{Z}B{Z}L{Z}I{Z}C{Z} .* {Z}\/{Z}\/{Z}D{Z}T{Z}D{Z}{S_UTF}{Z}X{Z}H{Z}T{Z}M{Z}L{Z} {isXHTML = true;}
    - {Z}<{Z}h{Z}t{Z}m{Z}l{Z} {S_UTF}* {Z}x{Z}m{Z}l{Z}n{Z}s{Z} {S_UTF}* {Z}\={Z} {S_UTF}* (({Z}\"{Z}) | ({Z}\'{Z})) {Z}h{Z}t{Z}t{Z}p{Z}:{Z}\/{Z}\/{Z}w{Z}w{Z}w{Z}\.{Z}w{Z}3{Z}\.{Z}o{Z}r{Z}g{Z}\/{Z}1{Z}9{Z}9{Z}9{Z}\/{Z}x{Z}h{Z}t{Z}m{Z}l{Z} {isXHTML = true;}
    - // another case that's part of the "HTML family" is WML 1.0 (WML 2.0 is part of XHTML)
    - {Z}<{Z}\!{Z}D{Z}O{Z}C{Z}T{Z}Y{Z}P{Z}E{Z} {S_UTF}* {Z}w{Z}m{Z}l{Z} {S_UTF}* {Z}P{Z}U{Z}B{Z}L{Z}I{Z}C{Z} .* {Z}\/{Z}\/{Z}D{Z}T{Z}D {S}{Z}W{Z}M{Z}L{Z} {isWML = true;}
    -
    - {Z}<{Z}%{Z} {S_UTF}* {Z}@{Z} {S_UTF}* (({Z}p{Z}a{Z}g{Z}e{Z})|({Z}t{Z}a{Z}g{Z})) {S_UTF}+ {yybegin(ST_PAGE_DIRECTIVE); return JSPHeadTokenizerConstants.PageDirectiveStart;}
    - (({Z}<{Z}j{Z}s{Z}p{Z}:{Z}d{Z}i{Z}r{Z}e{Z}c{Z}t{Z}i{Z}v{Z}e{Z}\.{Z}p{Z}a{Z}g{Z}e{Z})|({Z}<{Z}j{Z}s{Z}p{Z}:{Z}d{Z}i{Z}r{Z}e{Z}c{Z}t{Z}i{Z}v{Z}e{Z}\.{Z}t{Z}a{Z}g{Z})) {S_UTF}+ {yybegin(ST_PAGE_DIRECTIVE); return JSPHeadTokenizerConstants.PageDirectiveStart;}
    -
    -}
    -
    -<ST_XMLDecl>
    -{
    - ({Z}v{Z}e{Z}r{Z}s{Z}i{Z}o{Z}n{Z}) {BeginAttributeValueUTF} {pushCurrentState(); yybegin(QuotedAttributeValue); return XMLHeadTokenizerConstants.XMLDeclVersion;}
    - ({Z}e{Z}n{Z}c{Z}o{Z}d{Z}i{Z}n{Z}g{Z}) {BeginAttributeValueUTF} {pushCurrentState(); yybegin(QuotedAttributeValue); return XMLHeadTokenizerConstants.XMLDelEncoding;}
    - // note the "forced end" (via 'hasMore=false') once the end of XML Declaration found
    - // This is since non-ascii chars may follow and may cause IOExceptions which would not occur once stream is
    - // read with incorrect encoding (such as if platform encoding is in effect until true encoding detected).
    - // BUT, the hasMore=false was removed for this JSP case (probably still ok for pure XML) because
    - // in a JSP, we must parse past xmlDecl to get at JSP page directive.
    - // We'll assume all chars in this area are "readable" as is.
    - {S_UTF}* {Z}\?{Z}>{Z} {yybegin(YYINITIAL); return XMLHeadTokenizerConstants.XMLDeclEnd;}
    -}
    -
    -<ST_PAGE_DIRECTIVE>
    -{
    -// removed 'language' since it really can be handled seperately from encoding, but may add it back later for simple re-use.
    - {Z}l{Z}a{Z}n{Z}g{Z}u{Z}a{Z}g{Z}e{Z} {BeginAttributeValueUTF} {pushCurrentState(); yybegin(QuotedAttributeValue); return JSPHeadTokenizerConstants.PageLanguage;}
    - {Z}c{Z}o{Z}n{Z}t{Z}e{Z}n{Z}t{Z}T{Z}y{Z}p{Z}e{Z} {BeginAttributeValueUTF} {pushCurrentState(); yybegin(QuotedAttributeValue); return JSPHeadTokenizerConstants.PageContentType;}
    - {Z}p{Z}a{Z}g{Z}e{Z}E{Z}n{Z}c{Z}o{Z}d{Z}i{Z}n{Z}g{Z} {BeginAttributeValueUTF} {pushCurrentState(); yybegin(QuotedAttributeValue); return JSPHeadTokenizerConstants.PageEncoding;}
    - // note the "forced end" (via 'hasMore=false') once the end of XML Declaration found
    - // This is since non-ascii chars may follow and may cause IOExceptions which would not occur once stream is
    - // read in correct encoding.
    -
    - // https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=4205 demonstrates how we need to keep parsing,
    - // even if come to end of one page directive, so hasMore=false was removed from these rules.
    - {Z}%{Z}>{Z} { yybegin(YYINITIAL); return JSPHeadTokenizerConstants.PageDirectiveEnd;}
    - {Z}\/{Z}>{Z} { yybegin(YYINITIAL); return JSPHeadTokenizerConstants.PageDirectiveEnd;}
    -}
    -
    -
    -<QuotedAttributeValue>
    -{
    - {Z}\"{Z} { yybegin(DQ_STRING); string.setLength(0); }
    - {Z}\'{Z} { yybegin(SQ_STRING); string.setLength(0); }
    - // in this state, anything other than a space character can start an undelimited string
    - {S_UTF}*. { yypushback(1); yybegin(UnDelimitedString); string.setLength(0);}
    -}
    -
    -
    -<DQ_STRING>
    -{
    -
    - {Z}\"{Z} { popState(); valueText = string.toString(); return EncodingParserConstants.StringValue; }
    - {Z}{LineTerminator}{Z} { yypushback(yylength());popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTerminatedStringValue;}
    - {Z}\?{Z}>{Z} { yypushback(yylength()); popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTerminatedStringValue;}
    - {Z}<{Z} { yypushback(yylength());popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTerminatedStringValue;}
    - [^\x00] { string.append( yytext() ); }
    - {Z}%{Z}>{Z} { yypushback(yylength());popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTerminatedStringValue;}
    -
    -
    -}
    -
    -<SQ_STRING>
    -{
    -
    - {Z}\'{Z} { popState(); valueText = string.toString(); return EncodingParserConstants.StringValue;}
    - {Z}{LineTerminator}{Z} { yypushback(yylength());popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTerminatedStringValue;}
    - {Z}%{Z}>{Z} { yypushback(yylength());popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTerminatedStringValue;}
    - {Z}<{Z} { yypushback(yylength());popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTerminatedStringValue;}
    - // Skip over the single-byte 0s
    - [^\x00] { string.append( yytext() ); }
    - {Z}%{Z}>{Z} { yypushback(yylength());popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTerminatedStringValue;}
    -
    -
    -}
    -
    -<UnDelimitedString>
    -{
    -
    -
    - {S_UTF} { yypushback(yylength());popState(); valueText = string.toString(); return EncodingParserConstants.UnDelimitedStringValue; }
    - {Z}{LineTerminator}{Z} { yypushback(yylength());popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTerminatedStringValue;}
    - {Z}\?{Z}>{Z} { yypushback(yylength());popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTerminatedStringValue;}
    - {Z}<{Z} { yypushback(yylength());popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTerminatedStringValue;}
    - // these are a bit special, since we started an undelimit string, but found a quote ... probably indicates a missing beginning quote
    - {Z}\'{Z} { yypushback(yylength());popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTermintatedUnDelimitedStringValue;}
    - {Z}\"{Z} { yypushback(yylength());popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTermintatedUnDelimitedStringValue;}
    -
    - [^\x00] { string.append( yytext() ); }
    - {Z}%{Z}>{Z} { yypushback(yylength());popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTerminatedStringValue;}
    -
    -}
    -
    -// The "match anything" rule should always be in effect except for when looking for end of string
    -// (That is, remember to update state list if/when new states added)
    -.|\n {if(yychar > MAX_TO_SCAN) {hasMore=false; return EncodingParserConstants.MAX_CHARS_REACHED;}}
    -
    -// this rule always in effect
    -<<EOF>> {hasMore = false; return EncodingParserConstants.EOF;}
    -
    -
    diff --git a/bundles/org.eclipse.jst.jsp.core/DevTimeSupport/buildParser.xml b/bundles/org.eclipse.jst.jsp.core/DevTimeSupport/buildParser.xml
    deleted file mode 100644
    index 2ebe182109..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/DevTimeSupport/buildParser.xml
    +++ /dev/null
    @@ -1,32 +0,0 @@
    -<?xml version="1.0" encoding="UTF-8"?>
    -<project name="tokenizer" default="HeadTokenizer">
    -
    - <!-- Note: for Eclipse env., the JFlex 1.4 jar should be added
    - to the ant global entries -->
    - <taskdef classname="JFlex.anttask.JFlexTask" name="jflex" />
    -
    - <target name="init">
    - <property name="src.file" value="JSPHeadTokenizer.jFlex"/>
    - <property name="src.dir" value="HeadParsers"/>
    - <property name="dest.dir" value="../src"/>
    - <!-- touch causes to always build, remove for real 'make' behavior -->
    - <touch file="${src.dir}/${src.file}"/>
    -
    - </target>
    -
    - <target name="HeadTokenizer" depends="init">
    - <antcall target="run-jflex"/>
    - </target>
    -
    - <target name="run-jflex" depends="init">
    - <jflex
    - file="${src.dir}/${src.file}"
    - destdir="${dest.dir}"
    - verbose="true"
    - nobak="true"
    - time="on"
    - />
    - </target>
    -
    -
    -</project> \ No newline at end of file
    diff --git a/bundles/org.eclipse.jst.jsp.core/META-INF/MANIFEST.MF b/bundles/org.eclipse.jst.jsp.core/META-INF/MANIFEST.MF
    deleted file mode 100644
    index e86e961630..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/META-INF/MANIFEST.MF
    +++ /dev/null
    @@ -1,61 +0,0 @@
    -Manifest-Version: 1.0
    -Bundle-ManifestVersion: 2
    -Bundle-Name: %pluginName
    -Bundle-SymbolicName: org.eclipse.jst.jsp.core; singleton:=true
    -Bundle-Version: 1.2.202.qualifier
    -Bundle-Activator: org.eclipse.jst.jsp.core.internal.JSPCorePlugin
    -Bundle-Vendor: %providerName
    -Bundle-Localization: plugin
    -Export-Package: org.eclipse.jst.jsp.core.internal;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.internal.contentmodel;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.internal.contentmodel.tld;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.internal.contentproperties;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.internal.contenttype;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.internal.document;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.internal.domdocument;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.internal.encoding;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.internal.java;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.internal.java.jspel;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.internal.java.search;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.internal.modelhandler;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.internal.modelquery;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.internal.parser;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.internal.parser.internal;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.internal.preferences;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.internal.provisional;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.internal.provisional.contenttype;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.internal.provisional.text;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.internal.regions;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.internal.taglib;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.internal.tasks;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.internal.text;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.internal.util;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.internal.validation;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.core.jspel,
    - org.eclipse.jst.jsp.core.taglib,
    - org.eclipse.jst.jsp.core.text,
    - org.eclipse.jst.jsp.css.core.internal.contentmodel;x-internal:=true,
    - org.eclipse.jst.jsp.css.core.internal.contenttype;x-internal:=true,
    - org.eclipse.jst.jsp.css.core.internal.document;x-internal:=true,
    - org.eclipse.jst.jsp.css.core.internal.encoding;x-internal:=true,
    - org.eclipse.jst.jsp.css.core.internal.modelhandler;x-friends:="org.eclipse.jst.jsp.ui",
    - org.eclipse.jst.jsp.css.core.internal.parser;x-internal:=true,
    - org.eclipse.jst.jsp.css.core.internal.parserz;x-internal:=true
    -Import-Package: com.ibm.icu.util; version="3.8",
    - com.ibm.icu.text; version="3.8"
    -Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.4.0,4.0.0)",
    - org.eclipse.core.resources;bundle-version="[3.4.0,4.0.0)",
    - org.eclipse.core.filebuffers;bundle-version="[3.4.0,4.0.0)",
    - org.eclipse.jdt.core;bundle-version="[3.4.0,3.6.0)",
    - org.eclipse.wst.common.uriresolver;bundle-version="[1.1.301,1.2.0)",
    - org.eclipse.wst.sse.core;bundle-version="[1.1.300,1.2.0)",
    - org.eclipse.wst.xml.core;bundle-version="[1.1.300,1.2.0)",
    - org.eclipse.wst.css.core;bundle-version="[1.1.200,1.2.0)",
    - org.eclipse.wst.html.core;bundle-version="[1.1.200,1.2.0)",
    - org.eclipse.wst.validation;bundle-version="[1.2.0,1.3.0)",
    - javax.servlet.jsp;bundle-version="[2.0.0,3.0.0)",
    - org.eclipse.wst.common.project.facet.core;bundle-version="[1.3.0,2.0.0)";resolution:=optional,
    - org.eclipse.wst.common.modulecore;bundle-version="[1.1.200,2.0.0)";resolution:=optional
    -Bundle-ActivationPolicy: lazy; exclude:="org.eclipse.jst.jsp.core.internal.contenttype"
    -Bundle-RequiredExecutionEnvironment: J2SE-1.4
    diff --git a/bundles/org.eclipse.jst.jsp.core/about.html b/bundles/org.eclipse.jst.jsp.core/about.html
    deleted file mode 100644
    index 2199df3f05..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/about.html
    +++ /dev/null
    @@ -1,34 +0,0 @@
    -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
    -<HTML>
    -
    -<head>
    -<title>About</title>
    -<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
    -</head>
    -
    -<BODY lang="EN-US">
    -
    -<H3>About This Content</H3>
    -
    -<P>June, 2008</P>
    -
    -<H3>License</H3>
    -
    -<P>The Eclipse Foundation makes available all content in this plug-in
    -("Content"). Unless otherwise indicated below, the Content is provided to you
    -under the terms and conditions of the Eclipse Public License Version 1.0
    -("EPL"). A copy of the EPL is available at
    -<A href="http://www.eclipse.org/org/documents/epl-v10.php">http://www.eclipse.org/org/documents/epl-v10.php</A>.
    -For purposes of the EPL, "Program" will mean the Content.</P>
    -
    -<P>If you did not receive this Content directly from the Eclipse Foundation, the
    -Content is being redistributed by another party ("Redistributor") and different
    -terms and conditions may apply to your use of any object code in the Content.
    -Check the Redistributor’s license that was provided with the Content. If no such
    -license exists, contact the Redistributor. Unless otherwise indicated below, the
    -terms and conditions of the EPL still apply to any source code in the Content
    -and such source code may be obtained at
    -<A href="http://www.eclipse.org/">http://www.eclipse.org/</A>.</P>
    -
    -</BODY>
    -</HTML>
    diff --git a/bundles/org.eclipse.jst.jsp.core/build.properties b/bundles/org.eclipse.jst.jsp.core/build.properties
    deleted file mode 100644
    index 92ef44d7ab..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/build.properties
    +++ /dev/null
    @@ -1,22 +0,0 @@
    -###############################################################################
    -# Copyright (c) 2004, 2006 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
    -###############################################################################
    -bin.includes = plugin.xml,\
    - .options,\
    - plugin.properties,\
    - META-INF/,\
    - .,\
    - about.html
    -bin.excludes = @dot/**,\
    - temp.folder/**
    -src.includes = component.xml,\
    - DevTimeSupport/,\
    - schema/
    -source.. = src/
    diff --git a/bundles/org.eclipse.jst.jsp.core/component.xml b/bundles/org.eclipse.jst.jsp.core/component.xml
    deleted file mode 100644
    index ab88fac0b3..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/component.xml
    +++ /dev/null
    @@ -1,27 +0,0 @@
    -<?xml version="1.0" encoding="UTF-8"?>
    -<component xmlns="http://eclipse.org/wtp/releng/tools/component-model" name="org.eclipse.jst.jsp">
    - <component-depends unrestricted="true" />
    - <plugin id="org.eclipse.jst.jsp.core" fragment="false" />
    - <package name="org.eclipse.jst.jsp.core.taglib" api="false">
    - <type name="IJarRecord" implement="false" />
    - <type name="ITagDirRecord" implement="false" />
    - <type name="ITaglibIndexDelta" implement="false" />
    - <type name="ITaglibIndexListener" implement="true" />
    - <type name="ITaglibDescriptor" implement="false" />
    - <type name="ITaglibRecord" implement="false" />
    - <!-- <type name="ITaglibRecordEvent" implement="false" /> -->
    - <type name="ITLDRecord" implement="false" />
    - <type name="IURLRecord" implement="false" />
    - <type name="TaglibIndex" subclass="false" instantiate="false" />
    - <type name="TaglibIndexDelta" subclass="false" instantiate="false" />
    - </package>
    - <plugin id="org.eclipse.jst.jsp.ui" fragment="false" />
    - <package name="org.eclipse.jst.jsp.ui" api="false">
    - <type name="StructuredTextViewerConfigurationJSP" subclass="true" instantiate="true" />
    - </package>
    - <package name="org.eclipse.jst.jsp.ui.views.contentoutline" api="false">
    - <type name="JSPContentOutlineConfiguration" subclass="true" instantiate="true" />
    - </package>
    - <plugin id="org.eclipse.jst.jsp.ui.infopop" fragment="false" />
    - <description url="http://eclipse.org/webtools/jst/components/jsp/overview.html" />
    -</component> \ No newline at end of file
    diff --git a/bundles/org.eclipse.jst.jsp.core/plugin.properties b/bundles/org.eclipse.jst.jsp.core/plugin.properties
    deleted file mode 100644
    index 407282b44c..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/plugin.properties
    +++ /dev/null
    @@ -1,33 +0,0 @@
    -###############################################################################
    -# Copyright (c) 2004, 2009 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
    -###############################################################################
    -providerName=Eclipse.org
    -pluginName=Structured Source JSP Model
    -Structured_JSP_Document_Factory_Extension.name=Structured JSP Document Factory Extension
    -JSP_Content_Type_Extension_Element.name=JSP
    -JSP_Tag_Content_Type_Extension_Element.name=JSP Tag Definition
    -JSP_TagX_Content_Type_Extension_Element.name=JSP Tag Definition (XML)
    -JSP_TLD_Content_Type_Extension_Element.name=Tag Library Descriptor
    -JSP_Fragment_Content_Type_Extension_Element.name=JSP Fragment
    -JSP_Syntax_Validator.name=JSP Syntax Validator
    -JSP_Directive_Validator.name=JSP Directive Validator
    -EL_Syntax_Validator.name=EL Syntax Validator
    -JSP_Content_Validator.name=JSP Content Validator
    -TLDValidator.name=Tag Library Descriptor Validator
    -Structured_JSP_Document_Setup_participant.name=Structured JSP Document Setup Participant
    -_validationMarker.name=JSP Problem
    -_taskMarker.name=JSP Task
    -
    -extension-point.name.0 = JSP EL Translator
    -
    -contentTypeCSSJSPName=CSS JSP
    -contentTypeCSSJSPFName=CSS JSP Fragment
    -
    -contentTypeCSSDocumentFactoryName=Content Type CSS JSP document factory extension
    diff --git a/bundles/org.eclipse.jst.jsp.core/plugin.xml b/bundles/org.eclipse.jst.jsp.core/plugin.xml
    deleted file mode 100644
    index 20bda6ef5b..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/plugin.xml
    +++ /dev/null
    @@ -1,354 +0,0 @@
    -<?xml version="1.0" encoding="UTF-8"?>
    -<?eclipse version="3.0"?>
    -<plugin>
    - <extension-point id="elTranslator" name="%extension-point.name.0" schema="schema/eltranslator.exsd"/>
    -
    - <extension point="org.eclipse.wst.sse.core.modelHandler">
    - <modelHandler
    - class="org.eclipse.jst.jsp.core.internal.modelhandler.ModelHandlerForJSP"
    - associatedContentTypeId="org.eclipse.jst.jsp.core.jspsource"
    - id="org.eclipse.jst.jsp.core.internal.modelhandler">
    - </modelHandler>
    - <modelHandler
    - class="org.eclipse.jst.jsp.core.internal.modelhandler.ModelHandlerForJSP"
    - associatedContentTypeId="org.eclipse.jst.jsp.core.jspfragmentsource"
    - id="org.eclipse.jst.jsp.core.internal.modelhandler">
    - </modelHandler>
    - <modelHandler
    - class="org.eclipse.jst.jsp.core.internal.modelhandler.ModelHandlerForTag"
    - associatedContentTypeId="org.eclipse.jst.jsp.core.tagsource"
    - id="org.eclipse.jst.jsp.core.internal.modelhandler.tag">
    - </modelHandler>
    - </extension>
    -
    - <extension point="org.eclipse.wst.xml.core.documentFactories">
    - <factory
    - type="tld"
    - class="org.eclipse.jst.jsp.core.internal.contentmodel.tld.CMDocumentFactoryTLD">
    - </factory>
    - </extension>
    -
    - <extension point="org.eclipse.wst.sse.core.taskscanner">
    - <scanner
    - id="org.eclipse.jst.jsp.core.internal.tasks.JSPFileTaskScanner"
    - class="org.eclipse.jst.jsp.core.internal.tasks.JSPFileTaskScanner:org.eclipse.jst.jsp.core.taskMarker"
    - contentTypeIds="org.eclipse.jst.jsp.core.jspsource" />
    - </extension>
    - <extension
    - id="taskMarker"
    - name="%_taskMarker.name"
    - point="org.eclipse.core.resources.markers">
    - <super type="org.eclipse.core.resources.taskmarker"/>
    - <persistent value="true"/>
    - </extension>
    - <extension
    - id="validationMarker"
    - name="%_validationMarker.name"
    - point="org.eclipse.core.resources.markers">
    - <super type="org.eclipse.wst.validation.problemmarker"/>
    - <persistent value="true"/>
    - </extension>
    -
    - <extension
    - point="org.eclipse.core.filebuffers.documentCreation"
    - id="org.eclipse.jst.jsp.core.documentfactories"
    - name="%Structured_JSP_Document_Factory_Extension.name">
    - <factory
    - contentTypeId="org.eclipse.jst.jsp.core.jspsource"
    - class="org.eclipse.wst.sse.core.internal.filebuffers.BasicStructuredDocumentFactory" />
    - </extension>
    - <extension
    - point="org.eclipse.core.filebuffers.documentSetup"
    - id="org.eclipse.jst.jsp.core.documentsetup"
    - name="%Structured_JSP_Document_Setup_participant.name">
    - <participant
    - contentTypeId="org.eclipse.jst.jsp.core.jspsource"
    - class="org.eclipse.jst.jsp.core.internal.contentmodel.TaglibController" />
    - </extension>
    - <extension point="org.eclipse.team.core.fileTypes">
    - <fileTypes
    - type="text"
    - extension="jsp">
    - </fileTypes>
    - <fileTypes
    - type="text"
    - extension="jspf" />
    - <fileTypes
    - type="text"
    - extension="jspx" />
    - <fileTypes
    - type="text"
    - extension="jsf">
    - </fileTypes>
    - <fileTypes
    - type="text"
    - extension="jsv">
    - </fileTypes>
    - <fileTypes
    - type="text"
    - extension="jtpl">
    - </fileTypes>
    - <fileTypes
    - type="text"
    - extension="tld" />
    - <fileTypes
    - type="text"
    - extension="tag" />
    - <fileTypes
    - type="text"
    - extension="tagx" />
    - <fileTypes
    - type="text"
    - extension="tagf" />
    - </extension>
    - <extension point="org.eclipse.wst.sse.core.formatProcessors">
    - <processor
    - class="org.eclipse.wst.html.core.internal.format.HTMLFormatProcessorImpl"
    - contentTypeId="org.eclipse.jst.jsp.core.jspsource">
    - </processor>
    - </extension>
    -
    - <extension point="org.eclipse.core.contenttype.contentTypes">
    - <!-- create content type for JSP files -->
    - <content-type
    - file-extensions="jsp,jsv,jtpl,jspx"
    - priority="high"
    - name="%JSP_Content_Type_Extension_Element.name"
    - id="jspsource"
    - base-type="org.eclipse.core.runtime.text"
    - default-charset="ISO-8859-1">
    - <describer
    - class="org.eclipse.jst.jsp.core.internal.contenttype.ContentDescriberForJSP" />
    - </content-type>
    - <!-- create content type for JSP fragment files -->
    - <content-type
    - file-extensions="jspf,jsf"
    - priority="high"
    - name="%JSP_Fragment_Content_Type_Extension_Element.name"
    - id="jspfragmentsource"
    - base-type="org.eclipse.jst.jsp.core.jspsource"
    - default-charset="ISO-8859-1">
    - <describer
    - class="org.eclipse.jst.jsp.core.internal.contenttype.ContentDescriberForJSP" />
    - </content-type>
    - <!-- create content type for JSP 2.0 Tag file types -->
    - <content-type
    - file-extensions="tag,tagx,tagf"
    - priority="high"
    - name="%JSP_Tag_Content_Type_Extension_Element.name"
    - id="tagsource"
    - base-type="org.eclipse.jst.jsp.core.jspsource"
    - default-charset="ISO-8859-1"/>
    - <!-- create content type for .tld files -->
    - <content-type
    - file-extensions="tld"
    - priority="high"
    - name="%JSP_TLD_Content_Type_Extension_Element.name"
    - id="tldsource"
    - base-type="org.eclipse.core.runtime.xml"
    - default-charset="UTF-8">
    - <!-- add the describer so it's properly detected when opened from within .jar files -->
    - <describer class="org.eclipse.core.runtime.content.XMLRootElementContentDescriber">
    - <parameter name="element" value="taglib"/>
    - </describer>
    - </content-type>
    -
    -
    - <!--======================================================================================-->
    - <!-- minimal content-type css jsp support -->
    - <!--======================================================================================-->
    - <content-type
    - file-extensions="jsp"
    - priority="high"
    - name="%contentTypeCSSJSPName"
    - id="cssjspsource"
    - base-type="org.eclipse.jst.jsp.core.jspsource">
    - <describer
    - class="org.eclipse.jst.jsp.css.core.internal.contenttype.ContentDescriberForJSPedCSS" />
    - </content-type>
    - <content-type
    - file-extensions="jspf"
    - priority="high"
    - name="%contentTypeCSSJSPFName"
    - id="cssjspfragmentsource"
    - base-type="org.eclipse.jst.jsp.core.cssjspsource">
    - <describer
    - class="org.eclipse.jst.jsp.css.core.internal.contenttype.ContentDescriberForJSPedCSS" />
    - </content-type>
    - </extension>
    -
    - <!-- initialize jsp core preferences -->
    - <extension point="org.eclipse.core.runtime.preferences">
    - <initializer
    - class="org.eclipse.jst.jsp.core.internal.preferences.JSPCorePreferenceInitializer" />
    - </extension>
    -
    - <!--======================================================================================-->
    - <!-- JSP batch validation -->
    - <!--======================================================================================-->
    - <extension id="JSPBatchValidator" name="%JSP_Syntax_Validator.name" point="org.eclipse.wst.validation.validatorV2">
    - <validator
    - build="true"
    - class="org.eclipse.jst.jsp.core.internal.validation.JSPBatchValidator"
    - manual="true"
    - version="1"
    - markerId="org.eclipse.jst.jsp.core.validationMarker">
    - <include>
    - <rules>
    - <projectNature id="org.eclipse.jdt.core.javanature"/>
    - </rules>
    - </include>
    - <include>
    - <rules>
    - <contentType id="org.eclipse.jst.jsp.core.jspsource"/>
    - <!-- needed until bug 181443 is implemented -->
    - <contentType id="org.eclipse.jst.jsp.core.jspfragmentsource"/>
    - <contentType id="org.eclipse.jst.jsp.core.tagsource"/>
    - <fileext
    - caseSensitive="false"
    - ext="jsp">
    - </fileext>
    - <fileext
    - caseSensitive="false"
    - ext="jspf">
    - </fileext>
    - <fileext
    - caseSensitive="false"
    - ext="jsf">
    - </fileext>
    - <fileext
    - caseSensitive="false"
    - ext="tag">
    - </fileext>
    - <fileext
    - caseSensitive="false"
    - ext="tagf">
    - </fileext>
    - <fileext
    - caseSensitive="false"
    - ext="jsv">
    - </fileext>
    - <fileext
    - caseSensitive="false"
    - ext="jtpl">
    - </fileext>
    - </rules>
    - </include>
    - <group id="org.eclipse.wst.sse.core.structuredModelGroup"/>
    - </validator>
    - </extension>
    -
    - <extension id="JSPContentValidator" name="%JSP_Content_Validator.name" point="org.eclipse.wst.validation.validatorV2">
    - <validator
    - build="true"
    - class="org.eclipse.jst.jsp.core.internal.validation.JSPContentValidator"
    - manual="true"
    - version="1"
    - markerId="org.eclipse.jst.jsp.core.validationMarker">
    - <include>
    - <rules>
    - <contentType id="org.eclipse.jst.jsp.core.jspsource"/>
    - <!-- needed until bug 181443 is implemented -->
    - <contentType id="org.eclipse.jst.jsp.core.jspfragmentsource"/>
    - <fileext
    - caseSensitive="false"
    - ext="jsp">
    - </fileext>
    - <fileext
    - caseSensitive="false"
    - ext="jspf">
    - </fileext>
    - <fileext
    - caseSensitive="false"
    - ext="jsf">
    - </fileext>
    - <fileext
    - caseSensitive="false"
    - ext="tag">
    - </fileext>
    - <fileext
    - caseSensitive="false"
    - ext="tagf">
    - </fileext>
    - <fileext
    - caseSensitive="false"
    - ext="jsv">
    - </fileext>
    - <fileext
    - caseSensitive="false"
    - ext="jtpl">
    - </fileext>
    - </rules>
    - </include>
    - <group id="org.eclipse.wst.sse.core.structuredModelGroup"/>
    - </validator>
    - </extension>
    -
    - <extension id="TLDValidator" name="%TLDValidator.name" point="org.eclipse.wst.validation.validatorV2">
    - <validator
    - build="true"
    - class="org.eclipse.jst.jsp.core.internal.validation.TLDValidator"
    - manual="true"
    - version="1"
    - markerId="org.eclipse.jst.jsp.core.validationMarker">
    - <include>
    - <rules>
    - <contentType id="org.eclipse.jst.jsp.core.tldsource"/>
    - <fileext
    - caseSensitive="false"
    - ext="tld">
    - </fileext>
    - </rules>
    - </include>
    - <group id="org.eclipse.wst.sse.core.structuredModelGroup"/>
    - </validator>
    - </extension>
    -
    - <extension
    - point="org.eclipse.jst.jsp.core.elTranslator">
    - <elTranslator
    - class="org.eclipse.jst.jsp.core.internal.java.jspel.JSPELTranslator"
    - name="Default JSP 2.0 EL Translator"
    - id="org.eclipse.jst.jsp.defaultJSP20"/>
    - </extension>
    -
    - <extension point="org.eclipse.wst.sse.core.modelHandler">
    - <modelHandler
    - class="org.eclipse.jst.jsp.css.core.internal.modelhandler.ModelHandlerForJSPedCSS"
    - associatedContentTypeId="org.eclipse.jst.jsp.core.cssjspsource"
    - id="org.eclipse.jst.jsp.css.core.modelhandler">
    - </modelHandler>
    - <modelHandler
    - class="org.eclipse.jst.jsp.css.core.internal.modelhandler.ModelHandlerForJSPedCSS"
    - associatedContentTypeId="org.eclipse.jst.jsp.core.cssjspfragmentsource"
    - id="org.eclipse.jst.jsp.css.core.modelhandler">
    - </modelHandler>
    - </extension>
    -
    - <extension
    - point="org.eclipse.core.filebuffers.documentCreation"
    - id="org.eclipse.jst.jsp.css.core.internal.documentfactories"
    - name="%contentTypeCSSDocumentFactoryName">
    - <factory
    - contentTypeId="org.eclipse.jst.jsp.core.cssjspsource"
    - class="org.eclipse.wst.sse.core.internal.filebuffers.BasicStructuredDocumentFactory" />
    - </extension>
    - <extension
    - point="org.eclipse.core.filebuffers.documentSetup"
    - id="org.eclipse.jst.jsp.css.core.documentsetup"
    - name="%Structured_JSP_Document_Setup_participant.name">
    - <participant
    - contentTypeId="org.eclipse.jst.jsp.core.cssjspsource"
    - class="org.eclipse.jst.jsp.css.core.internal.contentmodel.JSPedCSSTaglibController" />
    - </extension>
    - <!--
    - <extension
    - point="org.eclipse.core.filebuffers.documentCreation"
    - id="org.eclipse.jst.jsp.css.core.internal.documentfactories.fragment"
    - name="%contentTypeCSSDocumentFactoryName">
    - <factory
    - contentTypeId="org.eclipse.jst.jsp.core.cssjspfragmentsource"
    - class="org.eclipse.wst.sse.core.internal.filebuffers.BasicStructuredDocumentFactory" />
    - </extension>
    - -->
    -</plugin>
    diff --git a/bundles/org.eclipse.jst.jsp.core/schema/eltranslator.exsd b/bundles/org.eclipse.jst.jsp.core/schema/eltranslator.exsd
    deleted file mode 100644
    index 34e412b6dc..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/schema/eltranslator.exsd
    +++ /dev/null
    @@ -1,121 +0,0 @@
    -<?xml version='1.0' encoding='UTF-8'?>
    -<!-- Schema file written by PDE -->
    -<schema targetNamespace="org.eclipse.jst.jsp.core">
    -<annotation>
    - <appInfo>
    - <meta.schema plugin="org.eclipse.jst.jsp.core" id="elTranslator" name="JSP EL Translator"/>
    - </appInfo>
    - <documentation>
    - Extension point to customer JSP Expression Language Generation
    - </documentation>
    - </annotation>
    -
    - <element name="extension">
    - <complexType>
    - <sequence>
    - <element ref="elTranslator"/>
    - </sequence>
    - <attribute name="point" type="string" use="required">
    - <annotation>
    - <documentation>
    - A fully qualified identifier of the target extension point.
    - </documentation>
    - </annotation>
    - </attribute>
    - <attribute name="id" type="string">
    - <annotation>
    - <documentation>
    - An optional identifier of the extension instance.
    - </documentation>
    - </annotation>
    - </attribute>
    - <attribute name="name" type="string">
    - <annotation>
    - <documentation>
    - An optional name of the extension instance.
    - </documentation>
    - <appInfo>
    - <meta.attribute translatable="true"/>
    - </appInfo>
    - </annotation>
    - </attribute>
    - </complexType>
    - </element>
    -
    - <element name="elTranslator">
    - <annotation>
    - <appInfo>
    - <meta.element labelAttribute="name"/>
    - </appInfo>
    - </annotation>
    - <complexType>
    - <attribute name="class" type="string" use="required">
    - <annotation>
    - <documentation>
    - Fully qualified class name for the EL Translator. Must be an implementor of org.eclipse.jst.jsp.core.jspel.IJSPELTranslator.
    - </documentation>
    - </annotation>
    - </attribute>
    - <attribute name="name" type="string">
    - <annotation>
    - <documentation>
    - The name of the EL translator.
    - </documentation>
    - </annotation>
    - </attribute>
    - <attribute name="id" type="string" use="required">
    - <annotation>
    - <documentation>
    - A unique string identifier for an EL Translator.
    - </documentation>
    - </annotation>
    - </attribute>
    - </complexType>
    - </element>
    -
    - <annotation>
    - <appInfo>
    - <meta.section type="since"/>
    - </appInfo>
    - <documentation>
    - [Enter the first release in which this extension point appears.]
    - </documentation>
    - </annotation>
    -
    - <annotation>
    - <appInfo>
    - <meta.section type="examples"/>
    - </appInfo>
    - <documentation>
    - [Enter extension point usage example here.]
    - </documentation>
    - </annotation>
    -
    - <annotation>
    - <appInfo>
    - <meta.section type="apiInfo"/>
    - </appInfo>
    - <documentation>
    - [Enter API information here.]
    - </documentation>
    - </annotation>
    -
    - <annotation>
    - <appInfo>
    - <meta.section type="implementation"/>
    - </appInfo>
    - <documentation>
    - [Enter information about supplied implementation of this extension point.]
    - </documentation>
    - </annotation>
    -
    - <annotation>
    - <appInfo>
    - <meta.section type="copyright"/>
    - </appInfo>
    - <documentation>
    -
    - </documentation>
    - </annotation>
    -
    -</schema>
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/Assert.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/Assert.java
    deleted file mode 100644
    index a5d8e17258..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/Assert.java
    +++ /dev/null
    @@ -1,121 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2001, 2005 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
    - * Jens Lukowski/Innoopract - initial renaming/restructuring
    - *
    - *******************************************************************************/
    -package org.eclipse.jst.jsp.core.internal;
    -
    -
    -
    -/**
    - * <code>Assert</code> is useful for for embedding runtime sanity checks in
    - * code. The predicate methods all test a condition and throw some type of
    - * unchecked exception if the condition does not hold.
    - * <p>
    - * Assertion failure exceptions, like most runtime exceptions, are thrown when
    - * something is misbehaving. Assertion failures are invariably unspecified
    - * behavior; consequently, clients should never rely on these being thrown
    - * (and certainly should not being catching them specifically).
    - * </p>
    - */
    -public final class Assert {
    -
    - /**
    - * <code>AssertionFailedException</code> is a runtime exception thrown
    - * by some of the methods in <code>Assert</code>.
    - * <p>
    - * This class is not declared public to prevent some misuses; programs
    - * that catch or otherwise depend on assertion failures are susceptible to
    - * unexpected breakage when assertions in the code are added or removed.
    - * </p>
    - */
    - class AssertionFailedException extends RuntimeException {
    - /**
    - * Comment for <code>serialVersionUID</code>
    - */
    - private static final long serialVersionUID = 1L;
    -
    - /**
    - * Constructs a new exception.
    - */
    - public AssertionFailedException() {
    - super();
    - }
    -
    - /**
    - * Constructs a new exception with the given message.
    - */
    - public AssertionFailedException(String detail) {
    - super(detail);
    - }
    - }
    -
    - /**
    - * Asserts that an argument is legal. If the given boolean is not
    - * <code>true</code>, an <code>IllegalArgumentException</code> is
    - * thrown. The given message is included in that exception, to aid
    - * debugging.
    - *
    - * @param expression
    - * the outcode of the check
    - * @param message
    - * the message to include in the exception
    - * @return <code>true</code> if the check passes (does not return if the
    - * check fails)
    - * @exception IllegalArgumentException
    - * if the legality test failed
    - */
    - public static boolean isLegal(boolean expression, String message) {
    - if (!expression)
    - throw new IllegalArgumentException(message);
    - return expression;
    - }
    -
    - /**
    - * Asserts that the given object is not <code>null</code>. If this is
    - * not the case, some kind of unchecked exception is thrown. The given
    - * message is included in that exception, to aid debugging.
    - *
    - * @param object
    - * the value to test
    - * @param message
    - * the message to include in the exception
    - * @exception IllegalArgumentException
    - * if the object is <code>null</code>
    - */
    - public static void isNotNull(Object object, String message) {
    - if (object == null) {
    - throw new Assert().new AssertionFailedException(message);
    - }
    - }
    -
    - /**
    - * Asserts that the given boolean is <code>true</code>. If this is not
    - * the case, some kind of unchecked exception is thrown. The given message
    - * is included in that exception, to aid debugging.
    - *
    - * @param expression
    - * the outcode of the check
    - * @param message
    - * the message to include in the exception
    - * @return <code>true</code> if the check passes (does not return if the
    - * check fails)
    - */
    - public static boolean isTrue(boolean expression, String message) {
    - if (!expression) {
    - throw new Assert().new AssertionFailedException(message);
    - }
    - return expression;
    - }
    -
    - /* This class is not intended to be instantiated. */
    - private Assert() {
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/JSPCoreMessages.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/JSPCoreMessages.java
    deleted file mode 100644
    index 6a1053b8fd..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/JSPCoreMessages.java
    +++ /dev/null
    @@ -1,70 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005, 2009 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.jsp.core.internal;
    -
    -import org.eclipse.osgi.util.NLS;
    -
    -/**
    - * Strings used by JSP Core
    - *
    - * @plannedfor 1.0
    - */
    -public class JSPCoreMessages extends NLS {
    - private static final String BUNDLE_NAME = "org.eclipse.jst.jsp.core.internal.JSPCorePluginResources"; //$NON-NLS-1$
    -
    - public static String JSPDirectiveValidator_0;
    - public static String JSPDirectiveValidator_1;
    - public static String JSPDirectiveValidator_2;
    - public static String JSPDirectiveValidator_3;
    - public static String JSPDirectiveValidator_4;
    - public static String JSPDirectiveValidator_5;
    - public static String JSPDirectiveValidator_6;
    - public static String JSPDirectiveValidator_7;
    - public static String JSPDirectiveValidator_8;
    - public static String JSPDirectiveValidator_9;
    - public static String JSPDirectiveValidator_10;
    - public static String JSPActionValidator_0;
    - public static String JSPIndexManager_0;
    - public static String JSPIndexManager_2;
    - public static String JSP_Search;
    - public static String JSPEL_Syntax;
    - public static String JSPEL_Token;
    - public static String JSPDocumentLoader_1;
    - public static String JSPFContentPropertiesManager_Updating;
    - public static String JSPFContentPropertiesManager_Problems_Updating;
    - public static String JSPBatchValidator_0;
    - public static String TaglibHelper_0;
    - public static String TaglibHelper_1;
    - public static String TaglibHelper_2;
    - public static String TaglibHelper_3;
    - public static String JSPTranslator_0;
    - public static String JSPTranslator_1;
    - public static String JSPTranslator_2;
    - public static String JSPTranslator_3;
    - public static String JSPTranslator_4;
    - public static String JSPTranslator_5;
    - public static String TLDValidator_MissingValidator;
    - public static String TLDValidator_MissingVariable;
    - public static String TLDValidator_MissingListener;
    -
    - /**
    - * @deprecated
    - */
    - public static String MESSAGE_JSP_VALIDATING_MESSAGE_UI_;
    -
    - private JSPCoreMessages() {
    - }
    -
    - static {
    - // initialize resource bundle
    - NLS.initializeMessages(BUNDLE_NAME, JSPCoreMessages.class);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/JSPCorePlugin.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/JSPCorePlugin.java
    deleted file mode 100644
    index cda29d7fb2..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/JSPCorePlugin.java
    +++ /dev/null
    @@ -1,101 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 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.jsp.core.internal;
    -
    -import org.eclipse.core.runtime.Plugin;
    -import org.eclipse.jdt.core.JavaCore;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.TaglibController;
    -import org.eclipse.jst.jsp.core.internal.contentproperties.JSPFContentPropertiesManager;
    -import org.eclipse.jst.jsp.core.internal.contenttype.DeploymentDescriptorPropertyCache;
    -import org.eclipse.jst.jsp.core.internal.java.search.JSPIndexManager;
    -import org.eclipse.jst.jsp.core.internal.taglib.TaglibHelperManager;
    -import org.eclipse.jst.jsp.core.taglib.TaglibIndex;
    -import org.osgi.framework.BundleContext;
    -
    -/**
    - * The main plugin class to be used in the desktop.
    - */
    -public class JSPCorePlugin extends Plugin {
    - // The shared instance.
    - private static JSPCorePlugin plugin;
    -
    - /**
    - * The constructor.
    - */
    - public JSPCorePlugin() {
    - super();
    - plugin = this;
    - }
    -
    - /**
    - * Returns the shared instance.
    - *
    - * @deprecated - will be removed. Currently used to get "model
    - * preferences", but there are other, better ways.
    - */
    - public static JSPCorePlugin getDefault() {
    - return plugin;
    - }
    -
    - /*
    - * (non-Javadoc)
    - *
    - * @see org.eclipse.core.runtime.Plugin#start(org.osgi.framework.BundleContext)
    - */
    - public void start(BundleContext context) throws Exception {
    - super.start(context);
    -
    - /*
    - * JSPIndexManager depends on TaglibController, so TaglibController
    - * should be started first
    - */
    - TaglibIndex.startup();
    - TaglibController.startup();
    -
    - // listen for classpath changes
    - JavaCore.addElementChangedListener(TaglibHelperManager.getInstance());
    -
    -
    - JSPIndexManager.getInstance().initialize();
    -
    - // listen for resource changes to update content properties keys
    - JSPFContentPropertiesManager.startup();
    -
    - DeploymentDescriptorPropertyCache.start();
    - }
    -
    - /*
    - * (non-Javadoc)
    - *
    - * @see org.eclipse.core.runtime.Plugin#stop(org.osgi.framework.BundleContext)
    - */
    - public void stop(BundleContext context) throws Exception {
    - DeploymentDescriptorPropertyCache.stop();
    -
    - /*
    - * stop listening for resource changes to update content properties
    - * keys
    - */
    - JSPFContentPropertiesManager.shutdown();
    -
    - // stop any indexing
    - JSPIndexManager.getInstance().shutdown();
    -
    - // stop listening for classpath changes
    - JavaCore.removeElementChangedListener(TaglibHelperManager.getInstance());
    -
    - // stop taglib controller
    - TaglibController.shutdown();
    - TaglibIndex.shutdown();
    -
    - super.stop(context);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/JSPCorePluginResources.properties b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/JSPCorePluginResources.properties
    deleted file mode 100644
    index 4ff39e4f2a..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/JSPCorePluginResources.properties
    +++ /dev/null
    @@ -1,46 +0,0 @@
    -###############################################################################
    -# Copyright (c) 2004, 2009 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
    -###############################################################################
    -JSPIndexManager_0=Updating JSP Index
    -JSPIndexManager_2=JSP Indexer indexing {0} files
    -JSP_Search=JSP Search -
    -JSPDocumentLoader_1=Program Error: structured model had no structuredDocument
    -JSPEL_Syntax=EL Syntax Error
    -JSPEL_Token=Unable to analyze EL expression due to lexical analysis error
    -MESSAGE_JSP_VALIDATING_MESSAGE_UI_=JSP Validator validating {0}
    -JSPFContentPropertiesManager_Updating=Updating JSP Fragment Content Settings
    -JSPFContentPropertiesManager_Problems_Updating=Problem saving JSP Fragment Content Settings for {0}
    -JSPDirectiveValidator_0={0} is a reserved prefix. Try another
    -JSPDirectiveValidator_1=Can not find the tag library descriptor for "{0}"
    -JSPDirectiveValidator_2=The prefix "{0} "is used more than once
    -JSPDirectiveValidator_3=A {0} value is required in this directive
    -JSPDirectiveValidator_4=Fragment "{0}" was not be found at expected path {1}
    -JSPDirectiveValidator_5=Missing required attribute "{0}"
    -JSPDirectiveValidator_6=Undefined attribute name "{0}"
    -JSPDirectiveValidator_7=A {0} or {1} value is required in this directive
    -JSPDirectiveValidator_8=The superclass "{0}" was not found on the build path
    -JSPDirectiveValidator_9=Can not find the tag library descriptor for "{0}". Try increasing the version of the Dynamic Web Module project facet.
    -JSPDirectiveValidator_10=Can not find the tag library descriptor for "{0}". Try using a newer grammar or declared version in the Web Deployment Descriptor.
    -JSPDirectiveValidator_10=Can not find the tag directory "{0}"
    -JSPActionValidator_0=Tag ({0}) must be empty
    -JSPBatchValidator_0=Gathering files in {0}
    -TaglibHelper_0=The TagExtraInfo class for "{0}" ({1}) was not found on the Java Build Path
    -TaglibHelper_1=The TagExtraInfo class for "{0}" ({1}) could not be instantiated
    -TaglibHelper_2=A problem was encountered using TagExtraInfo class {1} for '{0}'
    -TaglibHelper_3=The tag handler class for "{0}" ({1}) was not found on the Java Build Path
    -JSPTranslator_0=Invalid identifier: "{0}"
    -JSPTranslator_1=Undefined type: {0}
    -JSPTranslator_2=Can not declare both "class" and "beanName" attributes
    -JSPTranslator_3=Unknown type for identifier "{0}"
    -JSPTranslator_4=Missing start tag for "{0}"
    -JSPTranslator_5=Missing end tag for "{0}"
    -TLDValidator_MissingValidator=The TagLibraryValidator subclass '{0}' was not found on the Java Build Path
    -TLDValidator_MissingVariable=The variable class '{0}' was not found on the Java Build Path
    -TLDValidator_MissingListener=The listener class '{0}' was not found on the Java Build Path
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/Logger.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/Logger.java
    deleted file mode 100644
    index 02d02ae46c..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/Logger.java
    +++ /dev/null
    @@ -1,144 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2006 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.jsp.core.internal;
    -
    -import com.ibm.icu.util.StringTokenizer;
    -
    -import org.eclipse.core.runtime.IStatus;
    -import org.eclipse.core.runtime.Platform;
    -import org.eclipse.core.runtime.Status;
    -import org.osgi.framework.Bundle;
    -
    -/**
    - * Small convenience class to log messages to plugin's log file and also, if desired,
    - * the console. This class should only be used by classes in this plugin. Other
    - * plugins should make their own copy, with appropriate ID.
    - */
    -public class Logger {
    - private static final String PLUGIN_ID = "org.eclipse.jst.jsp.core"; //$NON-NLS-1$
    -
    - private static final String TRACEFILTER_LOCATION = "/debug/tracefilter"; //$NON-NLS-1$
    -
    - public static final int OK = IStatus.OK; // 0
    - public static final int INFO = IStatus.INFO; // 1
    - public static final int WARNING = IStatus.WARNING; // 2
    - public static final int ERROR = IStatus.ERROR; // 4
    -
    - public static final int OK_DEBUG = 200 + OK;
    - public static final int INFO_DEBUG = 200 + INFO;
    - public static final int WARNING_DEBUG = 200 + WARNING;
    - public static final int ERROR_DEBUG = 200 + ERROR;
    -
    - /**
    - * Adds message to log.
    - * @param level severity level of the message (OK, INFO, WARNING, ERROR, OK_DEBUG, INFO_DEBUG, WARNING_DEBUG, ERROR_DEBUG)
    - * @param message text to add to the log
    - * @param exception exception thrown
    - */
    - protected static void _log(int level, String message, Throwable exception) {
    - if (level == OK_DEBUG || level == INFO_DEBUG || level == WARNING_DEBUG || level == ERROR_DEBUG) {
    - if (!isDebugging())
    - return;
    - }
    -
    - int severity = IStatus.OK;
    - switch (level) {
    - case INFO_DEBUG :
    - case INFO :
    - severity = IStatus.INFO;
    - break;
    - case WARNING_DEBUG :
    - case WARNING :
    - severity = IStatus.WARNING;
    - break;
    - case ERROR_DEBUG :
    - case ERROR :
    - severity = IStatus.ERROR;
    - }
    - message = (message != null) ? message : "null"; //$NON-NLS-1$
    - Status statusObj = new Status(severity, PLUGIN_ID, severity, message, exception);
    - Bundle bundle = Platform.getBundle(PLUGIN_ID);
    - if (bundle != null)
    - Platform.getLog(bundle).log(statusObj);
    - }
    -
    - /**
    - * Prints message to log if category matches /debug/tracefilter option.
    - * @param message text to print
    - * @param category category of the message, to be compared with /debug/tracefilter
    - */
    - protected static void _trace(String category, String message, Throwable exception) {
    - if (isTracing(category)) {
    - message = (message != null) ? message : "null"; //$NON-NLS-1$
    - Status statusObj = new Status(IStatus.OK, PLUGIN_ID, IStatus.OK, message, exception);
    - Bundle bundle = Platform.getBundle(PLUGIN_ID);
    - if (bundle != null)
    - Platform.getLog(bundle).log(statusObj);
    - }
    - }
    -
    - /**
    - * @return true if the platform is debugging
    - */
    - public static boolean isDebugging() {
    - return Platform.inDebugMode();
    - }
    -
    - /**
    - * Determines if currently tracing a category
    - * @param category
    - * @return true if tracing category, false otherwise
    - */
    - public static boolean isTracing(String category) {
    - if (!isDebugging())
    - return false;
    -
    - String traceFilter = Platform.getDebugOption(PLUGIN_ID + TRACEFILTER_LOCATION);
    - if (traceFilter != null) {
    - StringTokenizer tokenizer = new StringTokenizer(traceFilter, ","); //$NON-NLS-1$
    - while (tokenizer.hasMoreTokens()) {
    - String cat = tokenizer.nextToken().trim();
    - if (category.equals(cat)) {
    - return true;
    - }
    - }
    - }
    - return false;
    - }
    -
    - public static void log(int level, String message) {
    - _log(level, message, null);
    - }
    -
    - public static void log(int level, String message, Throwable exception) {
    - _log(level, message, exception);
    - }
    -
    - public static void logException(String message, Throwable exception) {
    - _log(ERROR, message, exception);
    - }
    -
    - public static void logException(Throwable exception) {
    - _log(ERROR, exception.getMessage(), exception);
    - }
    -
    - public static void traceException(String category, String message, Throwable exception) {
    - _trace(category, message, exception);
    - }
    -
    - public static void traceException(String category, Throwable exception) {
    - _trace(category, exception.getMessage(), exception);
    - }
    -
    - public static void trace(String category, String message) {
    - _trace(category, message, null);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMContentWrapperImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMContentWrapperImpl.java
    deleted file mode 100644
    index 11707b72ab..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMContentWrapperImpl.java
    +++ /dev/null
    @@ -1,56 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.contentmodel;
    -
    -
    -
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
    -
    -public class CMContentWrapperImpl extends CMNodeWrapperImpl implements CMContent {
    -
    - private CMContent fCMContent = null;
    -
    - /**
    - * CMContentWrapper constructor comment.
    - * @param prefix java.lang.String
    - * @param node org.eclipse.wst.xml.core.internal.contentmodel.CMNode
    - */
    - public CMContentWrapperImpl(String prefix, org.eclipse.wst.xml.core.internal.contentmodel.CMContent node) {
    - super(prefix, node);
    - fCMContent = node;
    - }
    -
    - /**
    - * getMaxOccur method
    - * @return int
    - *
    - * If -1, it's UNBOUNDED.
    - */
    - public int getMaxOccur() {
    - return fCMContent.getMaxOccur();
    - }
    -
    - /**
    - * getMinOccur method
    - * @return int
    - *
    - * If 0, it's OPTIONAL.
    - * If 1, it's REQUIRED.
    - */
    - public int getMinOccur() {
    - return fCMContent.getMinOccur();
    - }
    -
    - public CMNode getOriginNode() {
    - return fCMContent;
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMDocumentWrapperImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMDocumentWrapperImpl.java
    deleted file mode 100644
    index b330f92494..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMDocumentWrapperImpl.java
    +++ /dev/null
    @@ -1,216 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.contentmodel;
    -
    -
    -
    -import java.util.Hashtable;
    -import java.util.Iterator;
    -
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMNamespace;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
    -import org.eclipse.wst.xml.core.internal.provisional.contentmodel.CMNodeWrapper;
    -
    -public class CMDocumentWrapperImpl implements CMDocument, CMNodeWrapper {
    -
    - class CMNamedNodeMapImpl implements CMNamedNodeMap {
    -
    - protected Hashtable table = new Hashtable();
    -
    - public CMNamedNodeMapImpl() {
    - super();
    - }
    -
    - Hashtable getHashtable() {
    - return table;
    - }
    -
    - public int getLength() {
    - return table.size();
    - }
    -
    - public CMNode getNamedItem(String name) {
    - return (CMNode) table.get(name);
    - }
    -
    - public CMNode item(int index) {
    - Object result = null;
    - int size = table.size();
    - if (index < size) {
    - Iterator values = iterator();
    - for (int i = 0; i <= index; i++) {
    - result = values.next();
    - }
    - }
    - return (CMNode) result;
    - }
    -
    - public Iterator iterator() {
    - return table.values().iterator();
    - }
    -
    - public void setNamedItem(String name, CMNode aNode) {
    - if (name != null && aNode != null)
    - table.put(name, aNode);
    - }
    - }
    -
    - public class CMNamespaceImpl implements CMNamespace {
    - public String getNodeName() {
    - return CMDocumentWrapperImpl.this.getURI();
    - }
    -
    - public int getNodeType() {
    - return CMNode.NAME_SPACE;
    - }
    -
    - public String getPrefix() {
    - return CMDocumentWrapperImpl.this.getPrefix();
    - }
    -
    - public Object getProperty(String property) {
    - return null;
    - }
    -
    - public String getURI() {
    - return CMDocumentWrapperImpl.this.getURI();
    - }
    -
    - public boolean supports(String feature) {
    - return false;
    - }
    - }
    -
    - private CMDocument fDocument;
    - private CMNamedNodeMap fElements = null;
    - private CMNamedNodeMap fEntities = null;
    - private CMNamespace fNamespace = new CMNamespaceImpl();
    - private String fPrefix;
    - private String fURI;
    -
    - public CMDocumentWrapperImpl(String newURI, String newPrefix, CMDocument tld) {
    - fURI = newURI;
    - fPrefix = newPrefix;
    - fDocument = tld;
    - }
    -
    - /**
    - *
    - * @return org.eclipse.wst.xml.core.internal.contentmodel.CMDocument
    - */
    - public CMDocument getDocument() {
    - return fDocument;
    - }
    -
    - /**
    - * getElements method
    - * @return CMNamedNodeMap
    - *
    - * Returns CMNamedNodeMap of ElementDeclaration
    - */
    - public CMNamedNodeMap getElements() {
    - if (fElements == null) {
    - int length = getDocument().getElements().getLength();
    - CMNamedNodeMapImpl elements = new CMNamedNodeMapImpl();
    - for (int i = 0; i < length; i++) {
    - CMElementDeclaration ed = new CMElementDeclarationWrapperImpl(fPrefix, (CMElementDeclaration) getDocument().getElements().item(i));
    - elements.setNamedItem(ed.getNodeName(), ed);
    - }
    - fElements = elements;
    - }
    - return fElements;
    - }
    -
    - /**
    - * getEntities method
    - * @return CMNamedNodeMap
    - *
    - * Returns CMNamedNodeMap of EntityDeclaration
    - */
    - public CMNamedNodeMap getEntities() {
    - if (fEntities == null) {
    - fEntities = getDocument().getEntities();
    - }
    - return fEntities;
    - }
    -
    - /**
    - * getNamespace method
    - * @return CMNamespace
    - */
    - public CMNamespace getNamespace() {
    - return fNamespace;
    - }
    -
    - /**
    - * getNodeName method
    - * @return java.lang.String
    - */
    - public String getNodeName() {
    - return getDocument().getNodeName();
    - }
    -
    - /**
    - * getNodeType method
    - * @return int
    - *
    - * Returns one of :
    - *
    - */
    - public int getNodeType() {
    - return getDocument().getNodeType();
    - }
    -
    - public CMNode getOriginNode() {
    - return fDocument;
    - }
    -
    - /**
    - *
    - * @return java.lang.String
    - */
    - public String getPrefix() {
    - return fPrefix;
    - }
    -
    - /**
    - * getProperty method
    - * @return java.lang.Object
    - *
    - * Returns the object property desciped by the propertyName
    - *
    - */
    - public Object getProperty(String propertyName) {
    - return getDocument().getProperty(propertyName);
    - }
    -
    - /**
    - *
    - * @return java.lang.String
    - */
    - public String getURI() {
    - return fURI;
    - }
    -
    - /**
    - * supports method
    - * @return boolean
    - *
    - * Returns true if the CMNode supports a specified property
    - *
    - */
    - public boolean supports(String propertyName) {
    - return getDocument().supports(propertyName);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMElementDeclarationWrapperImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMElementDeclarationWrapperImpl.java
    deleted file mode 100644
    index 69eeca3eba..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMElementDeclarationWrapperImpl.java
    +++ /dev/null
    @@ -1,128 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.contentmodel;
    -
    -
    -
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
    -
    -public class CMElementDeclarationWrapperImpl extends CMNodeWrapperImpl implements CMElementDeclaration {
    - private CMContent fCMContent = null;
    -
    - protected CMElementDeclaration fElementDecl = null;
    -
    - /**
    - * CMElementDeclarationWrapper constructor comment.
    - * @param prefix java.lang.String
    - * @param node org.eclipse.wst.xml.core.internal.contentmodel.CMNode
    - */
    - public CMElementDeclarationWrapperImpl(String prefix, CMElementDeclaration node) {
    - super(prefix, node);
    - fElementDecl = node;
    - }
    -
    - /**
    - * getAttributes method
    - * @return CMNamedNodeMap
    - *
    - * Returns CMNamedNodeMap of AttributeDeclaration
    - */
    - public CMNamedNodeMap getAttributes() {
    - return fElementDecl.getAttributes();
    - }
    -
    - /**
    - * getCMContent method
    - * @return CMContent
    - *
    - * Returns the root node of this element's content model.
    - * This can be an CMElementDeclaration or a CMGroup
    - */
    - public CMContent getContent() {
    - if (fCMContent == null) {
    - CMContent content = fElementDecl.getContent();
    - if (content == null)
    - return null;
    - if (content instanceof CMGroup)
    - fCMContent = new CMGroupWrapperImpl(fPrefix, (CMGroup) content);
    - else
    - fCMContent = new CMContentWrapperImpl(fPrefix, content);
    - }
    - return fCMContent;
    - }
    -
    - /**
    - * getContentType method
    - * @return int
    - *
    - * Returns one of :
    - * ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA.
    - */
    - public int getContentType() {
    - return fElementDecl.getContentType();
    - }
    -
    - /**
    - * getDataType method
    - * @return java.lang.String
    - */
    - public CMDataType getDataType() {
    - return fElementDecl.getDataType();
    - }
    -
    - /**
    - * getElementName method
    - * @return java.lang.String
    - */
    - public String getElementName() {
    - return getNodeName();
    - }
    -
    - /**
    - * getLocalElements method
    - * @return CMNamedNodeMap
    - *
    - * Returns a list of locally defined elements.
    - */
    - public CMNamedNodeMap getLocalElements() {
    - return fElementDecl.getLocalElements();
    - }
    -
    - /**
    - * getMaxOccur method
    - * @return int
    - *
    - * If -1, it's UNBOUNDED.
    - */
    - public int getMaxOccur() {
    - return fElementDecl.getMaxOccur();
    - }
    -
    - /**
    - * getMinOccur method
    - * @return int
    - *
    - * If 0, it's OPTIONAL.
    - * If 1, it's REQUIRED.
    - */
    - public int getMinOccur() {
    - return fElementDecl.getMinOccur();
    - }
    -
    - public CMNode getOriginNode() {
    - return fElementDecl;
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMGroupWrapperImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMGroupWrapperImpl.java
    deleted file mode 100644
    index ee8619eb5f..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMGroupWrapperImpl.java
    +++ /dev/null
    @@ -1,112 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.contentmodel;
    -
    -import java.util.ArrayList;
    -import java.util.List;
    -
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMNodeList;
    -
    -public class CMGroupWrapperImpl extends CMContentWrapperImpl implements CMGroup {
    - class CMNodeListImpl implements CMNodeList {
    - private List nodes = null;
    -
    - /**
    - * CMNodeListImpl constructor comment.
    - */
    - public CMNodeListImpl() {
    - super();
    - nodes = new ArrayList();
    - }
    -
    - /**
    - * @return org.eclipse.wst.xml.core.internal.contentmodel.CMNode
    - * @param node org.eclipse.wst.xml.core.internal.contentmodel.CMNode
    - */
    - public void appendItem(CMNode node) {
    - nodes.add(node);
    - }
    -
    - /**
    - * getLength method
    - * @return int
    - */
    - public int getLength() {
    - return nodes.size();
    - }
    -
    - /**
    - * item method
    - * @return CMNode
    - * @param index int
    - */
    - public CMNode item(int index) {
    - if (index < 0 || index >= nodes.size())
    - return null;
    - return (CMNode) nodes.get(index);
    - }
    - }
    -
    - private CMNodeList fChildNodes = null;
    - private CMGroup fGroup = null;
    -
    - /**
    - * CMGroupWrapper constructor comment.
    - * @param prefix java.lang.String
    - * @param node org.eclipse.wst.xml.core.internal.contentmodel.CMContent
    - */
    - public CMGroupWrapperImpl(String prefix, CMGroup node) {
    - super(prefix, node);
    - }
    -
    - /**
    - * getChildNodes method
    - * @return CMNodeList
    - *
    - * Returns child CMNodeList, which includes ElementDefinition or CMElement.
    - */
    - public CMNodeList getChildNodes() {
    - if (fChildNodes == null) {
    - CMNodeListImpl childNodes = new CMNodeListImpl();
    - CMNodeList children = fGroup.getChildNodes();
    - for (int i = 0; i < children.getLength(); i++) {
    - CMNode child = children.item(i);
    - if (child instanceof CMGroup)
    - childNodes.appendItem(new CMGroupWrapperImpl(fPrefix, (CMGroup) child));
    - else if (child instanceof CMElementDeclaration)
    - childNodes.appendItem(new CMElementDeclarationWrapperImpl(fPrefix, (CMElementDeclaration) child));
    - else
    - // error?
    - childNodes.appendItem(new CMNodeWrapperImpl(fPrefix, child));
    - }
    - fChildNodes = childNodes;
    - }
    - return fChildNodes;
    - }
    -
    - /**
    - * getOperation method
    - * @return int
    - *
    - * Returns one of :
    - * ALONE (a), SEQUENCE (a,b), CHOICE (a|b), ALL (a&b).
    - */
    - public int getOperator() {
    - return fGroup.getOperator();
    - }
    -
    - public CMNode getOriginNode() {
    - return fGroup;
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMNodeWrapperImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMNodeWrapperImpl.java
    deleted file mode 100644
    index a8b7d21c9a..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMNodeWrapperImpl.java
    +++ /dev/null
    @@ -1,79 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.contentmodel;
    -
    -
    -
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
    -import org.eclipse.wst.xml.core.internal.provisional.contentmodel.CMNodeWrapper;
    -
    -public class CMNodeWrapperImpl implements CMNode, CMNodeWrapper {
    - private CMNode fNode = null;
    - private String fNodeName = null;
    -
    - protected String fPrefix = null;
    -
    - /**
    - * CMNodeWrapper constructor comment.
    - */
    - public CMNodeWrapperImpl(String prefix, CMNode node) {
    - super();
    - fPrefix = prefix;
    - fNode = node;
    -
    - fNodeName = fPrefix + ":" + fNode.getNodeName(); //$NON-NLS-1$
    - }
    -
    - /**
    - * getNodeName method
    - * @return java.lang.String
    - */
    - public String getNodeName() {
    - return fNodeName;
    - }
    -
    - /**
    - * getNodeType method
    - * @return int
    - *
    - * Returns one of :
    - *
    - */
    - public int getNodeType() {
    - return fNode.getNodeType();
    - }
    -
    - public CMNode getOriginNode() {
    - return fNode;
    - }
    -
    - /**
    - * getProperty method
    - * @return java.lang.Object
    - *
    - * Returns the object property desciped by the propertyName
    - *
    - */
    - public Object getProperty(String propertyName) {
    - return fNode.getProperty(propertyName);
    - }
    -
    - /**
    - * supports method
    - * @return boolean
    - *
    - * Returns true if the CMNode supports a specified property
    - *
    - */
    - public boolean supports(String propertyName) {
    - return fNode.supports(propertyName);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/JSPCMDocumentFactory.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/JSPCMDocumentFactory.java
    deleted file mode 100644
    index 59b2b3e462..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/JSPCMDocumentFactory.java
    +++ /dev/null
    @@ -1,51 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 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.jsp.core.internal.contentmodel;
    -
    -import org.eclipse.wst.html.core.internal.contentmodel.HTMLCMDocumentFactory;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
    -import org.eclipse.wst.xml.core.internal.provisional.contentmodel.CMDocType;
    -
    -/**
    - * CMDocument factory for JSP documents (which for now live in the HTML Core
    - * plugin).
    - */
    -public final class JSPCMDocumentFactory {
    -
    - private JSPCMDocumentFactory() {
    - super();
    - }
    -
    - public static CMDocument getCMDocument() {
    - return getCMDocument(CMDocType.JSP20_DOC_TYPE);
    - }
    -
    - /**
    - * @return org.eclipse.wst.xml.core.internal.contentmodel.CMDocument
    - * @param cmtype
    - * java.lang.String
    - */
    - public static CMDocument getCMDocument(String cmtype) {
    - if (cmtype == null)
    - return getCMDocument();
    - return HTMLCMDocumentFactory.getCMDocument(cmtype);
    - }
    -
    - public static CMDocument getCMDocument(float jspVersion) {
    - if (jspVersion >= 2)
    - return getCMDocument(CMDocType.JSP20_DOC_TYPE);
    - if (jspVersion >= 1.2)
    - return getCMDocument(CMDocType.JSP12_DOC_TYPE);
    - if (jspVersion >= 1)
    - return getCMDocument(CMDocType.JSP11_DOC_TYPE);
    - return getCMDocument();
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/TaglibController.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/TaglibController.java
    deleted file mode 100644
    index e4454cc250..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/TaglibController.java
    +++ /dev/null
    @@ -1,373 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2001, 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.jsp.core.internal.contentmodel;
    -
    -import java.util.ArrayList;
    -import java.util.HashMap;
    -import java.util.Iterator;
    -import java.util.List;
    -import java.util.Map;
    -
    -import org.eclipse.core.filebuffers.FileBuffers;
    -import org.eclipse.core.filebuffers.IDocumentSetupParticipant;
    -import org.eclipse.core.filebuffers.IDocumentSetupParticipantExtension;
    -import org.eclipse.core.filebuffers.IFileBuffer;
    -import org.eclipse.core.filebuffers.IFileBufferListener;
    -import org.eclipse.core.filebuffers.ITextFileBuffer;
    -import org.eclipse.core.filebuffers.LocationKind;
    -import org.eclipse.core.runtime.IPath;
    -import org.eclipse.core.runtime.Platform;
    -import org.eclipse.jface.text.IDocument;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.TLDCMDocumentManager;
    -import org.eclipse.jst.jsp.core.internal.parser.JSPSourceParser;
    -import org.eclipse.jst.jsp.core.taglib.ITaglibIndexDelta;
    -import org.eclipse.jst.jsp.core.taglib.ITaglibIndexListener;
    -import org.eclipse.jst.jsp.core.taglib.TaglibIndex;
    -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
    -import org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument;
    -import org.eclipse.wst.sse.core.internal.util.Assert;
    -
    -/**
    - * Provides a direct mapping from IStructuredDocument to supporting
    - * TLDCMDocumentManager.
    - *
    - * Listens to the creation of JSP type TextFileBuffers and forces a text-less
    - * reparse after connecting taglib-supporting listeners. Connecting the
    - * listeners before the text is set would be ideal, but there is no way to
    - * look up taglib references since the location is not yet knowable. Since
    - * taglibs can affect the parsing of the document, a reparse is currently
    - * required to react to custom tags with tagdependent content.
    - *
    - * TODO: Remove the reparse penalty.
    - */
    -public class TaglibController implements IDocumentSetupParticipant, IDocumentSetupParticipantExtension {
    -
    - class DocumentInfo implements ITaglibIndexListener {
    - IStructuredDocument document;
    - ITextFileBuffer textFileBuffer;
    - IPath location;
    - LocationKind locationKind;
    - TLDCMDocumentManager tldDocumentManager;
    -
    - public void indexChanged(ITaglibIndexDelta delta) {
    - int type = delta.getKind();
    - if (type == ITaglibIndexDelta.CHANGED || type == ITaglibIndexDelta.REMOVED) {
    - ITaglibIndexDelta[] deltas = delta.getAffectedChildren();
    - boolean affected = false;
    - for (int i = 0; i < deltas.length; i++) {
    - Object key = TLDCMDocumentManager.getUniqueIdentifier(deltas[i].getTaglibRecord());
    - if (tldDocumentManager.getDocuments().containsKey(key)) {
    - affected = true;
    - }
    - }
    - if (affected) {
    - if (_debugCache) {
    - System.out.println("TLDCMDocumentManager cleared its private CMDocument cache"); //$NON-NLS-1$
    - }
    - tldDocumentManager.getDocuments().clear();
    - tldDocumentManager.getSourceParser().resetHandlers();
    -
    - if (document instanceof BasicStructuredDocument) {
    - ((BasicStructuredDocument) document).reparse(this);
    - }
    - }
    - }
    - tldDocumentManager.indexChanged(delta);
    - }
    - }
    -
    - static final boolean _debugCache = "true".equalsIgnoreCase(Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/tldcmdocument/cache")); //$NON-NLS-1$ //$NON-NLS-2$
    -
    - class FileBufferListener implements IFileBufferListener {
    -
    - /*
    - * (non-Javadoc)
    - *
    - * @see org.eclipse.core.filebuffers.IFileBufferListener#bufferContentAboutToBeReplaced(org.eclipse.core.filebuffers.IFileBuffer)
    - */
    - public void bufferContentAboutToBeReplaced(IFileBuffer buffer) {
    - }
    -
    - /*
    - * (non-Javadoc)
    - *
    - * @see org.eclipse.core.filebuffers.IFileBufferListener#bufferContentReplaced(org.eclipse.core.filebuffers.IFileBuffer)
    - */
    - public void bufferContentReplaced(IFileBuffer buffer) {
    - }
    -
    - /*
    - * (non-Javadoc)
    - *
    - * @see org.eclipse.core.filebuffers.IFileBufferListener#bufferCreated(org.eclipse.core.filebuffers.IFileBuffer)
    - */
    - public void bufferCreated(IFileBuffer buffer) {
    - if (buffer instanceof ITextFileBuffer) {
    - IDocument document = ((ITextFileBuffer) buffer).getDocument();
    - // ignore non-JSP documents
    - synchronized (_instance.fJSPdocuments) {
    - if (!_instance.fJSPdocuments.contains(document))
    - return;
    - }
    - Assert.isTrue(document instanceof IStructuredDocument, getClass().getName() + " SetupParticipant was called for non-IStructuredDocument"); //$NON-NLS-1$
    -
    - DocumentInfo info = null;
    - synchronized (_instance.fDocumentMap) {
    - info = (DocumentInfo) _instance.fDocumentMap.get(document);
    - }
    - if (info != null) {
    - // remember the buffer now
    - info.textFileBuffer = (ITextFileBuffer) buffer;
    - }
    - else {
    - info = new DocumentInfo();
    - info.document = (IStructuredDocument) document;
    - info.textFileBuffer = (ITextFileBuffer) buffer;
    - info.location = buffer.getLocation();
    - info.locationKind = LocationKind.NORMALIZE;
    - info.tldDocumentManager = new TLDCMDocumentManager();
    - info.tldDocumentManager.setSourceParser((JSPSourceParser) info.document.getParser());
    - synchronized (_instance.fDocumentMap) {
    - _instance.fDocumentMap.put(document, info);
    - }
    - TaglibIndex.addTaglibIndexListener(info);
    - if (document instanceof BasicStructuredDocument && document.getLength() > 0) {
    - ((BasicStructuredDocument) document).reparse(this);
    - }
    - }
    - }
    - }
    -
    - /*
    - * (non-Javadoc)
    - *
    - * @see org.eclipse.core.filebuffers.IFileBufferListener#bufferDisposed(org.eclipse.core.filebuffers.IFileBuffer)
    - */
    - public void bufferDisposed(IFileBuffer buffer) {
    - if (buffer instanceof ITextFileBuffer) {
    - IDocument document = ((ITextFileBuffer) buffer).getDocument();
    - synchronized (_instance.fJSPdocuments) {
    - if (!_instance.fJSPdocuments.remove(document))
    - return;
    - }
    - }
    - DocumentInfo info = null;
    - synchronized (fDocumentMap) {
    - Map.Entry[] entries = (Map.Entry[]) fDocumentMap.entrySet().toArray(new Map.Entry[fDocumentMap.size()]);
    - for (int i = 0; i < entries.length; i++) {
    - info = (DocumentInfo) entries[i].getValue();
    - /**
    - * https://bugs.eclipse.org/bugs/show_bug.cgi?id=222137
    - *
    - * Might be null if setup() has been called but
    - * bufferCreated() has not, yet.
    - */
    - if (info != null && info.textFileBuffer != null && info.textFileBuffer.equals(buffer)) {
    - fDocumentMap.remove(entries[i].getKey());
    - break;
    - }
    - }
    - }
    - if (info != null) {
    - info.tldDocumentManager.clearCache();
    - TaglibIndex.removeTaglibIndexListener(info);
    - }
    - }
    -
    - /*
    - * (non-Javadoc)
    - *
    - * @see org.eclipse.core.filebuffers.IFileBufferListener#dirtyStateChanged(org.eclipse.core.filebuffers.IFileBuffer,
    - * boolean)
    - */
    - public void dirtyStateChanged(IFileBuffer buffer, boolean isDirty) {
    - }
    -
    - /*
    - * (non-Javadoc)
    - *
    - * @see org.eclipse.core.filebuffers.IFileBufferListener#stateChangeFailed(org.eclipse.core.filebuffers.IFileBuffer)
    - */
    - public void stateChangeFailed(IFileBuffer buffer) {
    - }
    -
    - /*
    - * (non-Javadoc)
    - *
    - * @see org.eclipse.core.filebuffers.IFileBufferListener#stateChanging(org.eclipse.core.filebuffers.IFileBuffer)
    - */
    - public void stateChanging(IFileBuffer buffer) {
    - }
    -
    - /*
    - * (non-Javadoc)
    - *
    - * @see org.eclipse.core.filebuffers.IFileBufferListener#stateValidationChanged(org.eclipse.core.filebuffers.IFileBuffer,
    - * boolean)
    - */
    - public void stateValidationChanged(IFileBuffer buffer, boolean isStateValidated) {
    - }
    -
    - /*
    - * (non-Javadoc)
    - *
    - * @see org.eclipse.core.filebuffers.IFileBufferListener#underlyingFileDeleted(org.eclipse.core.filebuffers.IFileBuffer)
    - */
    - public void underlyingFileDeleted(IFileBuffer buffer) {
    - }
    -
    - /*
    - * (non-Javadoc)
    - *
    - * @see org.eclipse.core.filebuffers.IFileBufferListener#underlyingFileMoved(org.eclipse.core.filebuffers.IFileBuffer,
    - * org.eclipse.core.runtime.IPath)
    - */
    - public void underlyingFileMoved(IFileBuffer buffer, IPath path) {
    - }
    -
    -
    - }
    -
    - static TaglibController _instance = null;
    - static private boolean fIsShutdown = false;
    -
    - public static IPath getLocation(IDocument document) {
    - synchronized (_instance.fDocumentMap) {
    - DocumentInfo info = (DocumentInfo) _instance.fDocumentMap.get(document);
    - if (info != null)
    - return info.location;
    - return null;
    - }
    - }
    -
    - /**
    - * @param manager
    - * @return
    - */
    - public static IPath getLocation(TLDCMDocumentManager manager) {
    - // if _instance is null, we are already shutting donw
    - if (_instance == null)
    - return null;
    -
    - IPath location = null;
    - synchronized (_instance.fDocumentMap) {
    - Iterator docInfos = _instance.fDocumentMap.values().iterator();
    - while (docInfos.hasNext() && location == null) {
    - DocumentInfo info = (DocumentInfo) docInfos.next();
    - if (info.tldDocumentManager.equals(manager))
    - location = info.location;
    - }
    - }
    - return location;
    - }
    -
    - public static TLDCMDocumentManager getTLDCMDocumentManager(IDocument document) {
    - // if _instance is null, we are already shutting down
    - if (_instance == null)
    - return null;
    - synchronized (_instance.fDocumentMap) {
    - DocumentInfo info = (DocumentInfo) _instance.fDocumentMap.get(document);
    - if (info != null)
    - return info.tldDocumentManager;
    - return null;
    -
    - }
    - }
    -
    - private static synchronized boolean isShutdown() {
    - return fIsShutdown;
    - }
    -
    - private static synchronized void setShutdown(boolean isShutdown) {
    - fIsShutdown = isShutdown;
    - }
    -
    - public synchronized static void shutdown() {
    - setShutdown(true);
    - FileBuffers.getTextFileBufferManager().removeFileBufferListener(_instance.fBufferListener);
    - _instance = null;
    - }
    -
    - public synchronized static void startup() {
    - if (_instance == null) {
    - _instance = new TaglibController();
    - FileBuffers.getTextFileBufferManager().addFileBufferListener(_instance.fBufferListener);
    - }
    - setShutdown(false);
    - }
    -
    - IFileBufferListener fBufferListener;
    -
    - Map fDocumentMap;
    -
    - List fJSPdocuments;
    -
    - /*
    - * This constructor is only to be called as part of the FileBuffer
    - * framework
    - */
    - public TaglibController() {
    - super();
    - fBufferListener = new FileBufferListener();
    - fJSPdocuments = new ArrayList(1);
    - fDocumentMap = new HashMap(1);
    - }
    -
    -
    - /*
    - * This method is only to be called as part of the FileBuffer framework
    - * (non-Javadoc)
    - *
    - * @see org.eclipse.core.filebuffers.IDocumentSetupParticipant#setup(org.eclipse.jface.text.IDocument)
    - */
    - public void setup(IDocument document) {
    - // if we've already shutdown, just ignore
    - if (isShutdown())
    - return;
    - // reference the shared instance's documents directly
    - synchronized (_instance.fJSPdocuments) {
    - _instance.fJSPdocuments.add(document);
    - }
    - }
    -
    - /*
    - * (non-Javadoc)
    - *
    - * @see org.eclipse.core.filebuffers.IDocumentSetupParticipantExtension#setup(org.eclipse.jface.text.IDocument,
    - * org.eclipse.core.runtime.IPath,
    - * org.eclipse.core.filebuffers.LocationKind)
    - */
    - public void setup(IDocument document, IPath location, LocationKind locationKind) {
    - // if we've already shutdown, just ignore
    - if (isShutdown())
    - return;
    - // reference the shared instance's documents directly
    - synchronized (_instance.fJSPdocuments) {
    - _instance.fJSPdocuments.add(document);
    - }
    -
    - DocumentInfo info = new DocumentInfo();
    - info.document = (IStructuredDocument) document;
    - info.textFileBuffer = null; // will be supplied later
    - info.location = location;
    - info.locationKind = locationKind;
    - info.tldDocumentManager = new TLDCMDocumentManager();
    - synchronized (_instance.fDocumentMap) {
    - _instance.fDocumentMap.put(document, info);
    - }
    - info.tldDocumentManager.setSourceParser((JSPSourceParser) info.document.getParser());
    - if (document instanceof BasicStructuredDocument && document.getLength() > 0) {
    - ((BasicStructuredDocument) document).reparse(this);
    - }
    - TaglibIndex.addTaglibIndexListener(info);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMAttributeDeclarationImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMAttributeDeclarationImpl.java
    deleted file mode 100644
    index f6ea5850fb..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMAttributeDeclarationImpl.java
    +++ /dev/null
    @@ -1,282 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2008 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.jsp.core.internal.contentmodel.tld;
    -
    -
    -
    -import java.util.Enumeration;
    -
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.JSP12TLDNames;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDAttributeDeclaration;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDDocument;
    -import org.eclipse.wst.sse.core.utils.StringUtils;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
    -
    -public class CMAttributeDeclarationImpl implements TLDAttributeDeclaration {
    -
    - // https://bugs.eclipse.org/bugs/show_bug.cgi?id=170556
    - private static final CMDataType attrType = new CMDataTypeImpl(CMDataType.CDATA);
    -
    - private String fDescription;
    -
    - //
    - private boolean fIsFragment = false;
    -
    - private CMDocument fOwnerDocument;
    - // optional id
    - private String id = null;
    -
    - // required name
    - private String name = null;
    - // optional "required" element present, defaults to not present
    - private boolean required = false;
    -
    - // optional run-time (scriplet derived) value of attributes, defaults to
    - // none/false
    - private String rtexprvalue = null;
    -
    - private String type = null;
    -
    - /**
    - * CMAttributeDeclarationImpl constructor comment.
    - */
    - public CMAttributeDeclarationImpl(CMDocument owner) {
    - super();
    - fOwnerDocument = owner;
    - }
    -
    - /**
    - * getAttrName method
    - *
    - * @return java.lang.String
    - */
    - public String getAttrName() {
    - return getNodeName();
    - }
    -
    - /**
    - * getAttrType method
    - *
    - * @return CMDataType
    - */
    - public CMDataType getAttrType() {
    - return attrType;
    - }
    -
    - /**
    - * @deprecated in superclass
    - */
    - public String getDefaultValue() {
    - return ""; //$NON-NLS-1$
    - }
    -
    - /**
    - * @return Returns the description.
    - */
    - public String getDescription() {
    - return fDescription;
    - }
    -
    - /**
    - * @deprecated in superclass
    - */
    - public Enumeration getEnumAttr() {
    - return null;
    - }
    -
    - /**
    - *
    - * @return java.lang.String
    - */
    - public String getId() {
    - return id;
    - }
    -
    - /**
    - * getNodeName method
    - *
    - * @return java.lang.String
    - */
    - public String getNodeName() {
    - return name;
    - }
    -
    - /**
    - * getNodeType method
    - *
    - * @return int
    - *
    - * Returns one of :
    - *
    - */
    - public int getNodeType() {
    - return CMNode.ATTRIBUTE_DECLARATION;
    - }
    -
    - /*
    - * (non-Javadoc)
    - *
    - * @see org.eclipse.jst.jsp.core.contentmodel.tld.TLDAttributeDeclaration#getOwnerDocument()
    - */
    - public CMDocument getOwnerDocument() {
    - return fOwnerDocument;
    - }
    -
    - /**
    - * getProperty method
    - *
    - * @return java.lang.Object
    - *
    - * Returns the object property desciped by the propertyName
    - *
    - */
    - public Object getProperty(String propertyName) {
    - if (propertyName != null && propertyName.equals(JSP12TLDNames.DESCRIPTION)) {
    - return getDescription(); // return attribute description
    - }
    - else if (propertyName.equals(TLDDocument.CM_KIND)) {
    - return TLDDocument.JSP_TLD;
    - }
    - else if (propertyName.equals(JSP12TLDNames.SMALL_ICON) || propertyName.equals(JSP12TLDNames.LARGE_ICON)) {
    - return getOwnerDocument().getProperty(propertyName);
    - }
    - return null;
    - }
    -
    - /**
    - *
    - * @return java.lang.String
    - */
    - public java.lang.String getRtexprvalue() {
    - return rtexprvalue;
    - }
    -
    - public String getType() {
    - return type;
    - }
    -
    - /**
    - * getUsage method
    - *
    - * @return int OPTIONAL|REQUIRED
    - */
    - public int getUsage() {
    - return required ? REQUIRED : OPTIONAL;
    - }
    -
    - /**
    - * @return Returns the isFragment.
    - */
    - public boolean isFragment() {
    - return fIsFragment;
    - }
    -
    - /**
    - *
    - * @return boolean
    - */
    - public boolean isRequired() {
    - return required;
    - }
    -
    - /**
    - * @param description
    - * The description to set.
    - */
    - public void setDescription(String description) {
    - fDescription = description;
    - }
    -
    - /**
    - * @param isFragment
    - * The isFragment to set.
    - */
    - public void setFragment(boolean isFragment) {
    - fIsFragment = isFragment;
    - }
    -
    - /**
    - *
    - * @param newId
    - * java.lang.String
    - */
    - public void setId(String newId) {
    - id = newId;
    - }
    -
    - public void setNodeName(String string) {
    - name = string;
    - }
    -
    - /**
    - *
    - * @param newRequired
    - * boolean
    - */
    - public void setRequired(boolean newRequired) {
    - required = newRequired;
    - }
    -
    - /**
    - *
    - * @param newRequired
    - * boolean
    - */
    - public void setRequiredString(String newRequired) {
    - if (newRequired != null) {
    - if (newRequired.equalsIgnoreCase(JSP12TLDNames.TRUE) || newRequired.equalsIgnoreCase(JSP12TLDNames.YES))
    - setRequired(true);
    - else if (newRequired.equalsIgnoreCase(JSP12TLDNames.FALSE) || newRequired.equalsIgnoreCase(JSP12TLDNames.NO))
    - setRequired(false);
    - }
    - }
    -
    - /**
    - *
    - * @param newRtexprvalue
    - * java.lang.String
    - */
    - public void setRtexprvalue(String newRtexprvalue) {
    - rtexprvalue = newRtexprvalue;
    - }
    -
    - public void setType(String type) {
    - this.type = type;
    - }
    -
    - /**
    - * supports method
    - *
    - * @return boolean
    - *
    - * Returns true if the CMNode supports a specified property
    - *
    - */
    - public boolean supports(String propertyName) {
    - return propertyName == null || propertyName.equals(JSP12TLDNames.DESCRIPTION) || propertyName.equals(TLDDocument.CM_KIND) || propertyName.equals(JSP12TLDNames.SMALL_ICON) || propertyName.equals(JSP12TLDNames.LARGE_ICON);
    - }
    -
    - public String toString() {
    - StringBuffer buffer = new StringBuffer();
    - buffer.append("\n\t " + super.toString()); //$NON-NLS-1$
    - buffer.append("\n\t name:" + StringUtils.escape(getNodeName())); //$NON-NLS-1$
    - // Boolean.toString(boolean) is introduced in 1.4
    - // buffer.append("\n\t required:" +
    - // StringUtils.escape(Boolean.toString(isRequired())));
    - buffer.append("\n\t required:" + StringUtils.toString(isRequired())); //$NON-NLS-1$
    - buffer.append("\n\t rtexpr:" + StringUtils.escape(getRtexprvalue())); //$NON-NLS-1$
    - if (getId() != null)
    - buffer.append("\n\t id:" + StringUtils.escape(getId())); //$NON-NLS-1$
    - return buffer.toString();
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMDataTypeImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMDataTypeImpl.java
    deleted file mode 100644
    index 1c325a3567..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMDataTypeImpl.java
    +++ /dev/null
    @@ -1,100 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.contentmodel.tld;
    -
    -
    -
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
    -
    -public class CMDataTypeImpl implements CMDataType {
    -
    - protected String dataTypeName;
    -
    - public CMDataTypeImpl(String dataTypeName) {
    - this.dataTypeName = dataTypeName;
    - }
    -
    - /**
    - * getTypeName method
    - * @return java.lang.String
    - *
    - * This method returns a suitable default value that can be used when an instance of the data type is created.
    - * This returns null of a suitable default is not available.
    - */
    - public String generateInstanceValue() {
    - return null;
    - }
    -
    - public String getDataTypeName() {
    - return dataTypeName;
    - }
    -
    - /**
    - * getTypeName method
    - * @return java.lang.String[]
    - *
    - */
    - public String[] getEnumeratedValues() {
    - return null;
    - }
    -
    - /**
    - * getTypeName method
    - * @return java.lang.String
    - *
    - * Returns the implied value or null if none exists.
    - */
    - public String getImpliedValue() {
    - return null;
    - }
    -
    - /**
    - * getImpliedValueKind method
    - * @return int
    - *
    - * Returns one of :
    - * IMPLIED_VALUE_NONE, IMPLIED_VALUE_FIXED, IMPLIED_VALUE_DEFAULT.
    - */
    - public int getImpliedValueKind() {
    - return IMPLIED_VALUE_NONE;
    - }
    -
    - public String getNodeName() {
    - return dataTypeName;
    - }
    -
    - public int getNodeType() {
    - return CMNode.DATA_TYPE;
    - }
    -
    - /**
    - * getProperty method
    - * @return java.lang.Object
    - *
    - * Returns the object property described by the propertyName
    - *
    - */
    - public Object getProperty(String propertyName) {
    - return null;
    - }
    -
    - /**
    - * supports method
    - * @return boolean
    - *
    - * Returns true if the CMNode supports a specified property
    - *
    - */
    - public boolean supports(String propertyName) {
    - return false;
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMDocumentFactoryTLD.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMDocumentFactoryTLD.java
    deleted file mode 100644
    index 84c51bcef8..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMDocumentFactoryTLD.java
    +++ /dev/null
    @@ -1,1081 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2008 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.jsp.core.internal.contentmodel.tld;
    -
    -import java.io.ByteArrayInputStream;
    -import java.io.File;
    -import java.io.IOException;
    -import java.io.InputStream;
    -import java.net.MalformedURLException;
    -import java.net.URL;
    -import java.net.URLConnection;
    -
    -import javax.xml.parsers.ParserConfigurationException;
    -import javax.xml.parsers.SAXParser;
    -import javax.xml.parsers.SAXParserFactory;
    -
    -import org.eclipse.core.resources.IFile;
    -import org.eclipse.core.resources.IFolder;
    -import org.eclipse.core.resources.IResource;
    -import org.eclipse.core.resources.ResourcesPlugin;
    -import org.eclipse.core.runtime.CoreException;
    -import org.eclipse.core.runtime.IPath;
    -import org.eclipse.core.runtime.Path;
    -import org.eclipse.core.runtime.Platform;
    -import org.eclipse.jst.jsp.core.internal.Logger;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.JSP11TLDNames;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.JSP12TLDNames;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.JSP20TLDNames;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDDocument;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDElementDeclaration;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDFunction;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDInitParam;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDListener;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDValidator;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDVariable;
    -import org.eclipse.jst.jsp.core.internal.modelhandler.ModelHandlerForJSP;
    -import org.eclipse.jst.jsp.core.internal.provisional.JSP11Namespace;
    -import org.eclipse.jst.jsp.core.internal.provisional.JSP20Namespace;
    -import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
    -import org.eclipse.jst.jsp.core.internal.util.DocumentProvider;
    -import org.eclipse.jst.jsp.core.internal.util.FacetModuleCoreSupport;
    -import org.eclipse.jst.jsp.core.taglib.IJarRecord;
    -import org.eclipse.jst.jsp.core.taglib.ITLDRecord;
    -import org.eclipse.jst.jsp.core.taglib.ITagDirRecord;
    -import org.eclipse.jst.jsp.core.taglib.ITaglibRecord;
    -import org.eclipse.jst.jsp.core.taglib.IURLRecord;
    -import org.eclipse.wst.common.uriresolver.internal.util.URIHelper;
    -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
    -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
    -import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
    -import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
    -import org.eclipse.wst.sse.core.internal.util.JarUtilities;
    -import org.eclipse.wst.sse.core.utils.StringUtils;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
    -import org.eclipse.wst.xml.core.internal.contentmodel.factory.CMDocumentFactory;
    -import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
    -import org.w3c.dom.Element;
    -import org.w3c.dom.EntityReference;
    -import org.w3c.dom.Node;
    -import org.w3c.dom.NodeList;
    -import org.xml.sax.Attributes;
    -import org.xml.sax.InputSource;
    -import org.xml.sax.SAXException;
    -import org.xml.sax.helpers.DefaultHandler;
    -
    -/**
    - * CMDocumentBuilder for Taglib Descriptors
    - *
    - * Returns namespace-less CMDocuments for a taglib descriptor, loading it
    - * directly from a file or extracted from a JAR archive. Content Model objects
    - * will implement the TLDCMDocument, TLDElementDeclaration, and
    - * TLDAttributeDeclaration interfaces for extended properties.
    - */
    -public class CMDocumentFactoryTLD implements CMDocumentFactory {
    -
    - static final boolean _debug = "true".equalsIgnoreCase(Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/tldcmdocument/factory")); //$NON-NLS-1$ //$NON-NLS-2$
    -
    - /**
    - * CMDocumentFactoryTLD constructor comment.
    - */
    - public CMDocumentFactoryTLD() {
    - super();
    - }
    -
    - /**
    - * NOT API
    - *
    - * @param baselocation
    - * @param input
    - * @return
    - */
    - public CMDocument buildCMDocument(String baselocation, InputStream input) {
    - DocumentProvider provider = new DocumentProvider();
    - provider.setValidating(false);
    - provider.setRootElementName(JSP11TLDNames.TAGLIB);
    - provider.setInputStream(input);
    - if (baselocation != null)
    - provider.setBaseReference(baselocation);
    - return loadDocument(baselocation, provider.getRootElement());
    - }
    -
    - /**
    - * @param fileName
    - * @return
    - */
    - private CMDocumentImpl buildCMDocumentFromFolder(IPath path) {
    - if (_debug) {
    - System.out.println("tagdir loading for " + path); //$NON-NLS-1$
    - }
    - // EBNF is listed at 1.3.10
    - CMDocumentImpl document = new CMDocumentImpl();
    - document.setBaseLocation(path.toString());
    - document.setTlibversion("1.0"); //$NON-NLS-1$
    - IFolder folder = ResourcesPlugin.getWorkspace().getRoot().getFolder(path);
    - IResource[] tagfiles;
    - try {
    - tagfiles = folder.members();
    - for (int i = 0; i < tagfiles.length; i++) {
    - if (tagfiles[i].getType() == IResource.FILE) {
    - if (tagfiles[i].getType() != IResource.FILE)
    - continue;
    - String extension = tagfiles[i].getFileExtension();
    - if (extension != null && (extension.equals("tag") || extension.equals("tagx"))) {
    - CMElementDeclaration ed = createElementDeclaration(document, (IFile) tagfiles[i]);
    - if (ed != null) {
    - document.fElements.setNamedItem(ed.getNodeName(), ed);
    - }
    - }
    - }
    - }
    - }
    - catch (CoreException e) {
    - Logger.logException(e);
    - }
    - return document;
    - }
    -
    - /**
    - * NOT API
    - *
    - * @param fileName
    - * @return
    - */
    - protected CMDocument buildCMDocumentFromFile(String fileName) {
    - // load the taglib descriptor file
    - DocumentProvider provider = new DocumentProvider();
    - provider.setValidating(false);
    - provider.setBaseReference(fileName);
    - provider.setRootElementName(JSP11TLDNames.TAGLIB);
    - provider.setFileName(fileName);
    - Node rootElement = provider.getRootElement();
    - return loadDocument(fileName, rootElement);
    - }
    -
    - /**
    - * Builds a CMDocument assuming the JSP v1.1 default path
    - *
    - * @param jarFileName -
    - * the name of the containing JAR file
    - */
    - protected CMDocument buildCMDocumentFromJar(String jarFileName) {
    - // load the taglib descriptor file
    - return buildCMDocumentFromJar(jarFileName, JarUtilities.JSP11_TAGLIB);
    - }
    -
    - /**
    - * Builds a CMDocument
    - *
    - * @param jarFileName -
    - * the name of the containing JAR file
    - * @param contentFileName -
    - * the path within the JAR for a valid taglib descriptor
    - */
    - protected CMDocument buildCMDocumentFromJar(String jarFileName, String contentFileName) {
    - // load the taglib descriptor file
    - DocumentProvider provider = new DocumentProvider();
    - provider.setValidating(false);
    - provider.setBaseReference(jarFileName);
    - provider.setRootElementName(JSP11TLDNames.TAGLIB);
    - provider.setJarFileName(jarFileName);
    - provider.setFileName(contentFileName);
    - CMDocument document = loadDocument("jar:file://" + jarFileName + "!" + contentFileName, provider.getRootElement()); //$NON-NLS-1$ //$NON-NLS-2$
    - // TODO: Add the tags declared in META-INF/tags, see JSP 2.0 section
    - // 8.4.1
    - return document;
    - }
    -
    - protected CMAttributeDeclaration createAttributeDeclaration(CMDocument document, Node attrNode) {
    - CMAttributeDeclarationImpl attr = new CMAttributeDeclarationImpl(document);
    -
    - Node child = attrNode.getFirstChild();
    - while (child != null) {
    - if (child.getNodeType() == Node.ELEMENT_NODE) {
    - if (child.getNodeName().equals(JSP11TLDNames.NAME) && child.hasChildNodes()) {
    - attr.setNodeName(getContainedText(child));
    - }
    - else if (child.getNodeName().equals(JSP12TLDNames.DESCRIPTION) && child.hasChildNodes()) {
    - attr.setDescription(getContainedText(child));
    - }
    - else if (child.getNodeName().equals(JSP11TLDNames.ID) && child.hasChildNodes()) {
    - attr.setId(getContainedText(child));
    - }
    - else if (child.getNodeName().equals(JSP11TLDNames.REQUIRED) && child.hasChildNodes()) {
    - attr.setRequiredString(getContainedText(child));
    - }
    - else if (child.getNodeName().equals(JSP11TLDNames.RTEXPRVALUE) && child.hasChildNodes()) {
    - attr.setRtexprvalue(getContainedText(child));
    - }
    - else if (child.getNodeName().equals(JSP20TLDNames.FRAGMENT) && child.hasChildNodes()) {
    - attr.setFragment(Boolean.valueOf(getContainedText(child)).booleanValue());
    - }
    - }
    - child = child.getNextSibling();
    - }
    -
    - return attr;
    - }
    -
    - /**
    - * Builds a CMDocument from a taglib descriptor
    - *
    - * @param uri -
    - * the location of a valid taglib descriptor
    - */
    - public CMDocument createCMDocument(String uri) {
    - CMDocument result = null;
    - URL url = null;
    - try {
    - url = new URL(uri);
    - }
    - catch (MalformedURLException e) {
    - result = createCMDocumentFromFile(uri);
    - }
    - if (result == null && url != null) {
    - if (url.getProtocol().equals("file")) { //$NON-NLS-1$
    - result = createCMDocumentFromFile(url.getFile());
    - }
    - else {
    - /**
    - * Skip anything else since trying to load a TLD from a remote
    - * location has unpredictable performance impact.
    - */
    - }
    - }
    - if (result == null)
    - result = new CMDocumentImpl();
    - return result;
    - }
    -
    - /**
    - * @param fileName
    - * @return
    - */
    - private CMDocument createCMDocumentFromFile(String fileName) {
    - CMDocument result = null;
    - if (fileName.endsWith(".jar")) { //$NON-NLS-1$
    - result = buildCMDocumentFromJar(fileName);
    - }
    - else {
    - File file = new File(fileName);
    - try {
    - if (file.isDirectory()) {
    - result = buildCMDocumentFromDirectory(file);
    - }
    - else {
    - result = buildCMDocumentFromFile(fileName);
    - }
    - }
    - catch (SecurityException e) {
    - result = null;
    - }
    - }
    - return result;
    - }
    -
    - private CMDocument buildCMDocumentFromDirectory(File file) {
    - IFile[] foundFilesForLocation = ResourcesPlugin.getWorkspace().getRoot().findFilesForLocation(new Path(file.getPath()));
    - for (int i = 0; i < foundFilesForLocation.length; i++) {
    - if (foundFilesForLocation[i].isAccessible() && foundFilesForLocation[i].getType() == IResource.FOLDER) {
    - return buildCMDocumentFromFolder(foundFilesForLocation[i].getFullPath());
    - }
    - }
    - return null;
    - }
    -
    - protected CMElementDeclaration createElementDeclaration(CMDocumentImpl document, Element tagFileNode, String path) {
    - CMElementDeclarationImpl ed = new CMElementDeclarationImpl(document);
    - /*
    - * Preload with information from the tag file--it can be overwritten
    - * by the values from the TLD
    - */
    - IPath tagPath = FacetModuleCoreSupport.resolve(new Path(document.getBaseLocation()), path);
    - if (tagPath.segmentCount() > 1) {
    - IFile tagFile = ResourcesPlugin.getWorkspace().getRoot().getFile(tagPath);
    - if (tagFile.isAccessible()) {
    - ed.setPath(tagFile.getFullPath().toString());
    - if (tagPath.getFileExtension().equals("tag")) {
    - loadTagFile(ed, tagFile, true);
    - }
    - else if (tagPath.getFileExtension().equals("tagx")) {
    - loadTagXFile(ed, tagFile, true);
    - }
    -
    - if (tagFile.getLocation() != null && ed.getSmallIcon() != null) {
    - ed.setSmallIconURL(URIHelper.normalize(ed.getSmallIcon(), "file:" + tagFile.getLocation().toString(), tagFile.getLocation().removeLastSegments(1).toString()));
    - }
    - }
    - }
    -
    - // load information declared within the .tld
    - Node child = tagFileNode.getFirstChild();
    - while (child != null) {
    - if (child.getNodeType() == Node.ELEMENT_NODE) {
    - String nodeName = child.getNodeName();
    - if (nodeName.equals(JSP12TLDNames.DESCRIPTION) && child.hasChildNodes()) {
    - ed.setDescription(getContainedText(child));
    - }
    - else if (nodeName.equals(JSP12TLDNames.DISPLAY_NAME) && child.hasChildNodes()) {
    - ed.setDisplayName(getContainedText(child));
    - }
    - else if (nodeName.equals(JSP20TLDNames.EXAMPLE) && child.hasChildNodes()) {
    - ed.setExample(getContainedText(child));
    - }
    - else if (nodeName.equals(JSP20TLDNames.ICON) && child.hasChildNodes()) {
    - ed.setSmallIcon(getContainedText(child));
    - }
    - else if (nodeName.equals(JSP12TLDNames.NAME) && child.hasChildNodes()) {
    - ed.setNodeName(getContainedText(child));
    - }
    - else if (nodeName.equals(JSP20TLDNames.PATH) && child.hasChildNodes()) {
    - ed.setPath(getContainedText(child));
    - }
    - else if (nodeName.equals(JSP20TLDNames.TAG_EXTENSION)) {
    - ed.getExtensions().add(child);
    - }
    - }
    - child = child.getNextSibling();
    - }
    -
    - return ed;
    - }
    -
    - protected CMElementDeclaration createElementDeclaration(CMDocument document, Node tagNode) {
    - CMElementDeclarationImpl ed = new CMElementDeclarationImpl(document);
    -
    - Node child = tagNode.getFirstChild();
    - while (child != null) {
    - if (child.getNodeType() == Node.ELEMENT_NODE) {
    - // tag information
    - String nodeName = child.getNodeName();
    - if (nodeName.equals(JSP11TLDNames.NAME) && child.hasChildNodes()) {
    - ed.setNodeName(getContainedText(child));
    - }
    - else if ((nodeName.equals(JSP11TLDNames.TAGCLASS) || nodeName.equals(JSP12TLDNames.TAG_CLASS)) && child.hasChildNodes()) {
    - ed.setTagclass(getContainedText(child));
    - }
    - else if ((nodeName.equals(JSP11TLDNames.TEICLASS) || nodeName.equals(JSP12TLDNames.TEI_CLASS)) && child.hasChildNodes()) {
    - ed.setTeiclass(getContainedText(child));
    - }
    - else if ((nodeName.equals(JSP11TLDNames.BODYCONTENT) || nodeName.equals(JSP12TLDNames.BODY_CONTENT)) && child.hasChildNodes()) {
    - String bodycontent = getContainedText(child);
    - // Apparently, Apache Tomcat is not case sensitive about
    - // these values
    - if (bodycontent.equalsIgnoreCase(JSP11TLDNames.CONTENT_JSP))
    - ed.setBodycontent(JSP11TLDNames.CONTENT_JSP);
    - else if (bodycontent.equalsIgnoreCase(JSP11TLDNames.CONTENT_TAGDEPENDENT))
    - ed.setBodycontent(JSP11TLDNames.CONTENT_TAGDEPENDENT);
    - else if (bodycontent.equalsIgnoreCase(JSP11TLDNames.CONTENT_EMPTY))
    - ed.setBodycontent(JSP11TLDNames.CONTENT_EMPTY);
    - else if (bodycontent.equalsIgnoreCase(JSP20TLDNames.CONTENT_SCRIPTLESS))
    - ed.setBodycontent(JSP20TLDNames.CONTENT_SCRIPTLESS);
    - }
    - // info (1.1 only) or description (1.2 only)
    - else if ((nodeName.equals(JSP11TLDNames.INFO) || nodeName.equals(JSP12TLDNames.DESCRIPTION)) && child.hasChildNodes()) {
    - ed.setDescription(getContainedText(child));
    - }
    - // attributes
    - else if (nodeName.equals(JSP11TLDNames.ATTRIBUTE)) {
    - CMAttributeDeclaration attr = createAttributeDeclaration(document, child);
    - ed.fAttributes.setNamedItem(attr.getAttrName(), attr);
    - }
    - // variables
    - else if (nodeName.equals(JSP12TLDNames.VARIABLE)) {
    - ed.getVariables().add(createVariable(child));
    - }
    - else if (nodeName.equals(JSP12TLDNames.LARGE_ICON) && child.hasChildNodes()) {
    - ed.setLargeIcon(getContainedText(child));
    - }
    - else if (nodeName.equals(JSP12TLDNames.SMALL_ICON) && child.hasChildNodes()) {
    - ed.setSmallIcon(getContainedText(child));
    - }
    - else if (nodeName.equals(JSP20TLDNames.TAG_EXTENSION) && child.getNodeType() == Node.ELEMENT_NODE) {
    - ed.getExtensions().add(child);
    - }
    - }
    - child = child.getNextSibling();
    - }
    - return ed;
    - }
    -
    - private CMElementDeclaration createElementDeclaration(CMDocument document, IFile tagFile) {
    - CMElementDeclarationImpl ed = new CMElementDeclarationImpl(document);
    - // in tag files, the default body content is scriptless instead of JSP
    - ed.setBodycontent(JSP20TLDNames.CONTENT_SCRIPTLESS);
    - String shortFilename = tagFile.getName();
    - String fileExtension = tagFile.getFileExtension();
    - if (fileExtension != null && fileExtension.length() > 0) {
    - shortFilename = shortFilename.substring(0, shortFilename.length() - fileExtension.length() - 1);
    - }
    - ed.setNodeName(shortFilename);
    - ed.setPath(tagFile.getFullPath().toString());
    - if (fileExtension.equals("tag")) {
    - loadTagFile(ed, tagFile, true);
    - }
    - else if (fileExtension.equals("tagx")) {
    - loadTagXFile(ed, tagFile, true);
    - }
    -
    - if (tagFile.getLocation() != null && ed.getSmallIcon() != null) {
    - ed.setSmallIconURL(URIHelper.normalize(ed.getSmallIcon(), "file:" + tagFile.getLocation().toString(), tagFile.getLocation().removeLastSegments(1).toString()));
    - }
    - return ed;
    - }
    -
    - protected TLDFunction createFunction(CMDocument document, Node functionNode) {
    - TLDFunctionImpl function = new TLDFunctionImpl(document);
    - boolean hasName = false;
    -
    - Node child = functionNode.getFirstChild();
    - while (child != null) {
    - if (child.getNodeType() == Node.ELEMENT_NODE) {
    - // tag information
    - String nodeName = child.getNodeName();
    - if (nodeName.equals(JSP12TLDNames.DESCRIPTION) && child.hasChildNodes()) {
    - function.setDescription(getContainedText(child));
    - }
    - else if (nodeName.equals(JSP12TLDNames.DISPLAY_NAME) && child.hasChildNodes()) {
    - function.setName(getContainedText(child));
    - }
    - else if (nodeName.equals(JSP20TLDNames.EXAMPLE) && child.hasChildNodes()) {
    - function.setExample(getContainedText(child));
    - }
    - else if (nodeName.equals(JSP20TLDNames.FUNCTION_CLASS) && child.hasChildNodes()) {
    - function.setClassName(getContainedText(child));
    - }
    - else if (nodeName.equals(JSP20TLDNames.FUNCTION_EXTENSION) && child.hasChildNodes()) {
    - function.getExtensions().add(child);
    - }
    - else if (nodeName.equals(JSP20TLDNames.FUNCTION_SIGNATURE) && child.hasChildNodes()) {
    - function.setSignature(getContainedText(child));
    - }
    - else if (nodeName.equals(JSP20TLDNames.ICON) && child.hasChildNodes()) {
    - function.setIcon(getContainedText(child));
    - }
    - else if (nodeName.equals(JSP12TLDNames.NAME) && child.hasChildNodes()) {
    - function.setName(getContainedText(child));
    - hasName = function.getName().trim().length() > 0;
    - }
    - }
    - child = child.getNextSibling();
    - }
    - if (hasName) {
    - return function;
    - }
    - return null;
    - }
    -
    - protected TLDInitParam createInitParam(Node initParamNode) {
    - TLDInitParamImpl initParam = new TLDInitParamImpl();
    - Node child = initParamNode.getFirstChild();
    - while (child != null) {
    - if (child.getNodeType() == Node.ELEMENT_NODE) {
    - String nodeName = child.getNodeName();
    - if (nodeName.equals(JSP12TLDNames.VALIDATOR_PARAM_NAME) && child.hasChildNodes()) {
    - initParam.setName(getContainedText(child));
    - }
    - else if (nodeName.equals(JSP12TLDNames.VALIDATOR_PARAM_VALUE) && child.hasChildNodes()) {
    - initParam.setValue(getContainedText(child));
    - }
    - else if (nodeName.equals(JSP12TLDNames.DESCRIPTION) && child.hasChildNodes()) {
    - initParam.setDescription(getContainedText(child));
    - }
    - }
    - child = child.getNextSibling();
    - }
    - return initParam;
    - }
    -
    - protected TLDListener createListener(Node listenerNode) {
    - TLDListenerImpl listener = new TLDListenerImpl();
    - Node child = listenerNode.getFirstChild();
    - while (child != null) {
    - if (child.getNodeType() == Node.ELEMENT_NODE) {
    - String nodeName = child.getNodeName();
    - if (nodeName.equals(JSP12TLDNames.LISTENER_CLASS) && child.hasChildNodes()) {
    - listener.setListenerClass(getContainedText(child));
    - }
    - }
    - child = child.getNextSibling();
    - }
    - return listener;
    - }
    -
    - protected TLDValidator createValidator(Node validatorNode) {
    - TLDValidatorImpl validator = new TLDValidatorImpl();
    - Node child = validatorNode.getFirstChild();
    - while (child != null) {
    - if (child.getNodeType() == Node.ELEMENT_NODE) {
    - String nodeName = child.getNodeName();
    - if (nodeName.equals(JSP12TLDNames.VALIDATOR_CLASS) && child.hasChildNodes()) {
    - validator.setValidatorClass(getContainedText(child));
    - }
    - else if (nodeName.equals(JSP12TLDNames.VALIDATOR_INIT_PARAM) && child.hasChildNodes()) {
    - validator.getInitParams().add(createInitParam(child));
    - }
    - }
    - child = child.getNextSibling();
    - }
    - return validator;
    - }
    -
    - protected TLDVariable createVariable(Node variableNode) {
    - TLDVariableImpl variable = new TLDVariableImpl();
    - Node child = variableNode.getFirstChild();
    - while (child != null) {
    - if (child.getNodeType() == Node.ELEMENT_NODE) {
    - String nodeName = child.getNodeName();
    - if (nodeName.equals(JSP12TLDNames.VARIABLE_CLASS) && child.hasChildNodes()) {
    - variable.setVariableClass(getContainedText(child));
    - }
    - else if (nodeName.equals(JSP12TLDNames.VARIABLE_DECLARE) && child.hasChildNodes()) {
    - variable.setDeclareString(getContainedText(child));
    - }
    - else if (nodeName.equals(JSP12TLDNames.VARIABLE_NAME_FROM_ATTRIBUTE) && child.hasChildNodes()) {
    - variable.setNameFromAttribute(getContainedText(child));
    - }
    - else if (nodeName.equals(JSP12TLDNames.VARIABLE_NAME_GIVEN) && child.hasChildNodes()) {
    - variable.setNameGiven(getContainedText(child));
    - }
    - else if (nodeName.equals(JSP12TLDNames.VARIABLE_SCOPE) && child.hasChildNodes()) {
    - variable.setScope(getContainedText(child));
    - }
    - else if (nodeName.equals(JSP12TLDNames.DESCRIPTION) && child.hasChildNodes()) {
    - variable.setDescription(getContainedText(child));
    - }
    - }
    - child = child.getNextSibling();
    - }
    - return variable;
    - }
    -
    - protected String getContainedText(Node parent) {
    - NodeList children = parent.getChildNodes();
    - if (children.getLength() == 1) {
    - return getValue(children.item(0));
    - }
    - StringBuffer s = new StringBuffer();
    - Node child = parent.getFirstChild();
    - while (child != null) {
    - if (child.getNodeType() == Node.ENTITY_REFERENCE_NODE) {
    - String reference = ((EntityReference) child).getNodeValue();
    - if (reference == null && child.getNodeName() != null) {
    - reference = "&" + child.getNodeName() + ";"; //$NON-NLS-1$ //$NON-NLS-2$
    - }
    - if (reference != null) {
    - s.append(reference.trim());
    - }
    - }
    - else {
    - s.append(getValue(child));
    - }
    - child = child.getNextSibling();
    - }
    - return s.toString().trim();
    - }
    -
    - private String getValue(Node n) {
    - if (n == null)
    - return ""; //$NON-NLS-1$
    - String value = n.getNodeValue();
    - if (value == null)
    - return ""; //$NON-NLS-1$
    - return value.trim();
    - }
    -
    - public boolean isBuilderForGrammar(String grammarFileName) {
    - String fileName = grammarFileName.toLowerCase();
    - return fileName.endsWith(".tld") || fileName.endsWith(".jar"); //$NON-NLS-2$//$NON-NLS-1$
    - }
    -
    - private CMDocument loadDocument(String baseLocation, Node taglib) {
    - Node root = taglib;
    -
    - // create the CMDocument
    - CMDocumentImpl document = new CMDocumentImpl();
    - document.setBaseLocation(baseLocation);
    -
    - if (root == null) {
    - if (_debug) {
    - System.out.println("null \"taglib\" element for TLD " + baseLocation); //$NON-NLS-1$
    - }
    - return document;
    - }
    -
    - // populate the CMDocument
    - Node child = root.getFirstChild();
    - while (child != null) {
    - if (child.getNodeType() != Node.ELEMENT_NODE) {
    - child = child.getNextSibling();
    - continue;
    - }
    - String nodeName = child.getNodeName();
    - if(nodeName.indexOf(':') > 0) {
    - nodeName = nodeName.substring(nodeName.indexOf(':'));
    - }
    - // tag
    - if (nodeName.equals(JSP11TLDNames.TAG)) {
    - CMElementDeclaration ed = createElementDeclaration(document, child);
    - if (ed != null) {
    - document.fElements.setNamedItem(ed.getNodeName(), ed);
    - }
    - }
    - // tag-file
    - else if (nodeName.equals(JSP20TLDNames.TAG_FILE) && child.getNodeType() == Node.ELEMENT_NODE && child.hasChildNodes()) {
    - Element tagFileElement = (Element) child;
    - Node path = tagFileElement.getFirstChild();
    - while (path != null) {
    - if (path.getNodeType() == Node.ELEMENT_NODE && (JSP20TLDNames.PATH.equals(path.getNodeName()) || JSP20TLDNames.PATH.equals(path.getLocalName()))) {
    - String pathValue = getContainedText(path);
    - if (pathValue != null && pathValue.length() > 0) {
    - CMElementDeclarationImpl ed = (CMElementDeclarationImpl) createElementDeclaration(document, tagFileElement, pathValue);
    - if (ed != null) {
    - document.fElements.setNamedItem(ed.getNodeName(), ed);
    - }
    - }
    - }
    - path = path.getNextSibling();
    - }
    - }
    - // other one-of-a-kind children
    - // JSP version
    - else if ((nodeName.equals(JSP11TLDNames.JSPVERSION) || nodeName.equals(JSP12TLDNames.JSP_VERSION)) && child.hasChildNodes()) {
    - document.setJspversion(getContainedText(child));
    - }
    - // tag library version
    - else if ((nodeName.equals(JSP11TLDNames.TLIBVERSION) || nodeName.equals(JSP12TLDNames.TLIB_VERSION)) && child.hasChildNodes()) {
    - document.setTlibversion(getContainedText(child));
    - }
    - // short name
    - else if ((nodeName.equals(JSP11TLDNames.SHORTNAME) || nodeName.equals(JSP12TLDNames.SHORT_NAME)) && child.hasChildNodes()) {
    - document.setShortname(getContainedText(child));
    - }
    - // URI/URN
    - else if ((nodeName.equals(JSP11TLDNames.URI) || nodeName.equals(JSP11TLDNames.URN)) && child.hasChildNodes()) { //$NON-NLS-1$
    - document.setUri(getContainedText(child));
    - }
    - // info
    - else if (nodeName.equals(JSP11TLDNames.INFO) && child.hasChildNodes()) {
    - document.setInfo(getContainedText(child));
    - }
    - // New JSP 1.2
    - // description
    - else if (nodeName.equals(JSP12TLDNames.DESCRIPTION)) {
    - document.setDescription(getContainedText(child));
    - }
    - // display name
    - else if (nodeName.equals(JSP12TLDNames.DISPLAY_NAME) && child.hasChildNodes()) {
    - document.setDisplayName(getContainedText(child));
    - }
    - // large icon
    - else if (nodeName.equals(JSP12TLDNames.LARGE_ICON) && child.hasChildNodes()) {
    - document.setLargeIcon(getContainedText(child));
    - }
    - // small icon
    - else if (nodeName.equals(JSP12TLDNames.SMALL_ICON) && child.hasChildNodes()) {
    - document.setSmallIcon(getContainedText(child));
    - }
    - // validator
    - else if (nodeName.equals(JSP12TLDNames.VALIDATOR)) {
    - document.setValidator(createValidator(child));
    - }
    - // listener
    - else if (nodeName.equals(JSP12TLDNames.LISTENER)) {
    - document.getListeners().add(createListener(child));
    - }
    - else if (nodeName.equals(JSP20TLDNames.FUNCTION)) {
    - TLDFunction function = createFunction(document, child);
    - if (function != null) {
    - document.getFunctions().add(function);
    - }
    - }
    - else if (nodeName.equals(JSP20TLDNames.TAGLIB_EXTENSION)) {
    - document.getExtensions().add(child);
    - }
    -
    - child = child.getNextSibling();
    - }
    - return document;
    - }
    -
    - private void loadTagXFile(final CMElementDeclarationImpl ed, IFile tagxFile, boolean allowIncludes) {
    - ed.setPath(tagxFile.getFullPath().toString());
    - ed.setTagSource(TLDElementDeclaration.SOURCE_TAG_FILE);
    - try {
    - SAXParser parser = SAXParserFactory.newInstance().newSAXParser();
    - InputSource inputSource = new InputSource(tagxFile.getFullPath().toString());
    - InputStream input = tagxFile.getContents(false);
    - inputSource.setByteStream(input);
    - parser.parse(inputSource, new DefaultHandler() {
    - public InputSource resolveEntity(String publicId, String systemId) throws SAXException {
    - InputSource inputSource2 = new InputSource(systemId);
    - inputSource2.setByteStream(new ByteArrayInputStream(new byte[0]));
    - return inputSource2;
    - }
    -
    - public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
    - super.startElement(uri, localName, qName, attributes);
    - if (qName.equals(JSP20Namespace.ElementName.DIRECTIVE_TAG)) {
    - if (attributes.getIndex(JSP12TLDNames.DISPLAY_NAME) >= 0)
    - ed.setDisplayName(attributes.getValue(JSP12TLDNames.DISPLAY_NAME));
    - if (attributes.getIndex(JSP12TLDNames.BODY_CONTENT) >= 0)
    - ed.setBodycontent(attributes.getValue(JSP12TLDNames.BODY_CONTENT));
    - if (attributes.getIndex(JSP20TLDNames.DYNAMIC_ATTRIBUTES) >= 0)
    - ed.setDynamicAttributes(attributes.getValue(JSP20TLDNames.DYNAMIC_ATTRIBUTES));
    - if (attributes.getIndex(JSP12TLDNames.SMALL_ICON) >= 0)
    - ed.setSmallIcon(attributes.getValue(JSP12TLDNames.SMALL_ICON));
    - if (attributes.getIndex(JSP12TLDNames.LARGE_ICON) >= 0)
    - ed.setLargeIcon(attributes.getValue(JSP12TLDNames.LARGE_ICON));
    - if (attributes.getIndex(JSP12TLDNames.DESCRIPTION) >= 0)
    - ed.setDescription(attributes.getValue(JSP12TLDNames.DESCRIPTION));
    - if (attributes.getIndex(JSP20TLDNames.EXAMPLE) >= 0)
    - ed.setExample(attributes.getValue(JSP20TLDNames.EXAMPLE));
    - if (attributes.getIndex(JSP20TLDNames.SCRIPTING_LANGUAGE) >= 0)
    - ed.setScriptingLanguage(attributes.getValue(JSP20TLDNames.SCRIPTING_LANGUAGE));
    - if (attributes.getIndex(JSP20TLDNames.IMPORT) >= 0)
    - ed.setImport(attributes.getValue(JSP20TLDNames.IMPORT));
    - if (attributes.getIndex(JSP20TLDNames.PAGE_ENCODING) >= 0)
    - ed.setPageEncoding(attributes.getValue(JSP20TLDNames.PAGE_ENCODING));
    - if (attributes.getIndex(JSP20TLDNames.IS_EL_IGNORED) >= 0)
    - ed.setIsELIgnored(attributes.getValue(JSP20TLDNames.IS_EL_IGNORED));
    - }
    - else if (qName.equals(JSP20Namespace.ElementName.DIRECTIVE_ATTRIBUTE)) {
    - CMAttributeDeclarationImpl attribute = new CMAttributeDeclarationImpl(ed.getOwnerDocument());
    - String nameValue = attributes.getValue(JSP12TLDNames.NAME);
    - attribute.setNodeName(nameValue);
    - if (attributes.getIndex(JSP20TLDNames.FRAGMENT) >= 0)
    - attribute.setFragment(Boolean.valueOf(attributes.getValue(JSP20TLDNames.FRAGMENT)).booleanValue());
    - if (attributes.getIndex(JSP12TLDNames.RTEXPRVALUE) >= 0)
    - attribute.setRtexprvalue(attributes.getValue(JSP12TLDNames.RTEXPRVALUE));
    - if (attributes.getIndex(JSP20TLDNames.TYPE) >= 0)
    - attribute.setType(attributes.getValue(JSP20TLDNames.TYPE));
    - if (attributes.getIndex(JSP12TLDNames.DESCRIPTION) >= 0)
    - attribute.setDescription(attributes.getValue(JSP12TLDNames.DESCRIPTION));
    - if (attributes.getIndex(JSP12TLDNames.REQUIRED) >= 0)
    - attribute.setRequiredString(attributes.getValue(JSP12TLDNames.REQUIRED));
    - if (nameValue != null && nameValue.length() > 0) {
    - ed.fAttributes.setNamedItem(nameValue, attribute);
    - }
    - }
    - else if (qName.equals(JSP20Namespace.ElementName.DIRECTIVE_VARIABLE)) {
    - TLDVariableImpl variable = new TLDVariableImpl();
    - if (attributes.getIndex(JSP12TLDNames.VARIABLE_NAME_GIVEN) >= 0)
    - variable.setNameGiven(attributes.getValue(JSP12TLDNames.VARIABLE_NAME_GIVEN));
    - if (attributes.getIndex(JSP12TLDNames.VARIABLE_NAME_FROM_ATTRIBUTE) >= 0)
    - variable.setNameFromAttribute(attributes.getValue(JSP12TLDNames.VARIABLE_NAME_FROM_ATTRIBUTE));
    - if (attributes.getIndex(JSP20TLDNames.VARIABLE_ALIAS) >= 0)
    - variable.setAlias(attributes.getValue(JSP20TLDNames.VARIABLE_ALIAS));
    - if (attributes.getIndex(JSP12TLDNames.VARIABLE_CLASS) >= 0)
    - variable.setVariableClass(attributes.getValue(JSP12TLDNames.VARIABLE_CLASS));
    - if (attributes.getIndex(JSP12TLDNames.VARIABLE_DECLARE) >= 0)
    - variable.setDeclareString(attributes.getValue(JSP12TLDNames.VARIABLE_DECLARE));
    - if (attributes.getIndex(JSP11Namespace.ATTR_NAME_SCOPE) >= 0)
    - variable.setScope(attributes.getValue(JSP11Namespace.ATTR_NAME_SCOPE));
    - if (attributes.getIndex(JSP12TLDNames.DESCRIPTION) >= 0)
    - variable.setDescription(attributes.getValue(JSP12TLDNames.DESCRIPTION));
    - if (variable.getAlias() != null || variable.getNameFromAttribute() != null || variable.getNameGiven() != null) {
    - ed.getVariables().add(variable);
    - }
    - }
    - else if (qName.equals(JSP11Namespace.ElementName.DIRECTIVE_INCLUDE)) {
    - IPath filePath = null;
    - String text = attributes.getValue(JSP11Namespace.ATTR_NAME_FILE);
    - if (text != null) {
    - filePath = FacetModuleCoreSupport.resolve(new Path(((CMDocumentImpl) ed.getOwnerDocument()).getBaseLocation()), text);
    - IFile includedFile = ResourcesPlugin.getWorkspace().getRoot().getFile(filePath);
    - if (includedFile.isAccessible()) {
    - loadTagXFile(ed, includedFile, false);
    - }
    - }
    - }
    - }
    - });
    - input.close();
    - }
    - catch (ParserConfigurationException e) {
    - Logger.logException(e);
    - }
    - catch (SAXException e) {
    - Logger.logException(e);
    - }
    - catch (IOException e) {
    - Logger.logException(e);
    - }
    - catch (CoreException e) {
    - Logger.logException(e);
    - }
    - ed.setLocationString(tagxFile.getFullPath().toString());
    - }
    -
    - private void loadTagFile(CMElementDeclarationImpl ed, IFile tagFile, boolean allowIncludes) {
    - try {
    - IStructuredDocument document = (IStructuredDocument) new ModelHandlerForJSP().getDocumentLoader().createNewStructuredDocument(tagFile);
    - IStructuredDocumentRegion documentRegion = document.getFirstStructuredDocumentRegion();
    - ed.setPath(tagFile.getFullPath().toString());
    - ed.setTagSource(TLDElementDeclaration.SOURCE_TAG_FILE);
    - while (documentRegion != null) {
    - if (documentRegion.getType().equals(DOMJSPRegionContexts.JSP_DIRECTIVE_NAME)) {
    - if (documentRegion.getNumberOfRegions() > 2) {
    - ITextRegionList regions = documentRegion.getRegions();
    - String directiveName = documentRegion.getText(regions.get(1));
    - if (JSP12TLDNames.TAG.equals(directiveName)) {
    - // 8.5.1
    - String attrName = null;
    - for (int i = 2; i < documentRegion.getNumberOfRegions(); i++) {
    - ITextRegion region = regions.get(i);
    - String text = documentRegion.getText(region);
    - if (region.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME) {
    - attrName = text;
    - }
    - // process value
    - else if (region.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
    - text = StringUtils.strip(text);
    - if (JSP12TLDNames.DISPLAY_NAME.equals(attrName)) {
    - ed.setDisplayName(text);
    - }
    - else if (JSP12TLDNames.BODY_CONTENT.equals(attrName)) {
    - ed.setBodycontent(text);
    - }
    - else if (JSP20TLDNames.DYNAMIC_ATTRIBUTES.equals(attrName)) {
    - ed.setDynamicAttributes(text);
    - }
    - else if (JSP12TLDNames.SMALL_ICON.equals(attrName)) {
    - ed.setSmallIcon(text);
    - }
    - else if (JSP12TLDNames.LARGE_ICON.equals(attrName)) {
    - ed.setLargeIcon(text);
    - }
    - else if (JSP12TLDNames.DESCRIPTION.equals(attrName)) {
    - ed.setDescription(text);
    - }
    - else if (JSP20TLDNames.EXAMPLE.equals(attrName)) {
    - ed.setExample(text);
    - }
    - else if (JSP20TLDNames.SCRIPTING_LANGUAGE.equals(attrName)) {
    - ed.setScriptingLanguage(text);
    - }
    - else if (JSP20TLDNames.IMPORT.equals(attrName)) {
    - ed.setImport(text);
    - }
    - else if (JSP20TLDNames.PAGE_ENCODING.equals(attrName)) {
    - ed.setPageEncoding(text);
    - }
    - else if (JSP20TLDNames.IS_EL_IGNORED.equals(attrName)) {
    - ed.setIsELIgnored(text);
    - }
    - }
    - }
    - }
    - else if (JSP12TLDNames.ATTRIBUTE.equals(directiveName)) {
    - CMAttributeDeclarationImpl attribute = new CMAttributeDeclarationImpl(ed.getOwnerDocument());
    - // 8.5.2
    - String attrName = null;
    - for (int i = 2; i < documentRegion.getNumberOfRegions(); i++) {
    - ITextRegion region = regions.get(i);
    - String text = documentRegion.getText(region);
    - if (region.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME) {
    - attrName = text;
    - }
    - // process value
    - else if (region.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE && attrName != null) {
    - text = StringUtils.strip(text);
    - if (JSP12TLDNames.NAME.equals(attrName)) {
    - attribute.setNodeName(text);
    - }
    - else if (JSP20TLDNames.FRAGMENT.equals(attrName)) {
    - attribute.setFragment(Boolean.valueOf(text).booleanValue());
    - }
    - else if (JSP12TLDNames.RTEXPRVALUE.equals(attrName)) {
    - attribute.setRtexprvalue(text);
    - }
    - else if (JSP20TLDNames.TYPE.equals(attrName)) {
    - attribute.setType(text);
    - }
    - else if (JSP12TLDNames.DESCRIPTION.equals(attrName)) {
    - attribute.setDescription(text);
    - }
    - else if (JSP12TLDNames.REQUIRED.equals(attrName)) {
    - attribute.setRequiredString(text);
    - }
    - }
    - }
    - if (attribute.getNodeName() != null) {
    - ed.fAttributes.setNamedItem(attribute.getNodeName(), attribute);
    - }
    - }
    - else if (JSP12TLDNames.VARIABLE.equals(directiveName)) {
    - TLDVariableImpl variable = new TLDVariableImpl();
    - String attrName = null;
    - for (int i = 2; i < documentRegion.getNumberOfRegions(); i++) {
    - ITextRegion region = regions.get(i);
    - String text = documentRegion.getText(region);
    - if (region.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME) {
    - attrName = text;
    - }
    - // process value
    - else if (region.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE && attrName != null) {
    - text = StringUtils.strip(text);
    - if (JSP12TLDNames.VARIABLE_NAME_GIVEN.equals(attrName)) {
    - variable.setNameGiven(text);
    - }
    - else if (JSP12TLDNames.VARIABLE_NAME_FROM_ATTRIBUTE.equals(attrName)) {
    - variable.setNameFromAttribute(text);
    - }
    - else if (JSP20TLDNames.VARIABLE_ALIAS.equals(attrName)) {
    - variable.setAlias(text);
    - }
    - else if (JSP12TLDNames.VARIABLE_CLASS.equals(attrName)) {
    - variable.setVariableClass(text);
    - }
    - else if (JSP12TLDNames.VARIABLE_DECLARE.equals(attrName)) {
    - variable.setDeclareString(text);
    - }
    - else if (JSP11Namespace.ATTR_NAME_SCOPE.equals(attrName)) {
    - variable.setScope(text);
    - }
    - else if (JSP12TLDNames.DESCRIPTION.equals(attrName)) {
    - variable.setDescription(text);
    - }
    - }
    - }
    - if (variable.getAlias() != null || variable.getNameFromAttribute() != null || variable.getNameGiven() != null) {
    - ed.getVariables().add(variable);
    - }
    - }
    - else if ("include".equals(directiveName) && allowIncludes) {
    - String attrName = null;
    - for (int i = 2; i < documentRegion.getNumberOfRegions(); i++) {
    - ITextRegion region = regions.get(i);
    - String text = documentRegion.getText(region);
    - if (region.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME) {
    - attrName = text;
    - }
    - // process value
    - else if (region.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE && attrName != null) {
    - text = StringUtils.strip(text);
    - if (JSP11Namespace.ATTR_NAME_FILE.equals(attrName)) {
    - IPath filePath = FacetModuleCoreSupport.resolve(new Path(((CMDocumentImpl) ed.getOwnerDocument()).getBaseLocation()), text);
    -
    - IFile includedFile = ResourcesPlugin.getWorkspace().getRoot().getFile(filePath);
    - if (includedFile.isAccessible()) {
    - loadTagFile(ed, includedFile, false);
    - }
    - }
    - }
    - }
    - }
    - }
    - }
    -
    - documentRegion = documentRegion.getNext();
    - }
    -
    - }
    - catch (IOException e) {
    - Logger.logException("problem parsing " + tagFile, e);
    - }
    - catch (CoreException e) {
    - Logger.logException("problem parsing " + tagFile, e);
    - }
    - ed.setLocationString(tagFile.getFullPath().toString());
    - }
    -
    - /**
    - * @param reference
    - * @return
    - */
    - public CMDocument createCMDocument(ITaglibRecord reference) {
    - CMDocumentImpl document = null;
    - switch (reference.getRecordType()) {
    - case (ITaglibRecord.TLD) : {
    - ITLDRecord record = (ITLDRecord) reference;
    - IResource file = ResourcesPlugin.getWorkspace().getRoot().getFile(record.getPath());
    - if (file.getLocation() != null) {
    - document = (CMDocumentImpl) buildCMDocumentFromFile(file.getLocation().toString());
    - document.setLocationString(record.getPath().toString());
    - if (_debug && document != null && document.getElements().getLength() == 0) {
    - System.out.println("failure parsing " + record.getPath()); //$NON-NLS-1$
    - }
    -
    - if (document.getSmallIcon() != null) {
    - String iconPath = URIHelper.normalize(((TLDDocument) document).getSmallIcon(), file.getLocation().toString(), "/"); //$NON-NLS-1$
    - document.setProperty(JSP12TLDNames.SMALL_ICON, "file:" + iconPath); //$NON-NLS-1$
    - }
    - if (document.getLargeIcon() != null) {
    - String iconPath = URIHelper.normalize(((TLDDocument) document).getLargeIcon(), file.getLocation().toString(), "/"); //$NON-NLS-1$
    - document.setProperty(JSP12TLDNames.LARGE_ICON, "file:" + iconPath); //$NON-NLS-1$
    - }
    - }
    - }
    - break;
    - case (ITaglibRecord.JAR) : {
    - IJarRecord record = (IJarRecord) reference;
    - document = (CMDocumentImpl) buildCMDocumentFromJar(record.getLocation().toString());
    - document.setLocationString("jar:file:" + record.getLocation().toString() + "!/META-INF/taglib.tld");
    - if (document.getSmallIcon() != null) {
    - String iconPath = URIHelper.normalize(((TLDDocument) document).getSmallIcon(), record.getLocation().toString() + "!/META-INF/", "/"); //$NON-NLS-1$ //$NON-NLS-2$
    - document.setProperty(JSP12TLDNames.SMALL_ICON, "jar:file:" + iconPath); //$NON-NLS-1$
    - }
    - if (document.getLargeIcon() != null) {
    - String iconPath = URIHelper.normalize(((TLDDocument) document).getLargeIcon(), record.getLocation().toString() + "!/META-INF/", "/"); //$NON-NLS-1$ //$NON-NLS-2$
    - document.setProperty(JSP12TLDNames.LARGE_ICON, "jar:file:" + iconPath); //$NON-NLS-1$
    - }
    - if (document != null && document.getElements().getLength() == 0) {
    - System.out.println("failure parsing " + record.getLocation()); //$NON-NLS-1$
    - }
    - }
    - break;
    - case (ITaglibRecord.TAGDIR) : {
    - ITagDirRecord record = (ITagDirRecord) reference;
    - document = buildCMDocumentFromFolder(record.getPath());
    - }
    - break;
    - case (ITaglibRecord.URL) : {
    - IURLRecord record = (IURLRecord) reference;
    - InputStream urlContents = null;
    - URLConnection connection = null;
    - try {
    - connection = record.getURL().openConnection();
    - if (connection != null) {
    - connection.setUseCaches(false);
    - urlContents = connection.getInputStream();
    - document = (CMDocumentImpl) buildCMDocument(record.getBaseLocation(), urlContents);
    - document.setLocationString(record.getURL().toString());
    - if (document.getSmallIcon() != null) {
    - String iconPath = URIHelper.normalize(((TLDDocument) document).getSmallIcon(), record.getURL().toString(), "/"); //$NON-NLS-1$
    - document.setProperty(JSP12TLDNames.SMALL_ICON, iconPath);
    - }
    - if (document.getLargeIcon() != null) {
    - String iconPath = URIHelper.normalize(((TLDDocument) document).getLargeIcon(), record.getURL().toString(), "/"); //$NON-NLS-1$
    - document.setProperty(JSP12TLDNames.LARGE_ICON, iconPath);
    - }
    - }
    - }
    - catch (IOException e) {
    - // not uncommon given invalid URLs
    - }
    - finally {
    - if (urlContents != null) {
    - try {
    - urlContents.close();
    - }
    - catch (IOException e) {
    - }
    - }
    - }
    - }
    - break;
    - }
    - return document;
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMDocumentImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMDocumentImpl.java
    deleted file mode 100644
    index 936684b651..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMDocumentImpl.java
    +++ /dev/null
    @@ -1,455 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 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.jsp.core.internal.contentmodel.tld;
    -
    -
    -
    -import java.util.ArrayList;
    -import java.util.HashMap;
    -import java.util.Iterator;
    -import java.util.List;
    -import java.util.Map;
    -
    -import org.eclipse.jst.jsp.core.internal.Logger;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDDocument;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDValidator;
    -import org.eclipse.wst.sse.core.utils.StringUtils;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMNamespace;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
    -import org.eclipse.wst.xml.core.internal.contentmodel.ContentModelManager;
    -import org.eclipse.wst.xml.core.internal.contentmodel.annotation.AnnotationMap;
    -import org.eclipse.wst.xml.core.internal.contentmodel.internal.annotation.AnnotationFileInfo;
    -import org.eclipse.wst.xml.core.internal.contentmodel.internal.annotation.AnnotationFileParser;
    -
    -public class CMDocumentImpl implements TLDDocument {
    -
    - /** Contains taginfo and/or any other misc properties*/
    - private AnnotationMap fAnnotationMap = null;
    -
    - private Map fProperties = new HashMap(0);
    -
    - /**
    - * Records from where this document was created
    - */
    - private String fBaseLocation;
    - /**
    - * since JSP 1.2
    - */
    - private String fDescription;
    -
    - private String fDisplayName;
    -
    - /**
    - * NOT public API
    - */
    - public CMNamedNodeMapImpl fElements = new CMNamedNodeMapImpl();
    -
    - private List fFunctions = new ArrayList(0);
    -
    - // id of the taglib
    - private String fId = null;
    - /**
    - * Children of "taglib" within a .tld file each allow
    - * one Text node (#PCDATA) beneath them. Store the values
    - * here for simplicity.
    - */
    - // The JSP specification required for this taglib to function
    - private String fJSPVersion = null;
    -
    - private String fLargeIcon;
    -
    - private List fListeners;
    -
    - private String fParentURI = null;
    - // A short name suggested as the default prefix for tags within the lib
    - private String fShortName = null;
    -
    - private String fSmallIcon;
    -
    - /**
    - * since JSP 2.0
    - *
    - * The entire element is stored here since its layout is undefined
    - */
    - private List fTaglibExtensions = new ArrayList(0);
    -
    - // Version information for the taglib itself
    - private String fTLibVersion = null;
    -
    - // A unique public URI describing this taglib. Recommended to be the URL
    - // to the descriptor
    - private String fURI = null;
    -
    - private String fLocationString;
    -
    - protected TLDValidator validator;
    -
    - /**
    - * CMDocumentImpl constructor comment.
    - */
    - public CMDocumentImpl() {
    - super();
    - }
    -
    - /**
    - * Get the annotation map associated with this document. Lazily creates
    - * and loads annotation map.
    - * @return AnnotationMap
    - */
    - private AnnotationMap getAnnotationMap() {
    - // create a new annotation map and load it up
    - if (fAnnotationMap == null) {
    - fAnnotationMap = new AnnotationMap();
    -
    - List annotationFiles = ContentModelManager.getInstance().getAnnotationFilesInfos(getUri());
    - for (Iterator i = annotationFiles.iterator(); i.hasNext();) {
    - try {
    - AnnotationFileInfo fileInfo = (AnnotationFileInfo) i.next();
    - AnnotationFileParser parser = new AnnotationFileParser();
    - parser.parse(fAnnotationMap, fileInfo);
    - } catch (Exception e) {
    - Logger.log(Logger.WARNING_DEBUG, "Exception thrown in CMDocumentImpl#getAnnotationMap", e); //$NON-NLS-1$
    - }
    - }
    - }
    - return fAnnotationMap;
    - }
    - /**
    - * @return Returns the baseLocation.
    - */
    - public String getBaseLocation() {
    - return fBaseLocation;
    - }
    -
    - /**
    - * Gets the description.
    - * @return Returns a String
    - */
    - public String getDescription() {
    - return fDescription;
    - }
    -
    - /**
    - * Gets the displayName.
    - * @return Returns a String
    - */
    - public String getDisplayName() {
    - return fDisplayName;
    - }
    -
    - /**
    - * getElements method
    - * @return CMNamedNodeMap
    - *
    - * Returns CMNamedNodeMap of ElementDeclaration
    - */
    - public CMNamedNodeMap getElements() {
    - return fElements;
    - }
    -
    - /**
    - * getEntities method
    - * @return CMNamedNodeMap
    - *
    - * Returns CMNamedNodeMap of EntityDeclaration
    - */
    - public CMNamedNodeMap getEntities() {
    - return null;
    - }
    -
    - public List getExtensions() {
    - return fTaglibExtensions;
    - }
    - /**
    - * @return Returns the functions.
    - */
    - public List getFunctions() {
    - return fFunctions;
    - }
    -
    - /**
    - * Gets the id.
    - * @return Returns a String
    - */
    - public String getId() {
    - return fId;
    - }
    -
    - /**
    - *
    - * @return java.lang.String
    - */
    - public String getInfo() {
    - return getDescription();
    - }
    -
    - /**
    - *
    - * @return java.lang.String
    - */
    - public String getJspversion() {
    - return fJSPVersion;
    - }
    -
    - /**
    - * Gets the largeIcon.
    - * @return Returns a String
    - */
    - public String getLargeIcon() {
    - return fLargeIcon;
    - }
    -
    - public List getListeners() {
    - if (fListeners == null)
    - fListeners = new ArrayList();
    - return fListeners;
    - }
    -
    - /**
    - * getNamespace method
    - * @return CMNamespace
    - */
    - public CMNamespace getNamespace() {
    - return null;
    - }
    -
    - /**
    - * getNodeName method
    - * @return java.lang.String
    - */
    - public String getNodeName() {
    - return "#cmdocument"; //$NON-NLS-1$
    - }
    -
    - /**
    - * getNodeType method
    - * @return int
    - *
    - * Returns one of :
    - *
    - */
    - public int getNodeType() {
    - return CMNode.DOCUMENT;
    - }
    - /**
    - * @return Returns the parentURI.
    - */
    - public String getParentURI() {
    - return fParentURI;
    - }
    -
    - /**
    - * getProperty method
    - * @return java.lang.Object
    - *
    - * Returns the object property desciped by the propertyName
    - *
    - */
    - public Object getProperty(String propertyName) {
    - if (propertyName.equals(TLDDocument.CM_KIND)) {
    - return TLDDocument.JSP_TLD;
    - }
    - else if (propertyName.equals("annotationMap")) { //$NON-NLS-1$
    - return getAnnotationMap();
    - }
    - return fProperties.get(propertyName);
    - }
    -
    - /**
    - *
    - * @return java.lang.String
    - */
    - public String getShortname() {
    - return fShortName;
    - }
    -
    - /**
    - * Gets the smallIcon.
    - * @return Returns a String
    - */
    - public String getSmallIcon() {
    - return fSmallIcon;
    - }
    -
    - /**
    - *
    - * @return java.lang.String
    - */
    - public String getTlibversion() {
    - return fTLibVersion;
    - }
    -
    - /**
    - *
    - * @return java.lang.String
    - */
    - public String getUri() {
    - return fURI;
    - }
    -
    - /*
    - * @see TLDDocument#getValidator()
    - */
    - public TLDValidator getValidator() {
    - return validator;
    - }
    - /**
    - * @param baseLocation The baseLocation to set.
    - */
    - public void setBaseLocation(String baseLocation) {
    - fBaseLocation = baseLocation;
    - }
    -
    - /**
    - * Sets the description.
    - * @param description The description to set
    - */
    - public void setDescription(String description) {
    - this.fDescription = description;
    - }
    -
    - /**
    - * Sets the displayName.
    - * @param displayName The displayName to set
    - */
    - public void setDisplayName(String displayName) {
    - this.fDisplayName = displayName;
    - }
    -
    - /**
    - * Sets the id.
    - * @param id The id to set
    - */
    - public void setId(String id) {
    - this.fId = id;
    - }
    -
    - /**
    - *
    - * @param newInfo java.lang.String
    - */
    - public void setInfo(String newInfo) {
    - setDescription(newInfo);
    - }
    -
    - /**
    - *
    - * @param newJspversion java.lang.String
    - */
    - public void setJspversion(String newJspversion) {
    - fJSPVersion = newJspversion;
    - }
    -
    - /**
    - * Sets the largeIcon.
    - * @param largeIcon The largeIcon to set
    - */
    - public void setLargeIcon(String largeIcon) {
    - this.fLargeIcon = largeIcon;
    - }
    -
    - public void setListeners(List listeners) {
    - this.fListeners = listeners;
    - }
    - /**
    - * @param parentURI The parentURI to set.
    - */
    - public void setParentURI(String parentURI) {
    - fParentURI = parentURI;
    - }
    -
    - public void setProperty(String property, Object value) {
    - fProperties.put(property, value);
    - }
    -
    - /**
    - *
    - * @param newShortname java.lang.String
    - */
    - public void setShortname(String newShortname) {
    - fShortName = newShortname;
    - }
    -
    - /**
    - * Sets the smallIcon.
    - * @param smallIcon The smallIcon to set
    - */
    - public void setSmallIcon(String smallIcon) {
    - this.fSmallIcon = smallIcon;
    - }
    -
    - /**
    - *
    - * @param newTlibversion java.lang.String
    - */
    - public void setTlibversion(String newTlibversion) {
    - fTLibVersion = newTlibversion;
    - }
    -
    - /**
    - *
    - * @param newUri java.lang.String
    - */
    - public void setUri(String newUri) {
    - fURI = newUri;
    - }
    -
    - public void setValidator(TLDValidator validator) {
    - this.validator = validator;
    - }
    -
    - /**
    - * supports method
    - * @return boolean
    - *
    - * Returns true if the CMNode supports a specified property
    - *
    - */
    - public boolean supports(String propertyName) {
    - if (TLDDocument.CM_KIND.equals(propertyName) || "annotationMap".equals(propertyName)) //$NON-NLS-1$
    - return true;
    - return fProperties.containsKey(propertyName);
    - }
    -
    - public String toString() {
    - StringBuffer buffer = new StringBuffer();
    - buffer.append(super.toString());
    - buffer.append("\n\t short name:" + StringUtils.escape(getShortname())); //$NON-NLS-1$
    - buffer.append("\n\t display name:" + StringUtils.escape(getDisplayName())); //$NON-NLS-1$
    - buffer.append("\n\t description (info):" + StringUtils.escape(getDescription())); //$NON-NLS-1$
    - buffer.append("\n\t URI:" + StringUtils.escape(getUri())); //$NON-NLS-1$
    - buffer.append("\n\t jsp version:" + StringUtils.escape(getJspversion())); //$NON-NLS-1$
    - buffer.append("\n\t taglib version:" + StringUtils.escape(getTlibversion())); //$NON-NLS-1$
    - buffer.append("\n\t small icon:" + StringUtils.escape(getSmallIcon())); //$NON-NLS-1$
    - buffer.append("\n\t large icon:" + StringUtils.escape(getLargeIcon())); //$NON-NLS-1$
    - if (getValidator() != null)
    - buffer.append("\n\t validator:" + StringUtils.replace(getValidator().toString(), "\n", "\n\t\t")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
    - buffer.append("\n\t listeners:"); //$NON-NLS-1$
    - for (int i = 0; i < getListeners().size(); i++) {
    - buffer.append("\n" + StringUtils.replace(getListeners().get(i).toString(), "\n", "\n\t\t")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
    - }
    - buffer.append("\n\t elements:"); //$NON-NLS-1$
    - CMNamedNodeMap elements = getElements();
    - for (int i = 0; i < elements.getLength(); i++) {
    - buffer.append(StringUtils.replace(elements.item(i).toString(), "\n", "\n\t\t")); //$NON-NLS-1$ //$NON-NLS-2$
    - }
    - return buffer.toString();
    - }
    -
    - public String getLocationString() {
    - return fLocationString;
    - }
    -
    - public void setLocationString(String url) {
    - fLocationString = url;
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMElementDeclarationImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMElementDeclarationImpl.java
    deleted file mode 100644
    index 52d013631c..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMElementDeclarationImpl.java
    +++ /dev/null
    @@ -1,587 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2008 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.jsp.core.internal.contentmodel.tld;
    -
    -
    -
    -import java.util.ArrayList;
    -import java.util.List;
    -
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.JSP11TLDNames;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.JSP12TLDNames;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDDocument;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDElementDeclaration;
    -import org.eclipse.wst.sse.core.utils.StringUtils;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
    -import org.eclipse.wst.xml.core.internal.contentmodel.annotation.AnnotationMap;
    -
    -public class CMElementDeclarationImpl implements TLDElementDeclaration {
    -
    - // optional attributes
    - CMNamedNodeMapImpl fAttributes = new CMNamedNodeMapImpl();
    - // (empty|JSP|tagdependant|scriptless) - optional, defaults to JSP
    - private String bodycontent = JSP11TLDNames.CONTENT_JSP;
    -
    - /**
    - * since JSP 1.2
    - *
    - * Usage information
    - */
    - private String description;
    -
    - /**
    - * since JSP 1.2
    - */
    - private String displayName;
    -
    - private CMDocument fOwnerDocument;
    -
    - private String fPath = null;
    -
    - private List fTagExtensions = new ArrayList(0);
    - /**
    - * since JSP 1.2
    - */
    - private String largeIcon;
    -
    -
    - private int maxOccur = -1;
    - private int minOccur = 0;
    -
    - // required tag name
    - private String nodeName = null;
    -
    - /**
    - * since JSP 1.2
    - */
    - private String smallIcon;
    -
    - // tag handler class - required
    - private String tagclass = null;
    -
    - // tag extra info class (subclass of javax.servlet.jsp.TagExtraInfo) -
    - // optional
    - private String teiclass = null;
    -
    - /**
    - * since JSP 1.2
    - */
    - private List variables;
    -
    - /**
    - * since JSP 2.0
    - */
    - private String fExample;
    - private String fImport;
    - private String fScriptingLanguage;
    - private String fDynamicAttributes;
    - private String fIsELIgnored;
    - private String fPageEncoding;
    - private String fTagSource;
    -
    - private String fLocationString;
    - private String smallIconURL;
    -
    - /**
    - * CMElementDeclarationImpl constructor comment.
    - */
    - public CMElementDeclarationImpl(CMDocument owner) {
    - super();
    - fOwnerDocument = owner;
    - }
    -
    - /**
    - * getAttributes method
    - *
    - * @return CMNamedNodeMap
    - *
    - * Returns CMNamedNodeMap of AttributeDeclaration
    - */
    - public CMNamedNodeMap getAttributes() {
    - return fAttributes;
    - }
    -
    - /**
    - *
    - * @return java.lang.String
    - */
    - public String getBodycontent() {
    - return bodycontent;
    - }
    -
    - /**
    - * getCMContent method
    - *
    - * @return CMContent
    - *
    - * Returns the root node of this element's content model. This can be an
    - * CMElementDeclaration or a CMGroup
    - */
    - public CMContent getContent() {
    - return null;
    - }
    -
    - /**
    - * getContentType method
    - *
    - * @return int
    - *
    - * Returns one of : ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA.
    - */
    - public int getContentType() {
    - if (getBodycontent().equals(JSP11TLDNames.CONTENT_EMPTY))
    - return EMPTY;
    - if (getBodycontent().equals(JSP11TLDNames.CONTENT_TAGDEPENDENT))
    - return PCDATA;
    - else
    - // JSP
    - return ANY;
    - }
    -
    - /**
    - * getDataType method
    - *
    - * @return java.lang.String
    - */
    - public CMDataType getDataType() {
    - return new CMDataTypeImpl(CMDataType.CDATA);
    - }
    -
    - /**
    - * Gets the description.
    - *
    - * @return Returns a String
    - */
    - public String getDescription() {
    - return description;
    - }
    -
    - /**
    - * Gets the displayName.
    - *
    - * @return Returns a String
    - */
    - public String getDisplayName() {
    - return displayName;
    - }
    -
    - /**
    - * getElementName method
    - *
    - * @return java.lang.String
    - */
    - public String getElementName() {
    - return getNodeName();
    - }
    -
    - /**
    - * @return Returns the example.
    - */
    - public String getExample() {
    - return fExample;
    - }
    -
    - /**
    - * @return Returns the extensions.
    - */
    - public List getExtensions() {
    - return fTagExtensions;
    - }
    -
    - /**
    - *
    - * @return java.lang.String
    - */
    - public String getInfo() {
    - return getDescription();
    - }
    -
    - /**
    - * Gets the largeIcon.
    - *
    - * @return Returns a String
    - */
    - public String getLargeIcon() {
    - return largeIcon;
    - }
    -
    - /**
    - * getLocalElements method
    - *
    - * @return CMNamedNodeMap
    - *
    - * Returns a list of locally defined elements.
    - */
    - public CMNamedNodeMap getLocalElements() {
    - return null;
    - }
    -
    - /**
    - * getMaxOccur method
    - *
    - * @return int
    - *
    - * If -1, it's UNBOUNDED.
    - */
    - public int getMaxOccur() {
    - return maxOccur;
    - }
    -
    - /**
    - * getMinOccur method
    - *
    - * @return int
    - *
    - * If 0, it's OPTIONAL. If 1, it's REQUIRED.
    - */
    - public int getMinOccur() {
    - return minOccur;
    - }
    -
    - /**
    - * getNodeName method
    - *
    - * @return java.lang.String
    - */
    - public String getNodeName() {
    - return nodeName;
    - }
    -
    - /**
    - * getNodeType method
    - *
    - * @return int
    - *
    - * Returns one of :
    - *
    - */
    - public int getNodeType() {
    - return CMNode.ELEMENT_DECLARATION;
    - }
    -
    - /**
    - * @return
    - */
    - public CMDocument getOwnerDocument() {
    - return fOwnerDocument;
    - }
    -
    - /**
    - * @return Returns the path.
    - */
    - public String getPath() {
    - return fPath;
    - }
    -
    - /**
    - * getProperty method
    - *
    - * @return java.lang.Object
    - *
    - * Returns the object property described by the propertyName
    - *
    - */
    - public Object getProperty(String propertyName) {
    - if ("tagInfo".equals(propertyName)) { //$NON-NLS-1$
    - return getTagInfo(); // return tag info
    - // bug88336 no need to restore markers
    - // return StringUtils.restoreMarkers(getTagInfo()); // return tag
    - // description
    - }
    - // Bug 155800
    - else if ("name".equals(propertyName)) { //$NON-NLS-1$
    - return getNodeName();
    - }
    - else if ("description".equals(propertyName)) { //$NON-NLS-1$
    - return getDescription();
    - // bug88336 no need to restore markers
    - // return StringUtils.restoreMarkers(getDescription()); // return
    - // tag description
    - }
    - else if (TLDDocument.CM_KIND.equals(propertyName)) {
    - return TLDDocument.JSP_TLD;
    - }
    - else if (TLDElementDeclaration.TAG_SOURCE.equals(propertyName)) {
    - return (fTagSource != null ? fTagSource :TLDElementDeclaration.SOURCE_JSP_TLD);
    - }
    - else if (JSP12TLDNames.SMALL_ICON.equals(propertyName) || JSP12TLDNames.LARGE_ICON.equals(propertyName)) {
    - if (smallIconURL != null) {
    - return smallIconURL;
    - }
    - return getOwnerDocument().getProperty(propertyName);
    - }
    - return null;
    - }
    -
    - /**
    - * Gets the smallIcon.
    - *
    - * @return Returns a String
    - */
    - public String getSmallIcon() {
    - return smallIcon;
    - }
    -
    - String getSmallIconURL() {
    - return smallIconURL;
    - }
    -
    - /**
    - * Returns the XPath of this element (currently just returns the node
    - * name)
    - *
    - * @return
    - */
    - private String getSpec() {
    - return getNodeName();
    - }
    -
    - /**
    - *
    - * @return java.lang.String
    - */
    - public String getTagclass() {
    - return tagclass;
    - }
    -
    - /**
    - * Get the taginfo for this current element
    - *
    - * @return String taginfo if it exists, null otherwise
    - */
    - private String getTagInfo() {
    - if (getOwnerDocument().supports("annotationMap")) { //$NON-NLS-1$
    - AnnotationMap map = (AnnotationMap) getOwnerDocument().getProperty("annotationMap"); //$NON-NLS-1$
    - String spec = getSpec();
    - String result = map.getProperty(spec, "tagInfo"); //$NON-NLS-1$
    - return result;
    - // bug88336 no need to restore markers
    - // return StringUtils.restoreMarkers(result); // return tag info
    - }
    - return null;
    - }
    -
    - /**
    - *
    - * @return java.lang.String
    - */
    - public String getTeiclass() {
    - return teiclass;
    - }
    -
    - /**
    - * Gets the variables.
    - *
    - * @return Returns a List
    - */
    - public List getVariables() {
    - if (variables == null) {
    - variables = new ArrayList();
    - }
    - return variables;
    - }
    -
    - /**
    - *
    - * @param newBodycontent
    - * java.lang.String
    - */
    - public void setBodycontent(String newBodycontent) {
    - bodycontent = newBodycontent;
    - }
    -
    - /**
    - * Sets the description.
    - *
    - * @param description
    - * The description to set
    - */
    - public void setDescription(String description) {
    - this.description = description;
    - }
    -
    - /**
    - * Sets the displayName.
    - *
    - * @param displayName
    - * The displayName to set
    - */
    - public void setDisplayName(String displayName) {
    - this.displayName = displayName;
    - }
    -
    - /**
    - * @param example
    - * The example to set.
    - */
    - public void setExample(String example) {
    - fExample = example;
    - }
    -
    - /**
    - * Sets the largeIcon.
    - *
    - * @param largeIcon
    - * The largeIcon to set
    - */
    - public void setLargeIcon(String largeIcon) {
    - this.largeIcon = largeIcon;
    - }
    -
    - public void setNodeName(String string) {
    - nodeName = string;
    - }
    -
    - /**
    - * @param path
    - * The path to set.
    - */
    - public void setPath(String path) {
    - fPath = path;
    - }
    -
    - /**
    - * Sets the smallIcon.
    - *
    - * @param smallIcon
    - * The smallIcon to set
    - */
    - public void setSmallIcon(String smallIcon) {
    - this.smallIcon = smallIcon;
    - }
    -
    - void setSmallIconURL(String url) {
    - smallIconURL = url;
    - }
    -
    - /**
    - *
    - * @param newTagclass
    - * java.lang.String
    - */
    - public void setTagclass(String newTagclass) {
    - tagclass = newTagclass;
    - }
    -
    - /**
    - *
    - * @param newTagclass
    - * java.lang.String
    - */
    - public void setTagSource(String sourceKind) {
    - fTagSource = sourceKind;
    - }
    -
    - /**
    - *
    - * @param newTeiclass
    - * java.lang.String
    - */
    - public void setTeiclass(String newTeiclass) {
    - teiclass = newTeiclass;
    - }
    -
    - /**
    - * Sets the variables.
    - *
    - * @param variables
    - * The variables to set
    - */
    - public void setVariables(List variables) {
    - this.variables = variables;
    - }
    -
    - /**
    - * supports method
    - *
    - * @return boolean
    - *
    - * Returns true if the CMNode supports a specified property
    - *
    - */
    - public boolean supports(String propertyName) {
    - return propertyName == null || propertyName.equals("tagInfo") || propertyName.equals(JSP12TLDNames.DESCRIPTION) || propertyName.equals(TLDDocument.CM_KIND) || propertyName.equals(JSP12TLDNames.SMALL_ICON) || propertyName.equals(JSP12TLDNames.LARGE_ICON) || propertyName.equals(TLDElementDeclaration.TAG_SOURCE);//$NON-NLS-1$ //$NON-NLS-2$
    - }
    -
    - public String toString() {
    - StringBuffer buffer = new StringBuffer();
    - buffer.append("\n\t " + super.toString()); //$NON-NLS-1$
    - buffer.append("\n\t name:" + StringUtils.escape(getNodeName())); //$NON-NLS-1$
    - buffer.append("\n\t tag class:" + StringUtils.escape(getTagclass())); //$NON-NLS-1$
    - buffer.append("\n\t tei class:" + StringUtils.escape(getTeiclass())); //$NON-NLS-1$
    - buffer.append("\n\t body content:" + StringUtils.escape(getBodycontent())); //$NON-NLS-1$
    - buffer.append("\n\t description (info):" + StringUtils.escape(getDescription())); //$NON-NLS-1$
    - buffer.append("\n\t attributes:"); //$NON-NLS-1$
    - CMNamedNodeMap attributes = getAttributes();
    - for (int i = 0; i < attributes.getLength(); i++) {
    - buffer.append("\n\t\t" + StringUtils.replace(attributes.item(i).toString(), "\n", "\n\t\t")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
    - }
    - buffer.append("\n\t variables:"); //$NON-NLS-1$
    - for (int i = 0; i < getVariables().size(); i++) {
    - buffer.append("\n\t\t" + StringUtils.replace(getVariables().get(i).toString(), "\n", "\n\t\t")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
    - }
    - return buffer.toString();
    - }
    -
    - public String getImport() {
    - return fImport;
    - }
    -
    - public String getScriptingLanguage() {
    - return fScriptingLanguage;
    - }
    -
    - public String getDynamicAttributes() {
    - return fDynamicAttributes;
    - }
    -
    - public void setImport(String import1) {
    - fImport = import1;
    - }
    -
    - public void setScriptingLanguage(String scriptingLanguage) {
    - fScriptingLanguage = scriptingLanguage;
    - }
    -
    - public void setDynamicAttributes(String dynamicAttributes) {
    - fDynamicAttributes = dynamicAttributes;
    - }
    -
    - public String getIsELIgnored() {
    - return fIsELIgnored;
    - }
    -
    - public String getPageEncoding() {
    - return fPageEncoding;
    - }
    -
    - public void setIsELIgnored(String isELIgnored) {
    - fIsELIgnored = isELIgnored;
    - }
    -
    - public void setPageEncoding(String pageEncoding) {
    - fPageEncoding = pageEncoding;
    - }
    -
    - public String getLocationString() {
    - if (fLocationString == null)
    - return ((CMDocumentImpl) fOwnerDocument).getLocationString();
    - return fLocationString;
    - }
    -
    - public void setLocationString(String url) {
    - fLocationString = url;
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMNamedNodeMapImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMNamedNodeMapImpl.java
    deleted file mode 100644
    index b8f378cff7..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMNamedNodeMapImpl.java
    +++ /dev/null
    @@ -1,85 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.contentmodel.tld;
    -
    -
    -
    -import java.util.Hashtable;
    -import java.util.Iterator;
    -
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
    -
    -public class CMNamedNodeMapImpl implements CMNamedNodeMap {
    -
    - public static CMNamedNodeMapImpl EMPTY_NAMED_NODE_MAP = new CMNamedNodeMapImpl();
    - protected Hashtable table = new Hashtable();
    -
    - /**
    - * CMNamedNodeMapImpl constructor comment.
    - */
    - public CMNamedNodeMapImpl() {
    - super();
    - }
    -
    - Hashtable getHashtable() {
    - return table;
    - }
    -
    - /**
    - * getLength method
    - * @return int
    - */
    - public int getLength() {
    - return table.size();
    - }
    -
    - /**
    - * getNamedItem method
    - * @return CMNode
    - * @param name java.lang.String
    - */
    - public CMNode getNamedItem(String name) {
    - return (CMNode) table.get(name);
    - }
    -
    - /**
    - * item method
    - * @return CMNode
    - * @param index int
    - */
    - public CMNode item(int index) {
    - Object result = null;
    - int size = table.size();
    - if (index < size) {
    - Iterator values = iterator();
    - for (int i = 0; i <= index; i++) {
    - result = values.next();
    - }
    - }
    - return (CMNode) result;
    - }
    -
    - public Iterator iterator() {
    - return table.values().iterator();
    - }
    -
    - /**
    - * getNamedItem method
    - * @return
    - * @param name java.lang.String
    - * @param aNode CMNode
    - */
    - public void setNamedItem(String name, CMNode aNode) {
    - if (name != null && aNode != null)
    - table.put(name, aNode);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMNodeListImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMNodeListImpl.java
    deleted file mode 100644
    index 318c61744a..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMNodeListImpl.java
    +++ /dev/null
    @@ -1,63 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.contentmodel.tld;
    -
    -
    -
    -import java.util.ArrayList;
    -import java.util.Collections;
    -import java.util.Iterator;
    -import java.util.List;
    -
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMNodeList;
    -
    -public class CMNodeListImpl implements CMNodeList {
    - static CMNodeListImpl EMPTY_NODE_LIST = new CMNodeListImpl(Collections.EMPTY_LIST);
    - protected List list;
    -
    - public CMNodeListImpl() {
    - this(new ArrayList());
    - }
    -
    - public CMNodeListImpl(List list) {
    - this.list = list;
    - }
    -
    - public void appendItem(CMNode node) {
    - list.add(node);
    - }
    -
    - /**
    - * getLength method
    - * @return int
    - */
    - public int getLength() {
    - return list.size();
    - }
    -
    - public List getList() {
    - return list;
    - }
    -
    - /**
    - * item method
    - * @return CMNode
    - * @param index int
    - */
    - public CMNode item(int index) {
    - return (CMNode) list.get(index);
    - }
    -
    - public Iterator iterator() {
    - return list.iterator();
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDCMDocumentManager.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDCMDocumentManager.java
    deleted file mode 100644
    index b392a68b4a..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDCMDocumentManager.java
    +++ /dev/null
    @@ -1,1091 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 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.jsp.core.internal.contentmodel.tld;
    -
    -import java.io.File;
    -import java.lang.ref.Reference;
    -import java.lang.ref.SoftReference;
    -import java.util.ArrayList;
    -import java.util.HashMap;
    -import java.util.Hashtable;
    -import java.util.Iterator;
    -import java.util.List;
    -import java.util.Map;
    -import java.util.Stack;
    -
    -import org.eclipse.core.resources.IFile;
    -import org.eclipse.core.resources.IFolder;
    -import org.eclipse.core.resources.IResource;
    -import org.eclipse.core.resources.ResourcesPlugin;
    -import org.eclipse.core.runtime.CoreException;
    -import org.eclipse.core.runtime.IPath;
    -import org.eclipse.core.runtime.Platform;
    -import org.eclipse.jst.jsp.core.internal.Logger;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.TaglibController;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.JSP11TLDNames;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.JSP12TLDNames;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.JSP20TLDNames;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDDocument;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDElementDeclaration;
    -import org.eclipse.jst.jsp.core.internal.contenttype.DeploymentDescriptorPropertyCache;
    -import org.eclipse.jst.jsp.core.internal.contenttype.DeploymentDescriptorPropertyCache.PropertyGroup;
    -import org.eclipse.jst.jsp.core.internal.parser.JSPSourceParser;
    -import org.eclipse.jst.jsp.core.internal.provisional.JSP12Namespace;
    -import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
    -import org.eclipse.jst.jsp.core.internal.util.FacetModuleCoreSupport;
    -import org.eclipse.jst.jsp.core.internal.util.FileContentCache;
    -import org.eclipse.jst.jsp.core.internal.util.ZeroStructuredDocumentRegion;
    -import org.eclipse.jst.jsp.core.taglib.IJarRecord;
    -import org.eclipse.jst.jsp.core.taglib.ITLDRecord;
    -import org.eclipse.jst.jsp.core.taglib.ITagDirRecord;
    -import org.eclipse.jst.jsp.core.taglib.ITaglibIndexDelta;
    -import org.eclipse.jst.jsp.core.taglib.ITaglibIndexListener;
    -import org.eclipse.jst.jsp.core.taglib.ITaglibRecord;
    -import org.eclipse.jst.jsp.core.taglib.IURLRecord;
    -import org.eclipse.jst.jsp.core.taglib.TaglibIndex;
    -import org.eclipse.wst.common.uriresolver.internal.provisional.URIResolverPlugin;
    -import org.eclipse.wst.sse.core.internal.ltk.parser.BlockMarker;
    -import org.eclipse.wst.sse.core.internal.ltk.parser.StructuredDocumentRegionHandler;
    -import org.eclipse.wst.sse.core.internal.ltk.parser.StructuredDocumentRegionHandlerExtension;
    -import org.eclipse.wst.sse.core.internal.ltk.parser.TagMarker;
    -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
    -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
    -import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
    -import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionCollection;
    -import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
    -import org.eclipse.wst.sse.core.internal.util.Assert;
    -import org.eclipse.wst.sse.core.internal.util.Debug;
    -import org.eclipse.wst.sse.core.utils.StringUtils;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
    -import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
    -
    -public class TLDCMDocumentManager implements ITaglibIndexListener {
    -
    - protected class DirectiveStructuredDocumentRegionHandler implements StructuredDocumentRegionHandler, StructuredDocumentRegionHandlerExtension {
    - /**
    - * Adds a block tagname (fully namespace qualified) into the list of
    - * block tag names for the parser. The marker
    - * IStructuredDocumentRegion along with position cues during reparses
    - * allow the JSPSourceParser to enable/ignore the tags as blocks.
    - */
    - protected void addBlockTag(String tagnameNS, ITextRegionCollection marker) {
    - if (getParser() == null)
    - return;
    - if (getParser().getBlockMarker(tagnameNS) == null) {
    - getParser().addBlockMarker(new BlockMarker(tagnameNS, marker, DOMRegionContext.BLOCK_TEXT, true, false));
    - if (_debug) {
    - System.out.println("TLDCMDocumentManager added block marker: " + tagnameNS + "@" + marker.getStartOffset()); //$NON-NLS-2$//$NON-NLS-1$
    - }
    - }
    - }
    -
    - protected void addTaglibTracker(String prefix, String uri, IStructuredDocumentRegion anchorStructuredDocumentRegion, CMDocument tldCMDocument) {
    - getTaglibTrackers().add(new TaglibTracker(uri, prefix, tldCMDocument, anchorStructuredDocumentRegion));
    - }
    -
    - /**
    - * Enables a TLD owning the given prefix loaded from the given URI at
    - * the anchorStructuredDocumentRegion. The list of
    - * additionalCMDocuments will claim to not know any of its tags at
    - * positions earlier than that IStructuredDocumentRegion's position.
    - *
    - * For taglib directives, the taglib is the anchor while taglibs
    - * registered through include directives use the parent document's
    - * include directive as their anchor.
    - *
    - * @param prefix
    - * @param uri
    - * @param anchorStructuredDocumentRegion
    - */
    - protected void enableTaglibFromURI(String prefix, String uri, IStructuredDocumentRegion anchorStructuredDocumentRegion) {
    - enableTags(prefix, uri, anchorStructuredDocumentRegion);
    - if (_debug) {
    - System.out.println("TLDCMDocumentManager registered a tracker for " + uri + " with prefix " + prefix); //$NON-NLS-2$//$NON-NLS-1$
    - }
    - }
    -
    - private void enableTags(String prefix, String uri, IStructuredDocumentRegion anchorStructuredDocumentRegion) {
    - if (prefix == null || uri == null || bannedPrefixes.contains(prefix))
    - return;
    - // Try to load the CMDocument for this URI
    - CMDocument tld = getCMDocument(uri);
    - if (tld == null || !(tld instanceof TLDDocument)) {
    - if (_debug) {
    - System.out.println("TLDCMDocumentManager failed to create a CMDocument for " + uri); //$NON-NLS-1$
    - }
    - return;
    - }
    - registerTaglib(prefix, uri, anchorStructuredDocumentRegion, tld);
    - }
    -
    - /**
    - * Enables a TLD owning the given prefix loaded from the given URI at
    - * the anchorStructuredDocumentRegion. The list of
    - * additionalCMDocuments will claim to not know any of its tags at
    - * positions earlier than that IStructuredDocumentRegion's position.
    - *
    - * For taglib directives, the taglib is the anchor while taglibs
    - * registered through include directives use the parent document's
    - * include directive as their anchor.
    - *
    - * @param prefix
    - * @param uri
    - * @param taglibStructuredDocumentRegion
    - */
    - protected void enableTagsInDir(String prefix, String tagdir, IStructuredDocumentRegion anchorStructuredDocumentRegion) {
    - enableTags(prefix, tagdir, anchorStructuredDocumentRegion);
    - if (_debug) {
    - System.out.println("TLDCMDocumentManager registered a tracker for directory" + tagdir + " with prefix " + prefix); //$NON-NLS-2$//$NON-NLS-1$
    - }
    - }
    -
    - protected void processRegionCollection(ITextRegionCollection regionCollection, IStructuredDocumentRegion anchorStructuredDocumentRegion, JSPSourceParser textSource) {
    - /*
    - * Would test > 1, but since we only care if there are 8 (<%@,
    - * taglib, uri, =, where, prefix, =, what) [or 4 for include
    - * directives]
    - */
    - if (regionCollection.getNumberOfRegions() > 4 && regionCollection.getRegions().get(1).getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME) {
    - ITextRegion name = regionCollection.getRegions().get(1);
    - boolean taglibDetected = false;
    - boolean taglibDirectiveDetected = false;
    - boolean includeDetected = false;
    - boolean includeDirectiveDetected = false;
    - int startOffset = regionCollection.getStartOffset(name);
    - int textLength = name.getTextLength();
    -
    - taglibDetected = textSource.regionMatches(startOffset, textLength, JSP12TLDNames.TAGLIB);
    - if (!taglibDetected)
    - taglibDirectiveDetected = textSource.regionMatches(startOffset, textLength, JSP12Namespace.ElementName.DIRECTIVE_TAGLIB);
    - if (!taglibDirectiveDetected)
    - includeDetected = textSource.regionMatches(startOffset, textLength, JSP12TLDNames.INCLUDE);
    - if (!includeDetected)
    - includeDirectiveDetected = textSource.regionMatches(startOffset, textLength, JSP12Namespace.ElementName.DIRECTIVE_INCLUDE);
    - if (taglibDetected || taglibDirectiveDetected) {
    - processTaglib(regionCollection, anchorStructuredDocumentRegion, textSource);
    - }
    - else if (includeDetected || includeDirectiveDetected) {
    - processInclude(regionCollection, anchorStructuredDocumentRegion, textSource);
    - }
    - }
    - else if (regionCollection.getNumberOfRegions() > 1 && DOMRegionContext.XML_TAG_OPEN.equals(regionCollection.getFirstRegion().getType())) {
    - processXMLStartTag(regionCollection, anchorStructuredDocumentRegion, textSource);
    - }
    - }
    -
    - public void nodeParsed(IStructuredDocumentRegion structuredDocumentRegion) {
    - if (!preludesHandled) {
    - handlePreludes();
    - preludesHandled = true;
    - }
    - processRegionCollection(structuredDocumentRegion, structuredDocumentRegion, getParser());
    - }
    -
    - /**
    - * Process an include directive found by the textSource parser and
    - * anchor any taglibs found within at the
    - * anchorStructuredDocumentRegion. Includes use the including file as
    - * the point of reference, not necessarily the "top" file.
    - */
    - protected void processInclude(ITextRegionCollection includeDirectiveCollection, IStructuredDocumentRegion anchorStructuredDocumentRegion, JSPSourceParser textSource) {
    - ITextRegionList regions = includeDirectiveCollection.getRegions();
    - String includedFile = null;
    - boolean isFilename = false;
    - try {
    - for (int i = 2; includedFile == null && i < regions.size(); i++) {
    - ITextRegion region = regions.get(i);
    - if (region.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME) {
    - if (textSource.regionMatches(includeDirectiveCollection.getStartOffset(region), region.getTextLength(), JSP12TLDNames.FILE)) {
    - isFilename = true;
    - }
    - else {
    - isFilename = false;
    - }
    - }
    - else if (isFilename && region.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
    - includedFile = textSource.getText(includeDirectiveCollection.getStartOffset(region), region.getTextLength());
    - isFilename = false;
    - }
    - }
    - }
    - catch (StringIndexOutOfBoundsException sioobExc) {
    - // nothing to be done
    - includedFile = null;
    - }
    -
    - if (fProcessIncludes && includedFile != null) {
    - // strip any extraneous quotes and white space
    - includedFile = StringUtils.strip(includedFile).trim();
    - IPath filePath = null;
    - /*
    - * The resolution of the included fragment should use the file
    - * containing the directive as the base reference, not always
    - * the main JSP being invoked. Verified behavior with Apache
    - * Tomcat 5.5.20.
    - */
    - IPath modelBaseLocation = TaglibController.getLocation(TLDCMDocumentManager.this);
    - if(modelBaseLocation != null) {
    - if (getIncludes().isEmpty())
    - filePath = FacetModuleCoreSupport.resolve(modelBaseLocation, includedFile);
    - else
    - filePath = FacetModuleCoreSupport.resolve((IPath) getIncludes().peek(), includedFile);
    - }
    -
    - // check for "loops"
    - if (filePath != null && !getIncludes().contains(filePath) && !filePath.equals(modelBaseLocation)) {
    - /*
    - * Prevent slow performance when editing scriptlet part of
    - * the JSP by only processing includes if they've been
    - * modified. The IncludeHelper remembers any CMDocuments
    - * created from the files it parses. Caching the URI and
    - * prefix/tagdir allows us to just enable the CMDocument
    - * when the previously parsed files.
    - *
    - * REMAINING PROBLEM: fTLDCMReferencesMap does not map
    - * from a fragment's path and also include all of the CM
    - * references in fragments that *it* includes. The
    - * fragments that it includes won't have its CM references
    - * loaded, but then we'd need to record the URI and
    - * location of the included fragment to resolve them
    - * correctly, modifying enableTaglib() to also take a base
    - * path and resolve the URI appropriately.
    - */
    - if (hasAnyIncludeBeenModified(filePath)) {
    - getIncludes().push(filePath);
    -
    - IncludeHelper includeHelper = new IncludeHelper(anchorStructuredDocumentRegion, getParser());
    - includeHelper.parse(filePath);
    - List references = includeHelper.taglibReferences;
    - fTLDCMReferencesMap.put(filePath, references);
    - for (int i = 0; references != null && i < references.size(); i++) {
    - TLDCMDocumentReference reference = (TLDCMDocumentReference) references.get(i);
    - getParser().addNestablePrefix(new TagMarker(reference.prefix + ":")); //$NON-NLS-1$
    - }
    - /*
    - * TODO: walk up the include hierarchy and add
    - * these references to each of the parents?
    - */
    -
    - getIncludes().pop();
    - }
    - else {
    - // Add from that saved list of uris/prefixes/documents
    - List references = (List) fTLDCMReferencesMap.get(filePath);
    - for (int i = 0; references != null && i < references.size(); i++) {
    - TLDCMDocumentReference reference = (TLDCMDocumentReference) references.get(i);
    - /*
    - * The uri might not be resolved properly if
    - * relative to the JSP fragment.
    - */
    - enableTaglibFromURI(reference.prefix, reference.uri, anchorStructuredDocumentRegion);
    - getParser().addNestablePrefix(new TagMarker(reference.prefix + ":")); //$NON-NLS-1$
    - }
    - }
    - }
    - else if (getIncludes().contains(filePath)) {
    - if (Debug.debugTokenizer)
    - System.out.println("LOOP IN @INCLUDES FOUND: " + filePath); //$NON-NLS-1$
    - }
    - }
    - }
    -
    - protected void processXMLStartTag(ITextRegionCollection startTagRegionCollection, IStructuredDocumentRegion anchorStructuredDocumentRegion, JSPSourceParser textSource) {
    - ITextRegionList regions = startTagRegionCollection.getRegions();
    - String uri = null;
    - String prefix = null;
    - boolean isTaglibValue = false;
    - // skip the first two, they're the open bracket and name
    - for (int i = 2; i < regions.size(); i++) {
    - ITextRegion region = regions.get(i);
    - if (region instanceof ITextRegionCollection) {
    - // Handle nested directives
    - processRegionCollection((ITextRegionCollection) region, anchorStructuredDocumentRegion, textSource);
    - }
    - else {
    - // Handle xmlns:xxx=yyy
    - int regionStartOffset = startTagRegionCollection.getStartOffset(region);
    - int regionTextLength = region.getTextLength();
    - if (region.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME) {
    - if (regionTextLength > XMLNS_LENGTH && textSource.regionMatches(regionStartOffset, XMLNS_LENGTH, XMLNS)) {
    - prefix = textSource.getText(regionStartOffset + XMLNS_LENGTH, regionTextLength - XMLNS_LENGTH);
    - if (!bannedPrefixes.contains(prefix))
    - isTaglibValue = true;
    - }
    - else {
    - prefix = null;
    - isTaglibValue = false;
    - }
    - }
    - else if (isTaglibValue && region.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
    - if (prefix != null && prefix.length() > 0) {
    - uri = textSource.getText(regionStartOffset, regionTextLength);
    - uri = StringUtils.strip(uri);
    - int uriLength = uri.length();
    - if (uri != null && uriLength > 0) {
    - if (uriLength > URN_TLD_LENGTH && uri.startsWith(URN_TLD)) {
    - uri = uri.substring(URN_TLD_LENGTH);
    - }
    - else if (uriLength > URN_TAGDIR_LENGTH && uri.startsWith(URN_TAGDIR)) {
    - uri = uri.substring(URN_TAGDIR_LENGTH);
    - }
    - enableTags(prefix, uri, anchorStructuredDocumentRegion);
    - uri = null;
    - prefix = null;
    - }
    - }
    - }
    - }
    - }
    - }
    -
    - /**
    - * Pulls the URI and prefix from the given taglib directive
    - * IStructuredDocumentRegion and makes sure the tags are known.
    - */
    - protected void processTaglib(ITextRegionCollection taglibDirectiveCollection, IStructuredDocumentRegion anchorStructuredDocumentRegion, JSPSourceParser textSource) {
    - ITextRegionList regions = taglibDirectiveCollection.getRegions();
    - String uri = null;
    - String prefix = null;
    - String tagdir = null;
    - String attrName = null;
    - try {
    - for (int i = 2; i < regions.size(); i++) {
    - ITextRegion region = regions.get(i);
    - // remember attribute name
    - int startOffset = taglibDirectiveCollection.getStartOffset(region);
    - int textLength = region.getTextLength();
    - if (region.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME) {
    - // String name = textSource.getText(startOffset,
    - // textLength);
    - if (textSource.regionMatches(startOffset, textLength, JSP11TLDNames.PREFIX)) {
    - attrName = JSP11TLDNames.PREFIX;
    - }
    - else if (textSource.regionMatches(startOffset, textLength, JSP12TLDNames.URI)) {
    - attrName = JSP11TLDNames.URI;
    - }
    - else if (textSource.regionMatches(startOffset, textLength, JSP20TLDNames.TAGDIR)) {
    - attrName = JSP20TLDNames.TAGDIR;
    - }
    - else {
    - attrName = null;
    - }
    - }
    - // process value
    - else if (region.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
    - if (JSP11TLDNames.PREFIX.equals(attrName))
    - prefix = StringUtils.strip(textSource.getText(startOffset, textLength));
    - else if (JSP11TLDNames.URI.equals(attrName))
    - uri = StringUtils.strip(textSource.getText(startOffset, textLength));
    - else if (JSP20TLDNames.TAGDIR.equals(attrName))
    - tagdir = StringUtils.strip(textSource.getText(startOffset, textLength));
    - }
    - }
    - }
    - catch (StringIndexOutOfBoundsException sioobExc) {
    - // nothing to be done
    - uri = null;
    - prefix = null;
    - }
    - if (uri != null && prefix != null && uri.length() > 0 && prefix.length() > 0) {
    - enableTaglibFromURI(prefix, StringUtils.strip(uri), anchorStructuredDocumentRegion);
    - }
    - else if (tagdir != null && prefix != null && tagdir.length() > 0 && prefix.length() > 0) {
    - enableTagsInDir(StringUtils.strip(prefix), StringUtils.strip(tagdir), anchorStructuredDocumentRegion);
    - }
    - }
    -
    - private void registerTaglib(String prefix, String uri, IStructuredDocumentRegion anchorStructuredDocumentRegion, CMDocument tld) {
    - CMNamedNodeMap elements = tld.getElements();
    - /*
    - * Go through the CMDocument for any tags that must be marked as
    - * block tags starting at the anchoring IStructuredDocumentRegion.
    - * As the document is edited and the IStructuredDocumentRegion
    - * moved around, the block tag enablement will automatically
    - * follow it.
    - */
    - for (int i = 0; i < elements.getLength(); i++) {
    - TLDElementDeclaration ed = (TLDElementDeclaration) elements.item(i);
    - if (ed.getBodycontent() == JSP12TLDNames.CONTENT_TAGDEPENDENT)
    - addBlockTag(prefix + ":" + ed.getNodeName(), anchorStructuredDocumentRegion); //$NON-NLS-1$
    - }
    - /*
    - * Since modifications to StructuredDocumentRegions adjacent to a
    - * taglib directive can cause that IStructuredDocumentRegion to be
    - * reported, filter out any duplicated URIs. When the taglib is
    - * actually modified, a full rebuild will occur and no duplicates
    - * will/should be found.
    - */
    - boolean doTrack = true;
    - List trackers = getTaglibTrackers();
    - for (int i = 0; i < trackers.size(); i++) {
    - TaglibTracker tracker = (TaglibTracker) trackers.get(i);
    - if (tracker.getPrefix().equals(prefix) && tracker.getURI().equals(uri)) {
    - doTrack = false;
    - }
    - }
    - if (doTrack) {
    - addTaglibTracker(prefix, uri, anchorStructuredDocumentRegion, tld);
    - }
    - }
    -
    - private void resetBlockTags() {
    - if (getParser() == null)
    - return;
    - Iterator names = getParser().getBlockMarkers().iterator();
    - while (names.hasNext()) {
    - BlockMarker marker = (BlockMarker) names.next();
    - if (!marker.isGlobal() && marker.getContext() == DOMRegionContext.BLOCK_TEXT) {
    - if (_debug) {
    - System.out.println("TLDCMDocumentManager removing block tag named: " + marker.getTagName()); //$NON-NLS-1$
    - }
    - names.remove();
    - }
    - }
    - }
    -
    - public void resetNodes() {
    - if (Debug.debugTaglibs)
    - System.out.println(getClass().getName() + ": resetting"); //$NON-NLS-1$
    - getIncludes().clear();
    - resetBlockTags();
    - resetTaglibTrackers();
    - }
    -
    - public void setStructuredDocument(IStructuredDocument newDocument) {
    - Assert.isTrue(newDocument != null, "null document"); //$NON-NLS-1$
    - Assert.isTrue(newDocument.getParser() != null, "null document parser"); //$NON-NLS-1$
    - Assert.isTrue(newDocument.getParser() instanceof JSPSourceParser, "can only listen to document with a JSPSourceParser"); //$NON-NLS-1$
    - getSourceParser().removeStructuredDocumentRegionHandler(this);
    - setSourceParser((JSPSourceParser) newDocument.getParser());
    - getSourceParser().addStructuredDocumentRegionHandler(this);
    - }
    - }
    -
    - protected class IncludeHelper extends DirectiveStructuredDocumentRegionHandler {
    - protected IStructuredDocumentRegion fAnchor = null;
    - protected JSPSourceParser fLocalParser = null;
    - protected JSPSourceParser fParentParser = null;
    - List taglibReferences = null;
    -
    - public IncludeHelper(IStructuredDocumentRegion anchor, JSPSourceParser rootParser) {
    - super();
    - fAnchor = anchor;
    - fParentParser = rootParser;
    - taglibReferences = new ArrayList(0);
    - }
    -
    - protected void addTaglibTracker(String prefix, String uri, IStructuredDocumentRegion anchorStructuredDocumentRegion, CMDocument tldCMDocument) {
    - super.addTaglibTracker(prefix, uri, anchorStructuredDocumentRegion, tldCMDocument);
    - TLDCMDocumentReference reference = new TLDCMDocumentReference();
    - reference.prefix = prefix;
    - reference.uri = uri;
    - taglibReferences.add(reference);
    - }
    -
    - protected String getContents(IPath filePath) {
    - return FileContentCache.getInstance().getContents(filePath);
    - }
    -
    - public void nodeParsed(IStructuredDocumentRegion structuredDocumentRegion) {
    - processRegionCollection(structuredDocumentRegion, fAnchor, fLocalParser);
    - }
    -
    - /**
    - * @param path -
    - * the fullpath for the resource to be parsed
    - */
    - void parse(IPath path) {
    - JSPSourceParser p = new JSPSourceParser();
    - fLocalParser = p;
    - String s = getContents(path);
    - // Should we consider preludes on this segment?
    - fLocalParser.addStructuredDocumentRegionHandler(IncludeHelper.this);
    - fLocalParser.reset(s);
    - List blockTags = fParentParser.getBlockMarkers();
    - for (int i = 0; i < blockTags.size(); i++) {
    - BlockMarker marker = (BlockMarker) blockTags.get(i);
    - fLocalParser.addBlockMarker(new BlockMarker(marker.getTagName(), null, marker.getContext(), marker.isCaseSensitive()));
    - }
    - TagMarker[] knownPrefixes = (TagMarker[]) fParentParser.getNestablePrefixes().toArray(new TagMarker[0]);
    - for (int i = 0; i < knownPrefixes.length; i++) {
    - fLocalParser.addNestablePrefix(new TagMarker(knownPrefixes[i].getTagName(), null));
    - }
    - // force parse
    - fLocalParser.getDocumentRegions();
    - fLocalParser = null;
    - }
    -
    - public void resetNodes() {
    - }
    - }
    -
    - /**
    - * An entry in the shared cache map
    - */
    - static class TLDCacheEntry {
    - CMDocument document;
    - long modificationStamp;
    - int referenceCount;
    - }
    -
    - private static class TLDCMDocumentDescriptor {
    - Object cacheKey;
    - CMDocument document;
    -
    - TLDCMDocumentDescriptor() {
    - super();
    - }
    - }
    -
    - private class TLDCMDocumentReference {
    - String prefix;
    - String uri;
    - }
    -
    - static final boolean _debug = "true".equalsIgnoreCase(Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/tldcmdocument/manager")); //$NON-NLS-1$ //$NON-NLS-2$
    - static final boolean _debugCache = "true".equalsIgnoreCase(Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/tldcmdocument/cache")); //$NON-NLS-1$ //$NON-NLS-2$
    - // will hold the prefixes banned by the specification; taglibs may not use
    - // them
    - protected static List bannedPrefixes = null;
    -
    - private static Hashtable fCache = null;
    - final String XMLNS = "xmlns:"; //$NON-NLS-1$
    - final String URN_TAGDIR = "urn:jsptagdir:";
    - final String URN_TLD = "urn:jsptld:";
    -
    - final int XMLNS_LENGTH = XMLNS.length();
    - final int URN_TAGDIR_LENGTH = URN_TAGDIR.length();
    - final int URN_TLD_LENGTH = URN_TLD.length();
    -
    - static {
    - bannedPrefixes = new ArrayList(7);
    - bannedPrefixes.add("jsp"); //$NON-NLS-1$
    - bannedPrefixes.add("jspx"); //$NON-NLS-1$
    - bannedPrefixes.add("java"); //$NON-NLS-1$
    - bannedPrefixes.add("javax"); //$NON-NLS-1$
    - bannedPrefixes.add("servlet"); //$NON-NLS-1$
    - bannedPrefixes.add("sun"); //$NON-NLS-1$
    - bannedPrefixes.add("sunw"); //$NON-NLS-1$
    - }
    -
    - /**
    - * Gets all of the known documents.
    - *
    - * @return Returns a Hashtable of either TLDCacheEntrys or WeakReferences
    - * to TLD CMDocuments
    - */
    - public static Hashtable getSharedDocumentCache() {
    - if (fCache == null) {
    - fCache = new Hashtable();
    - }
    - return fCache;
    - }
    -
    -
    - public static Object getUniqueIdentifier(ITaglibRecord reference) {
    - if (reference == null)
    - return null;
    - Object identifier = null;
    - switch (reference.getRecordType()) {
    - case (ITaglibRecord.TLD) : {
    - ITLDRecord record = (ITLDRecord) reference;
    - identifier = record.getPath();
    - }
    - break;
    - case (ITaglibRecord.JAR) : {
    - IJarRecord record = (IJarRecord) reference;
    - identifier = record.getLocation();
    - }
    - break;
    - case (ITaglibRecord.TAGDIR) : {
    - ITagDirRecord record = (ITagDirRecord) reference;
    - identifier = record.getPath();
    - }
    - break;
    - case (ITaglibRecord.URL) : {
    - IURLRecord record = (IURLRecord) reference;
    - identifier = record.getURL();
    - }
    - break;
    - default :
    - identifier = reference;
    - break;
    - }
    - return identifier;
    - }
    -
    - private CMDocumentFactoryTLD fCMDocumentBuilder = null;
    -
    - private DirectiveStructuredDocumentRegionHandler fDirectiveHandler = null;
    -
    - /**
    - * The locally-know list of CMDocuments
    - */
    - private Hashtable fDocuments = null;
    -
    - // timestamp cache to prevent excessive reparsing
    - // of included files
    - // IPath (filepath) > Long (modification stamp)
    - HashMap fInclude2TimestampMap = new HashMap();
    -
    - private Stack fIncludes = null;
    -
    - private JSPSourceParser fParser = null;
    -
    - private List fTaglibTrackers = null;
    -
    - Map fTLDCMReferencesMap = new HashMap();
    - boolean fProcessIncludes = true;
    - boolean preludesHandled = false;
    -
    - public TLDCMDocumentManager() {
    - super();
    - }
    -
    - public void clearCache() {
    - if (_debugCache) {
    - System.out.println("TLDCMDocumentManager cleared its private CMDocument cache"); //$NON-NLS-1$
    - }
    - for (Iterator iter = getDocuments().keySet().iterator(); iter.hasNext();) {
    - Object key = iter.next();
    - synchronized (getSharedDocumentCache()) {
    - Object o = getSharedDocumentCache().get(key);
    - if (o instanceof TLDCacheEntry) {
    - TLDCacheEntry entry = (TLDCacheEntry) o;
    - entry.referenceCount--;
    - if (entry.referenceCount <= 0) {
    - getSharedDocumentCache().put(key, new SoftReference(entry));
    - }
    - }
    - }
    - }
    - }
    -
    - /**
    - * Derives an unique cache key for the give URI. The URI is "resolved" and
    - * a unique value generated from the result. This ensures that two
    - * different relative references from different files do not have
    - * overlapping TLD records in the shared cache if they don't resolve to
    - * the same TLD.
    - *
    - * @param uri
    - * @return
    - */
    - protected Object getCacheKey(String uri) {
    - ITaglibRecord record = TaglibIndex.resolve(getCurrentParserPath().toString(), uri, false);
    - if (record != null) {
    - return getUniqueIdentifier(record);
    - }
    - String location = URIResolverPlugin.createResolver().resolve(getCurrentBaseLocation().toString(), null, uri);
    - return location;
    - }
    -
    - /**
    - * Return the CMDocument at the uri (cached)
    - */
    - protected CMDocument getCMDocument(String uri) {
    - if (uri == null || uri.length() == 0)
    - return null;
    - String reference = uri;
    - Object cacheKey = getCacheKey(reference);
    - long lastModified = getModificationStamp(reference);
    - CMDocument doc = (CMDocument) getDocuments().get(cacheKey);
    - if (doc == null) {
    - /*
    - * If hasn't been moved into the local table, do so and increment
    - * the count. A local URI reference can be different depending on
    - * the file from which it was referenced. Use a computed key to
    - * keep them straight.
    - */
    - Object o = getSharedDocumentCache().get(cacheKey);
    - if (o != null) {
    - if (o instanceof TLDCacheEntry) {
    - TLDCacheEntry entry = (TLDCacheEntry) o;
    - if (_debugCache) {
    - System.out.println("TLDCMDocument cache hit on " + cacheKey);
    - }
    - if (entry != null && entry.modificationStamp != IResource.NULL_STAMP && entry.modificationStamp >= lastModified) {
    - doc = entry.document;
    - entry.referenceCount++;
    - }
    - else {
    - getSharedDocumentCache().remove(cacheKey);
    - }
    - }
    - else if (o instanceof Reference) {
    - TLDCacheEntry entry = (TLDCacheEntry) ((Reference) o).get();
    - if (entry != null) {
    - if (entry.modificationStamp != IResource.NULL_STAMP && entry.modificationStamp >= lastModified) {
    - doc = entry.document;
    - entry.referenceCount = 1;
    - getSharedDocumentCache().put(cacheKey, entry);
    - }
    - }
    - else {
    - getSharedDocumentCache().remove(cacheKey);
    - }
    - }
    - }
    - /* No document was found cached, create a new one and share it */
    - if (doc == null) {
    - if (_debugCache) {
    - System.out.println("TLDCMDocument cache miss on " + cacheKey);
    - }
    - TLDCMDocumentDescriptor descriptor = loadTaglib(reference);
    - if (descriptor != null) {
    - TLDCacheEntry entry = new TLDCacheEntry();
    - doc = entry.document = descriptor.document;
    - entry.referenceCount = 1;
    - entry.modificationStamp = getModificationStamp(reference);
    - getSharedDocumentCache().put(cacheKey, entry);
    - }
    - }
    - if (doc != null) {
    - getDocuments().put(cacheKey, doc);
    - }
    - }
    - return doc;
    - }
    -
    - private long getModificationStamp(String reference) {
    - ITaglibRecord record = TaglibIndex.resolve(getCurrentParserPath().toString(), reference, false);
    - long modificationStamp = IResource.NULL_STAMP;
    - if (record != null) {
    - switch (record.getRecordType()) {
    - case (ITaglibRecord.TLD) : {
    - IFile tldfile = ResourcesPlugin.getWorkspace().getRoot().getFile(((ITLDRecord) record).getPath());
    - if (tldfile.isAccessible()) {
    - modificationStamp = tldfile.getModificationStamp();
    - }
    - }
    - break;
    - case (ITaglibRecord.JAR) : {
    - File jarfile = new File(((IJarRecord) record).getLocation().toOSString());
    - if (jarfile.exists()) {
    - try {
    - modificationStamp = jarfile.lastModified();
    - }
    - catch (SecurityException e) {
    - modificationStamp = IResource.NULL_STAMP;
    - }
    - }
    - }
    - break;
    - case (ITaglibRecord.TAGDIR) : {
    - IFolder tagFolder = ResourcesPlugin.getWorkspace().getRoot().getFolder(((ITagDirRecord) record).getPath());
    - if (tagFolder.isAccessible()) {
    - IResource[] members;
    - try {
    - members = tagFolder.members();
    - for (int i = 0; i < members.length; i++) {
    - modificationStamp = Math.max(modificationStamp, members[i].getModificationStamp());
    - }
    - }
    - catch (CoreException e) {
    - modificationStamp = IResource.NULL_STAMP;
    - }
    - }
    - }
    - break;
    - case (ITaglibRecord.URL) : {
    - modificationStamp = IResource.NULL_STAMP;
    - }
    - break;
    - default :
    - break;
    - }
    - }
    - return modificationStamp;
    - }
    -
    -
    - /**
    - * Gets the cMDocumentBuilder.
    - *
    - * @return Returns a CMDocumentFactoryTLD, since it has more builder
    - * methods
    - */
    - protected CMDocumentFactoryTLD getCMDocumentBuilder() {
    - if (fCMDocumentBuilder == null)
    - fCMDocumentBuilder = new CMDocumentFactoryTLD();
    - return fCMDocumentBuilder;
    - }
    -
    - public List getCMDocumentTrackers(int offset) {
    - List validDocs = new ArrayList();
    - Iterator alldocs = getTaglibTrackers().iterator();
    - while (alldocs.hasNext()) {
    - TaglibTracker aTracker = (TaglibTracker) alldocs.next();
    - if (aTracker.getStructuredDocumentRegion().getStartOffset() <= offset || offset < 0) {
    - validDocs.add(aTracker);
    - }
    - }
    - return validDocs;
    - }
    -
    - public List getCMDocumentTrackers(String prefix, int offset) {
    - List validDocs = new ArrayList();
    - Iterator alldocs = getTaglibTrackers().iterator();
    - while (alldocs.hasNext()) {
    - TaglibTracker aTracker = (TaglibTracker) alldocs.next();
    - /**
    - * '<' is used to support the immediate use of a custom tag in jspx files
    - */
    - if ((aTracker.getStructuredDocumentRegion().getStartOffset() <= offset || offset < 0) && aTracker.getPrefix().equals(prefix)) {
    - validDocs.add(aTracker);
    - }
    - }
    - return validDocs;
    - }
    -
    - /**
    - * Return the filesystem location in the current parser. This method is
    - * called while recursing through included fragments, so it much check the
    - * include stack. The filesystem location is needed for common URI
    - * resolution in case the Taglib Index doesn't know the URI being loaded.
    - *
    - * @return
    - */
    - IPath getCurrentBaseLocation() {
    - IPath baseLocation = null;
    - IPath path = getCurrentParserPath();
    - baseLocation = ResourcesPlugin.getWorkspace().getRoot().getFile(path).getLocation();
    - if (baseLocation == null) {
    - baseLocation = path;
    - }
    - return baseLocation;
    - }
    -
    - /**
    - * Return the path used in the current parser. This method is called while
    - * recursing through included fragments, so it much check the include
    - * stack.
    - *
    - * @return
    - */
    - IPath getCurrentParserPath() {
    - IPath path = null;
    - if (!getIncludes().isEmpty()) {
    - path = (IPath) getIncludes().peek();
    - }
    - else {
    - path = TaglibController.getLocation(this);
    - }
    -
    - return path;
    - }
    -
    - protected DirectiveStructuredDocumentRegionHandler getDirectiveStructuredDocumentRegionHandler() {
    - if (fDirectiveHandler == null)
    - fDirectiveHandler = new DirectiveStructuredDocumentRegionHandler();
    - return fDirectiveHandler;
    - }
    -
    - /**
    - * Gets the documents.
    - *
    - * @return Returns a java.util.Hashtable
    - */
    - public Hashtable getDocuments() {
    - if (fDocuments == null)
    - fDocuments = new Hashtable();
    - return fDocuments;
    - }
    -
    - /**
    - * Gets the includes.
    - *
    - * @return Returns a Stack
    - */
    - protected Stack getIncludes() {
    - if (fIncludes == null)
    - fIncludes = new Stack();
    - return fIncludes;
    - }
    -
    - JSPSourceParser getParser() {
    - return fParser;
    - }
    -
    - public JSPSourceParser getSourceParser() {
    - return fParser;
    - }
    -
    - public StructuredDocumentRegionHandler getStructuredDocumentRegionHandler() {
    - return getDirectiveStructuredDocumentRegionHandler();
    - }
    -
    - /**
    - *
    - * @return java.util.List
    - */
    - public List getTaglibTrackers() {
    - if (fTaglibTrackers == null)
    - fTaglibTrackers = new ArrayList();
    - return fTaglibTrackers;
    - }
    -
    - void handlePreludes() {
    - IStructuredDocumentRegion anchor = new ZeroStructuredDocumentRegion(null, -1);
    - fProcessIncludes = false;
    -
    - IPath currentPath = getCurrentParserPath();
    - if (currentPath != null) {
    - PropertyGroup[] propertyGroups = DeploymentDescriptorPropertyCache.getInstance().getPropertyGroups(currentPath);
    - for(int k = 0; k < propertyGroups.length; k++) {
    - IPath[] preludes = propertyGroups[k].getIncludePrelude();
    - for (int i = 0; i < preludes.length; i++) {
    - if (!getIncludes().contains(preludes[i]) && !preludes[i].equals(currentPath)) {
    - getIncludes().push(preludes[i]);
    - if (getParser() != null) {
    - IncludeHelper includeHelper = new IncludeHelper(anchor, getParser());
    - includeHelper.parse(preludes[i]);
    - List references = includeHelper.taglibReferences;
    - fTLDCMReferencesMap.put(preludes[i], references);
    - for (int j = 0; j < references.size(); j++) {
    - TLDCMDocumentReference reference = (TLDCMDocumentReference) references.get(j);
    - getParser().addNestablePrefix(new TagMarker(reference.prefix + ":")); //$NON-NLS-1$
    - }
    - }
    - else
    - Logger.log(Logger.WARNING, "Warning: parser text was requested by " + getClass().getName() + " but none was available; taglib support disabled"); //$NON-NLS-1$ //$NON-NLS-2$
    - getIncludes().pop();
    - }
    - }
    - }
    - }
    -
    - fProcessIncludes = true;
    - }
    -
    - /**
    - * @param filePath
    - * the path to check for modification
    - */
    - boolean hasAnyIncludeBeenModified(IPath filePath) {
    - boolean result = false;
    - // check the top level
    - if (hasBeenModified(filePath)) {
    - result = true;
    - }
    - else {
    - // check all includees
    - Iterator iter = fInclude2TimestampMap.keySet().iterator();
    - while (iter.hasNext()) {
    - if (hasBeenModified((IPath) iter.next())) {
    - result = true;
    - break;
    - }
    - }
    - }
    - return result;
    - }
    -
    - /**
    - * @param filename
    - * @return
    - */
    - boolean hasBeenModified(IPath filePath) {
    - boolean result = false;
    - // quick filename/timestamp cache check here...
    - IFile f = null;
    - if (f == null && filePath.segmentCount() > 1) {
    - f = ResourcesPlugin.getWorkspace().getRoot().getFile(filePath);
    - }
    - if (f != null && f.exists()) {
    - Long currentStamp = new Long(f.getModificationStamp());
    - Object o = fInclude2TimestampMap.get(filePath);
    - if (o != null) {
    - Long previousStamp = (Long) o;
    - // stamps don't match, file changed
    - if (currentStamp.longValue() != previousStamp.longValue()) {
    - result = true;
    - // store for next time
    - fInclude2TimestampMap.put(filePath, currentStamp);
    - }
    - }
    - else {
    - // return true, since we've not encountered this file yet.
    - result = true;
    - // store for next time
    - fInclude2TimestampMap.put(filePath, currentStamp);
    - }
    - }
    - return result;
    - }
    -
    - public void indexChanged(ITaglibIndexDelta event) {
    - synchronized (getSharedDocumentCache()) {
    - Iterator values = getSharedDocumentCache().values().iterator();
    - while (values.hasNext()) {
    - Object o = values.next();
    - if (o instanceof Reference) {
    - values.remove();
    - }
    - }
    - }
    - }
    -
    - /**
    - * Loads the taglib from the specified URI. It must point to a valid
    - * taglib descriptor to work.
    - */
    - protected TLDCMDocumentDescriptor loadTaglib(String uri) {
    - TLDCMDocumentDescriptor entry = null;
    - IPath currentPath = getCurrentParserPath();
    - if (currentPath != null) {
    - CMDocument document = null;
    - ITaglibRecord record = TaglibIndex.resolve(currentPath.toString(), uri, false);
    - if (record != null) {
    - document = getCMDocumentBuilder().createCMDocument(record);
    - if (document != null) {
    - entry = new TLDCMDocumentDescriptor();
    - entry.document = document;
    - entry.cacheKey = getUniqueIdentifier(record);
    - }
    - }
    - else {
    - /* Not a very-often used code path (we hope) */
    - IPath currentBaseLocation = getCurrentBaseLocation();
    - if (currentBaseLocation != null) {
    - String location = URIResolverPlugin.createResolver().resolve(currentBaseLocation.toString(), null, uri);
    - if (location != null) {
    - if (_debug) {
    - System.out.println("Loading tags from " + uri + " at " + location); //$NON-NLS-2$//$NON-NLS-1$
    - }
    - document = getCMDocumentBuilder().createCMDocument(location);
    - entry = new TLDCMDocumentDescriptor();
    - entry.document = document;
    - entry.cacheKey = location;
    - }
    - }
    - }
    - }
    - return entry;
    - }
    -
    - protected void resetTaglibTrackers() {
    - if (_debug) {
    - System.out.println("TLDCMDocumentManager cleared its taglib trackers\n"); //$NON-NLS-1$
    - }
    - preludesHandled = false;
    - getTaglibTrackers().clear();
    - }
    -
    - public void setSourceParser(JSPSourceParser parser) {
    - if (fParser != null)
    - fParser.removeStructuredDocumentRegionHandler(getStructuredDocumentRegionHandler());
    - fParser = parser;
    - if (fParser != null)
    - fParser.addStructuredDocumentRegionHandler(getStructuredDocumentRegionHandler());
    - }
    -} \ No newline at end of file
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDFunctionImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDFunctionImpl.java
    deleted file mode 100644
    index 364711bb7e..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDFunctionImpl.java
    +++ /dev/null
    @@ -1,151 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.contentmodel.tld;
    -
    -import java.util.ArrayList;
    -import java.util.List;
    -
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDFunction;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
    -
    -public class TLDFunctionImpl implements TLDFunction {
    - private String fClassName = null;
    - private String fDescription = null;
    - private String fDisplayName = null;
    - private String fExample = null;
    - private List fExtensions = new ArrayList(0);
    - private String fIcon = null;
    - private String fName = null;
    -
    - private CMDocument fOwnerDocument = null;
    - private String fSignature = null;
    -
    - public TLDFunctionImpl(CMDocument owner) {
    - super();
    - fOwnerDocument = owner;
    - }
    -
    - /**
    - * @return Returns the className.
    - */
    - public String getClassName() {
    - return fClassName;
    - }
    - /**
    - * @return Returns the description.
    - */
    - public String getDescription() {
    - return fDescription;
    - }
    -
    - /**
    - * @return Returns the displayName.
    - */
    - public String getDisplayName() {
    - return fDisplayName;
    - }
    -
    - /**
    - * @return Returns the example.
    - */
    - public String getExample() {
    - return fExample;
    - }
    -
    - /**
    - * @return Returns the extensions.
    - */
    - public List getExtensions() {
    - return fExtensions;
    - }
    -
    - /**
    - * @return Returns the icon.
    - */
    - public String getIcon() {
    - return fIcon;
    - }
    -
    - /**
    - * @return Returns the name.
    - */
    - public String getName() {
    - return fName;
    - }
    -
    - /**
    - * @return Returns the ownerDocument.
    - */
    - public CMDocument getOwnerDocument() {
    - return fOwnerDocument;
    - }
    -
    - /**
    - * @return Returns the signature.
    - */
    - public String getSignature() {
    - return fSignature;
    - }
    -
    - /**
    - * @param className
    - * The className to set.
    - */
    - public void setClassName(String className) {
    - fClassName = className;
    - }
    - /**
    - * @param description The description to set.
    - */
    - public void setDescription(String description) {
    - fDescription = description;
    - }
    -
    - /**
    - * @param displayName
    - * The displayName to set.
    - */
    - public void setDisplayName(String displayName) {
    - fDisplayName = displayName;
    - }
    -
    - /**
    - * @param example
    - * The example to set.
    - */
    - public void setExample(String example) {
    - fExample = example;
    - }
    -
    - /**
    - * @param icon
    - * The icon to set.
    - */
    - public void setIcon(String icon) {
    - fIcon = icon;
    - }
    -
    - /**
    - * @param name
    - * The name to set.
    - */
    - public void setName(String name) {
    - fName = name;
    - }
    -
    - /**
    - * @param signature
    - * The signature to set.
    - */
    - public void setSignature(String signature) {
    - fSignature = signature;
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDInitParamImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDInitParamImpl.java
    deleted file mode 100644
    index c1cdfe6d1c..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDInitParamImpl.java
    +++ /dev/null
    @@ -1,64 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2006 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
    - *******************************************************************************/
    -/*
    - * Created on Sep 9, 2003
    - *
    - * To change the template for this generated file go to
    - * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
    - */
    -package org.eclipse.jst.jsp.core.internal.contentmodel.tld;
    -
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDInitParam;
    -import org.eclipse.wst.sse.core.utils.StringUtils;
    -
    -
    -public class TLDInitParamImpl implements TLDInitParam {
    - private String description;
    - private String name;
    - private String value;
    -
    - public TLDInitParamImpl() {
    - super();
    - }
    -
    - public String getDescription() {
    - return description;
    - }
    -
    - public String getName() {
    - return name;
    - }
    -
    - public String getValue() {
    - return value;
    - }
    -
    - public void setDescription(String description) {
    - this.description = description;
    - }
    -
    - public void setName(String name) {
    - this.name = name;
    - }
    -
    - public void setValue(String value) {
    - this.value = value;
    - }
    -
    - public String toString() {
    - StringBuffer buffer = new StringBuffer();
    - buffer.append(super.toString());
    - buffer.append("\n\t name:" + StringUtils.escape(getName())); //$NON-NLS-1$
    - buffer.append("\n\t description:" + StringUtils.escape(getDescription())); //$NON-NLS-1$
    - buffer.append("\n\t value:" + StringUtils.escape(getValue())); //$NON-NLS-1$
    - return buffer.toString();
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDListenerImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDListenerImpl.java
    deleted file mode 100644
    index 24ef99cb2a..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDListenerImpl.java
    +++ /dev/null
    @@ -1,40 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2006 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
    - *******************************************************************************/
    -/*
    - * Created on Sep 9, 2003
    - *
    - * To change the template for this generated file go to
    - * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
    - */
    -package org.eclipse.jst.jsp.core.internal.contentmodel.tld;
    -
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDListener;
    -import org.eclipse.wst.sse.core.utils.StringUtils;
    -
    -
    -public class TLDListenerImpl implements TLDListener {
    - protected String listenerClass;
    -
    - public String getListenerClass() {
    - return listenerClass;
    - }
    -
    - public void setListenerClass(String className) {
    - listenerClass = className;
    - }
    -
    - public String toString() {
    - StringBuffer buffer = new StringBuffer();
    - buffer.append(super.toString());
    - buffer.append("\n\t listener class:" + StringUtils.escape(getListenerClass())); //$NON-NLS-1$
    - return buffer.toString();
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDValidatorImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDValidatorImpl.java
    deleted file mode 100644
    index 446f743949..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDValidatorImpl.java
    +++ /dev/null
    @@ -1,58 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2006 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
    - *******************************************************************************/
    -/*
    - * Created on Sep 9, 2003
    - *
    - * To change the template for this generated file go to
    - * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
    - */
    -package org.eclipse.jst.jsp.core.internal.contentmodel.tld;
    -
    -import java.util.ArrayList;
    -import java.util.List;
    -
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDValidator;
    -import org.eclipse.wst.sse.core.utils.StringUtils;
    -
    -
    -public class TLDValidatorImpl implements TLDValidator {
    - protected List initParams;
    - protected String validatorClass;
    -
    - public List getInitParams() {
    - if (initParams == null)
    - initParams = new ArrayList();
    - return initParams;
    - }
    -
    - public String getValidatorClass() {
    - return validatorClass;
    - }
    -
    - public void setInitParams(List initParams) {
    - this.initParams = initParams;
    - }
    -
    - public void setValidatorClass(String validatorClass) {
    - this.validatorClass = validatorClass;
    - }
    -
    - public String toString() {
    - StringBuffer buffer = new StringBuffer();
    - buffer.append(super.toString());
    - buffer.append("\n\t validator class:" + StringUtils.escape(getValidatorClass())); //$NON-NLS-1$
    - buffer.append("\n\t init-parms:"); //$NON-NLS-1$
    - for (int i = 0; i < getInitParams().size(); i++) {
    - buffer.append("\n" + StringUtils.replace(getInitParams().get(i).toString(), "\n", "\n\t\t")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
    - }
    - return buffer.toString();
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDVariableImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDVariableImpl.java
    deleted file mode 100644
    index ff7b75ce84..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDVariableImpl.java
    +++ /dev/null
    @@ -1,116 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 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.jsp.core.internal.contentmodel.tld;
    -
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.JSP12TLDNames;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDVariable;
    -import org.eclipse.wst.sse.core.utils.StringUtils;
    -
    -
    -public class TLDVariableImpl implements TLDVariable {
    - // optional - defaults to true
    - private boolean declare = true;
    -
    - private String fDescription;
    - // required
    - private String nameFromAttribute;
    - // required
    - private String nameGiven;
    - // optional - defaults to NESTED
    - private String scope = JSP12TLDNames.VARIABLE_SCOPE_NESTED;
    - // required - defaults to a String
    - private String variableClass = "java.lang.String"; //$NON-NLS-1$
    -
    - private String fAlias;
    -
    - public boolean getDeclare() {
    - return declare;
    - }
    -
    - /**
    - * @return Returns the description.
    - */
    - public String getDescription() {
    - return fDescription;
    - }
    -
    - public String getNameFromAttribute() {
    - return nameFromAttribute;
    - }
    -
    - public String getNameGiven() {
    - return nameGiven;
    - }
    -
    - public String getScope() {
    - return scope;
    - }
    -
    - public String getVariableClass() {
    - return variableClass;
    - }
    -
    - public void setDeclare(boolean declare) {
    - this.declare = declare;
    - }
    -
    - public void setDeclareString(String decl) {
    - if (decl != null) {
    - setDeclare(decl.equals(JSP12TLDNames.TRUE) || decl.equals(JSP12TLDNames.YES));
    - }
    - }
    -
    - /**
    - * @param description
    - * The description to set.
    - */
    - public void setDescription(String description) {
    - fDescription = description;
    - }
    -
    - public void setNameFromAttribute(String nameFromAttribute) {
    - this.nameFromAttribute = nameFromAttribute;
    - }
    -
    - public void setNameGiven(String nameGiven) {
    - this.nameGiven = nameGiven;
    - }
    -
    - public void setScope(String scope) {
    - this.scope = scope;
    - }
    -
    - public void setVariableClass(String variableClass) {
    - this.variableClass = variableClass;
    - }
    -
    - public String toString() {
    - StringBuffer buffer = new StringBuffer();
    - buffer.append(super.toString());
    - buffer.append("\n\t name given:" + StringUtils.escape(getNameGiven())); //$NON-NLS-1$
    - buffer.append("\n\t name from attribute:" + StringUtils.escape(getNameFromAttribute())); //$NON-NLS-1$
    - // Boolean.toString(boolean) is introduced in JDK 1.4
    - // buffer.append("\n\t declare:" +
    - // StringUtils.escape(Boolean.toString(getDeclare())));
    - buffer.append("\n\t declare:" + StringUtils.toString(getDeclare())); //$NON-NLS-1$
    - buffer.append("\n\t scope:" + StringUtils.escape(getScope())); //$NON-NLS-1$
    - buffer.append("\n\t variable class:" + StringUtils.escape(getVariableClass())); //$NON-NLS-1$
    - return buffer.toString();
    - }
    -
    - public String getAlias() {
    - return fAlias;
    - }
    -
    - public void setAlias(String alias) {
    - fAlias = alias;
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TaglibTracker.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TaglibTracker.java
    deleted file mode 100644
    index a8351aa300..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TaglibTracker.java
    +++ /dev/null
    @@ -1,41 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.contentmodel.tld;
    -
    -
    -
    -import org.eclipse.jst.jsp.core.internal.contentmodel.CMDocumentWrapperImpl;
    -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
    -import org.eclipse.wst.xml.core.internal.provisional.contentmodel.CMDocumentTracker;
    -
    -/**
    - * TaglibTracker class
    - */
    -public class TaglibTracker extends CMDocumentWrapperImpl implements CMDocumentTracker {
    -
    - private IStructuredDocumentRegion fStructuredDocumentRegion;
    -
    - public TaglibTracker(String newURI, String newPrefix, CMDocument tld, IStructuredDocumentRegion aStructuredDocumentRegion) {
    - super(newURI, newPrefix, tld);
    - fStructuredDocumentRegion = aStructuredDocumentRegion;
    - }
    -
    - public IStructuredDocumentRegion getStructuredDocumentRegion() {
    - return fStructuredDocumentRegion;
    - }
    -
    - public String toString() {
    - if (getStructuredDocumentRegion() != null)
    - return getPrefix() + "@" + getStructuredDocumentRegion().getStartOffset(); //$NON-NLS-1$
    - return super.toString();
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/JSP11TLDNames.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/JSP11TLDNames.java
    deleted file mode 100644
    index c24959a796..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/JSP11TLDNames.java
    +++ /dev/null
    @@ -1,49 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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
    - *******************************************************************************/
    -/*nlsXXX*/
    -package org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional;
    -
    -public interface JSP11TLDNames {
    -
    - String TAGLIB = "taglib"; //$NON-NLS-1$
    -
    - String CONTENT_JSP = "JSP"; //$NON-NLS-1$
    - String CONTENT_EMPTY = "empty"; //$NON-NLS-1$
    - String CONTENT_TAGDEPENDENT = "tagdependent"; //$NON-NLS-1$
    -
    - String TAG = "tag"; //$NON-NLS-1$
    - String JSPVERSION = "jspversion"; //$NON-NLS-1$
    - String TLIBVERSION = "tlibversion"; //$NON-NLS-1$
    - String SHORTNAME = "shortname"; //$NON-NLS-1$
    - String URI = "uri"; //$NON-NLS-1$
    - String URN = "urn"; //$NON-NLS-1$
    - String INFO = "info"; //$NON-NLS-1$
    -
    - String NAME = "name"; //$NON-NLS-1$
    - String TEICLASS = "teiclass"; //$NON-NLS-1$
    - String TAGCLASS = "tagclass"; //$NON-NLS-1$
    - String BODYCONTENT = "bodycontent"; //$NON-NLS-1$
    - String ATTRIBUTE = "attribute"; //$NON-NLS-1$
    -
    - String ID = "id"; //$NON-NLS-1$
    - String REQUIRED = "required"; //$NON-NLS-1$
    - String RTEXPRVALUE = "rtexprvalue"; //$NON-NLS-1$
    -
    - String PREFIX = "prefix"; //$NON-NLS-1$
    -
    - String INCLUDE = "include"; //$NON-NLS-1$
    - String FILE = "file"; //$NON-NLS-1$
    -
    - String TRUE = "true"; //$NON-NLS-1$
    - String FALSE = "false"; //$NON-NLS-1$
    - String YES = "yes"; //$NON-NLS-1$
    - String NO = "no"; //$NON-NLS-1$
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/JSP12TLDNames.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/JSP12TLDNames.java
    deleted file mode 100644
    index 0ab3124d28..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/JSP12TLDNames.java
    +++ /dev/null
    @@ -1,77 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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
    - *******************************************************************************/
    -/*nlsXXX*/
    -package org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional;
    -
    -public interface JSP12TLDNames {
    -
    - String TAGLIB = JSP11TLDNames.TAGLIB;
    -
    - String CONTENT_JSP = JSP11TLDNames.CONTENT_JSP;
    - String CONTENT_EMPTY = JSP11TLDNames.CONTENT_EMPTY;
    - String CONTENT_TAGDEPENDENT = JSP11TLDNames.CONTENT_TAGDEPENDENT;
    -
    - String TAG = JSP11TLDNames.TAG;
    - String JSP_VERSION = "jsp-version"; //$NON-NLS-1$
    - String TLIB_VERSION = "tlib-version"; //$NON-NLS-1$
    - String SHORT_NAME = "short-name"; //$NON-NLS-1$
    - String URI = JSP11TLDNames.URI;
    - String URN = JSP11TLDNames.URN;
    -
    - String NAME = JSP11TLDNames.NAME;
    - String TEI_CLASS = "tei-class"; //$NON-NLS-1$
    - String TAG_CLASS = "tag-class"; //$NON-NLS-1$
    - String BODY_CONTENT = "body-content"; //$NON-NLS-1$
    - String ATTRIBUTE = JSP11TLDNames.ATTRIBUTE;
    -
    - String ID = JSP11TLDNames.ID;
    - String REQUIRED = JSP11TLDNames.REQUIRED;
    - String RTEXPRVALUE = JSP11TLDNames.RTEXPRVALUE;
    -
    - String PREFIX = JSP11TLDNames.PREFIX;
    -
    - String INCLUDE = JSP11TLDNames.INCLUDE;
    - String FILE = JSP11TLDNames.FILE;
    -
    - String TRUE = JSP11TLDNames.TRUE;
    - String FALSE = JSP11TLDNames.FALSE;
    - String YES = JSP11TLDNames.YES;
    - String NO = JSP11TLDNames.NO;
    -
    - /*
    - * @see Eclipse JSP 1.2
    - */
    - String DESCRIPTION = "description"; //$NON-NLS-1$
    - String DISPLAY_NAME = "display-name"; //$NON-NLS-1$
    - String SMALL_ICON = "small-icon"; //$NON-NLS-1$
    - String LARGE_ICON = "large-icon"; //$NON-NLS-1$
    -
    -
    - String VALIDATOR = "validator"; //$NON-NLS-1$
    - String VALIDATOR_CLASS = "validator-class"; //$NON-NLS-1$
    - String VALIDATOR_INIT_PARAM = "init-param"; //$NON-NLS-1$
    - String VALIDATOR_PARAM_NAME = "param-name"; //$NON-NLS-1$
    - String VALIDATOR_PARAM_VALUE = "param-value"; //$NON-NLS-1$
    -
    -
    - String LISTENER = "listener"; //$NON-NLS-1$
    - String LISTENER_CLASS = "listener-class"; //$NON-NLS-1$
    -
    - String VARIABLE = "variable"; //$NON-NLS-1$
    - String VARIABLE_NAME_GIVEN = "name-given"; //$NON-NLS-1$
    - String VARIABLE_NAME_FROM_ATTRIBUTE = "name-from-attribute"; //$NON-NLS-1$
    - String VARIABLE_CLASS = "variable-class"; //$NON-NLS-1$
    - String VARIABLE_DECLARE = "declare"; //$NON-NLS-1$
    - String VARIABLE_SCOPE = "scope"; //$NON-NLS-1$
    - String VARIABLE_SCOPE_NESTED = "NESTED"; //$NON-NLS-1$
    - String VARIABLE_SCOPE_AT_BEGIN = "AT_BEGIN"; //$NON-NLS-1$
    - String VARIABLE_SCOPE_AT_END = "AT_END"; //$NON-NLS-1$
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/JSP20TLDNames.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/JSP20TLDNames.java
    deleted file mode 100644
    index b52ae61d9d..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/JSP20TLDNames.java
    +++ /dev/null
    @@ -1,38 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 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.jsp.core.internal.contentmodel.tld.provisional;
    -
    -/* nlsXXX */
    -public interface JSP20TLDNames extends JSP12TLDNames {
    - String CONTENT_SCRIPTLESS = "scriptless"; //$NON-NLS-1$
    - String EXAMPLE = "example"; //$NON-NLS-1$
    - String FRAGMENT = "fragment"; //$NON-NLS-1$
    - String FUNCTION = "function"; //$NON-NLS-1$
    - String FUNCTION_CLASS = "function-class"; //$NON-NLS-1$
    - String FUNCTION_EXTENSION = "function-extension"; //$NON-NLS-1$
    - String FUNCTION_SIGNATURE = "function-signature"; //$NON-NLS-1$
    - String ICON = "icon"; //$NON-NLS-1$
    - String PATH = "path"; //$NON-NLS-1$
    - String TAG_EXTENSION = "tag-extension"; //$NON-NLS-1$
    - String TAG_FILE = "tag-file"; //$NON-NLS-1$
    -
    - String TAGDIR = "tagdir"; //$NON-NLS-1$
    -
    - String TAGLIB_EXTENSION = "taglib-extension"; //$NON-NLS-1$
    -
    - String DYNAMIC_ATTRIBUTES = "dynamic-attributes"; //$NON-NLS-1$
    - String SCRIPTING_LANGUAGE = "language"; //$NON-NLS-1$
    - String IMPORT = "import"; //$NON-NLS-1$
    - String IS_EL_IGNORED = "isELIgnored"; //$NON-NLS-1$
    - String PAGE_ENCODING = "pageEncoding"; //$NON-NLS-1$
    - String TYPE = "type"; //$NON-NLS-1$
    - String VARIABLE_ALIAS = "alias"; //$NON-NLS-1$
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDAttributeDeclaration.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDAttributeDeclaration.java
    deleted file mode 100644
    index 3f57eeb316..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDAttributeDeclaration.java
    +++ /dev/null
    @@ -1,62 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.contentmodel.tld.provisional;
    -
    -
    -
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
    -
    -/**
    - * Represents an attribute definition from a TLD
    - */
    -public interface TLDAttributeDeclaration extends CMAttributeDeclaration {
    -
    - /**
    - * a description of the attribute
    - * @return String
    - * @see JSP 2.0
    - */
    - String getDescription();
    -
    - /**
    - * the attribute's name
    - * @see JSP 1.1
    - */
    - String getId();
    -
    - CMDocument getOwnerDocument();
    -
    - /**
    - * whether the attribute's value may be dynamically calculated at runtime by an expression
    - * @see JSP 1.1
    - */
    - String getRtexprvalue();
    -
    - /**
    - * the type of the attribute's value
    - * @see JSP 1.2
    - */
    - String getType();
    -
    - /**
    - * whether this attribute is a fragment
    - *
    - * @return boolean
    - */
    - boolean isFragment();
    -
    - /**
    - * if the attribute is required or optional
    - * @see JSP 1.1
    - */
    - boolean isRequired();
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDDocument.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDDocument.java
    deleted file mode 100644
    index 81351e5065..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDDocument.java
    +++ /dev/null
    @@ -1,105 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.contentmodel.tld.provisional;
    -
    -import java.util.List;
    -
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
    -
    -public interface TLDDocument extends CMDocument {
    -
    - String CM_KIND = "Content Model Kind"; //$NON-NLS-1$
    - String JSP_TLD = "JSP Tag Library Descriptor"; //$NON-NLS-1$
    -
    - /**
    - * @see JSP 2.0
    - *
    - * @return
    - */
    - String getBaseLocation();
    -
    - /**
    - * @return String - The contents of the "description" element of a JSP 1.2 tag library descriptor; a simple string describing the "use" of this taglib, should be user discernable.
    - * @see JSP 1.2
    - */
    - String getDescription();
    -
    - /**
    - * @return String - The contents of the "display-name" element of a JSP 1.2 tag library descriptor; it is a short name that is intended to be displayed by tools
    - * @see JSP 1.2
    - */
    - String getDisplayName();
    -
    - /**
    - * @return List - A list of extension elements describing the tag library
    - * @see JSP 2.0
    - */
    - List getExtensions();
    -
    - /**
    - * @return List - A list of TLDFunctions describing the declared functions
    - * @see JSP 2.0
    - */
    - List getFunctions();
    -
    - /**
    - * @return String - The contents of the "info" element of a JSP 1.1 tag library descriptor; a simple string describing the "use" of this taglib, should be user discernable.
    - * @see JSP 1.1
    - */
    - String getInfo();
    -
    - /**
    - * @return String - The version of JSP the tag library depends upon
    - * @see JSP 1.1
    - */
    - String getJspversion();
    -
    - /**
    - * @return String - The contents of the "large-icon" element of a JSP 1.2 tag library descriptor; optional large-icon that can be used by tools
    - * @see JSP 1.2
    - */
    - String getLargeIcon();
    -
    - /**
    - * @see JSP 1.2
    - * @return List - a List of TLDListeners
    - */
    - List getListeners();
    -
    - /**
    - * @return String - A simple default short name that could be used by a JSP authoring tool to create names with a mnemonic value; for example, it may be used as the preferred prefix value in taglib directives
    - * @see JSP 1.1
    - */
    - String getShortname();
    -
    - /**
    - * @return String - The contents of the "small-icon" element of a JSP 1.2 tag library descriptor; optional small-icon that can be used by tools
    - * @see JSP 1.2
    - */
    - String getSmallIcon();
    -
    - /**
    - * @return String - The version of the tag library (it's implementation)
    - * @see JSP 1.1
    - */
    - String getTlibversion();
    -
    - /**
    - * @return String - the URI declared within the descriptor
    - * @see JSP 1.1
    - */
    - String getUri();
    -
    - /**
    - * @see JSP 1.2
    - */
    - TLDValidator getValidator();
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDElementDeclaration.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDElementDeclaration.java
    deleted file mode 100644
    index 10571640a1..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDElementDeclaration.java
    +++ /dev/null
    @@ -1,117 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2008 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.jsp.core.internal.contentmodel.tld.provisional;
    -
    -import java.util.List;
    -
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
    -
    -public interface TLDElementDeclaration extends CMElementDeclaration {
    - String TAG_SOURCE = "Tag Definition Source"; //$NON-NLS-1$
    - String SOURCE_JSP_TLD = "JSP Tag Library Descriptor"; //$NON-NLS-1$
    - String SOURCE_TAG_FILE = "JSP Tag 2.0 File"; //$NON-NLS-1$
    -
    - /**
    - * The body content type
    - *
    - * @see JSP 1.1
    - */
    - String getBodycontent();
    -
    - /**
    - * Optional tag-specific information
    - *
    - * @see JSP 1.2
    - */
    - String getDescription();
    -
    - /**
    - * A short name that is intended to be displayed by tools
    - *
    - * @see JSP 1.2
    - */
    - String getDisplayName();
    -
    - /**
    - * Optional informal description of an example of a use of this tag
    - *
    - * @see JSP 2.0
    - */
    - String getExample();
    -
    - /**
    - * Zero or more extensions that provide extra information about this tag,
    - * for tool consumption
    - *
    - * @see JSP 2.0
    - */
    - List getExtensions();
    -
    - /**
    - * Optional tag-specific information
    - *
    - * @see JSP 1.1
    - */
    - String getInfo();
    -
    - /**
    - * Name of an optional large icon that can be used by tools
    - *
    - * @see JSP 1.2
    - */
    - String getLargeIcon();
    -
    - CMDocument getOwnerDocument();
    -
    - /**
    - * Where to find the .tag file implementing this action, relative to the
    - * root of the web application or the root of the JAR file for a tag
    - * library packaged in a JAR. This must begin with /WEB-INF/tags if the
    - * .tag file resides in the WAR, or /META-INF/tags if the .tag file
    - * resides in a JAR.
    - *
    - *
    - * @return the path to the .tag(x) file as defined in the .tld file, null
    - * if internal to the .tld
    - * @see JSP 2.0
    - */
    - String getPath();
    -
    - /**
    - * Name of an optional small icon that can be used by tools
    - *
    - * @see JSP 1.2
    - */
    - String getSmallIcon();
    -
    - /**
    - * The name of the tag handler class implementing
    - * javax.servlet.jsp.tagext.Tag
    - *
    - * @see JSP 1.1
    - */
    - String getTagclass();
    -
    - /**
    - * The name of an optional subclass of
    - * javax.servlet.jsp.tagext.TagExtraInfo
    - *
    - * @see JSP 1.1
    - */
    - String getTeiclass();
    -
    - /**
    - * @see JSP 1.2
    - * @return List of TLDVariables
    - */
    - List getVariables();
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDFunction.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDFunction.java
    deleted file mode 100644
    index a43e963a5b..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDFunction.java
    +++ /dev/null
    @@ -1,36 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.contentmodel.tld.provisional;
    -
    -import java.util.List;
    -
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
    -
    -public interface TLDFunction {
    -
    - String getClassName();
    -
    - String getDescription();
    -
    - String getDisplayName();
    -
    - String getExample();
    -
    - List getExtensions();
    -
    - String getIcon();
    -
    - String getName();
    -
    - CMDocument getOwnerDocument();
    -
    - String getSignature();
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDInitParam.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDInitParam.java
    deleted file mode 100644
    index fed09aabc6..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDInitParam.java
    +++ /dev/null
    @@ -1,30 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.contentmodel.tld.provisional;
    -
    -
    -/**
    - * A name/value pair as an initialization param along with a description
    - * @see JSP 1.2
    - */
    -public interface TLDInitParam {
    - String getDescription();
    -
    - /**
    - * The param-name element contains the name of a parameter.
    - */
    - String getName();
    -
    - /**
    - * The param-value element contains the name of a parameter.
    - */
    - String getValue();
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDListener.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDListener.java
    deleted file mode 100644
    index 8d6f0e52d5..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDListener.java
    +++ /dev/null
    @@ -1,20 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.contentmodel.tld.provisional;
    -
    -
    -/**
    - * Defines an optional event listener object to be instantiated and registered automatically
    - * @see JSP 1.2
    - */
    -public interface TLDListener {
    - String getListenerClass();
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDValidator.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDValidator.java
    deleted file mode 100644
    index 09ee730515..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDValidator.java
    +++ /dev/null
    @@ -1,27 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.contentmodel.tld.provisional;
    -
    -import java.util.List;
    -
    -
    -/**
    - * Defines an optional validator that can be used to validate the conformance of a JSP page to using this tag library
    - * @see JSP 1.2
    - */
    -public interface TLDValidator {
    - /**
    - * @return List - a List of TLDInitParams
    - */
    - List getInitParams();
    -
    - String getValidatorClass();
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDVariable.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDVariable.java
    deleted file mode 100644
    index 611382c4bc..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/provisional/TLDVariable.java
    +++ /dev/null
    @@ -1,57 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 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.jsp.core.internal.contentmodel.tld.provisional;
    -
    -/**
    - * Information on the scripting variables defined by this tag.
    - *
    - * @see JSP 1.2
    - */
    -public interface TLDVariable {
    -
    - /**
    - * Whether the variable is declared or not, true is the default.
    - */
    - boolean getDeclare();
    -
    - /**
    - * @returnthe the description for this variable
    - */
    - String getDescription();
    -
    - /**
    - * The name of an attribute whose (translation time) value will give the
    - * name of the variable, or null of the name is not to be obtained this
    - * way.
    - */
    - String getNameFromAttribute();
    -
    - /**
    - * The variable name given as a constant, or null of the name is not
    - * specified.
    - */
    - String getNameGiven();
    -
    - /**
    - * The scope of the scripting variable defined.
    - */
    - String getScope();
    -
    - /**
    - * Name of the class of the variable, java.lang.String if null
    - */
    - String getVariableClass();
    -
    - /**
    - * A locally scoped attribute to hold the value of this variable
    - */
    - String getAlias();
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentproperties/JSPFContentProperties.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentproperties/JSPFContentProperties.java
    deleted file mode 100644
    index 2ece904611..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentproperties/JSPFContentProperties.java
    +++ /dev/null
    @@ -1,213 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2006 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.jsp.core.internal.contentproperties;
    -
    -import org.eclipse.core.resources.IProject;
    -import org.eclipse.core.resources.IResource;
    -import org.eclipse.core.resources.ProjectScope;
    -import org.eclipse.core.runtime.CoreException;
    -import org.eclipse.core.runtime.IPath;
    -import org.eclipse.core.runtime.IStatus;
    -import org.eclipse.core.runtime.Platform;
    -import org.eclipse.core.runtime.Status;
    -import org.eclipse.jst.jsp.core.internal.JSPCorePlugin;
    -import org.eclipse.jst.jsp.core.internal.Logger;
    -import org.osgi.service.prefs.BackingStoreException;
    -import org.osgi.service.prefs.Preferences;
    -
    -/**
    - * Properties constants used by JSP Fragments. Clients should only read and
    - * modify the JSP Fragment properties programmatically using this class.
    - *
    - * @since 1.1
    - */
    -public class JSPFContentProperties {
    - static final String JSPCORE_ID = JSPCorePlugin.getDefault().getBundle().getSymbolicName();
    - private static final String PROJECT_KEY = "<project>"; //$NON-NLS-1$
    -
    - /**
    - * A named key that controls the default language for JSP Fragments
    - * <p>
    - * Value is of type <code>String</code>.
    - * </p>
    - *
    - * @since 1.1
    - */
    - public static final String JSPLANGUAGE = "jsp-language"; //$NON-NLS-1$
    - /**
    - * A named key that controls the default content type for JSP Fragments
    - * <p>
    - * Value is of type <code>String</code>.
    - * </p>
    - *
    - * @since 1.1
    - */
    - public static final String JSPCONTENTTYPE = "jsp-content-type"; //$NON-NLS-1$
    - /**
    - * Indicates if JSP fragments should be compiled/validated. JSP fragments
    - * will be validated when true.
    - * <p>
    - * Value is of type <code>String</code>.
    - * </p>
    - *
    - * @since 1.1
    - */
    - public static final String VALIDATE_FRAGMENTS = "validateFragments";//$NON-NLS-1$
    -
    - /**
    - * Generates a preference key based on resourcePath
    - *
    - * @param resourcePath
    - * the path the key will be based off of
    - * @return preference key based on resourcePath (basically the
    - * resourcePath without the filename); PROJECT_KEY if resourcePath
    - * is null
    - */
    - static String getKeyFor(IPath resourcePath) {
    - String key = PROJECT_KEY;
    - if (resourcePath != null && resourcePath.segmentCount() > 1) {
    - key = resourcePath.removeFirstSegments(1).toString();
    - }
    - return key;
    - }
    -
    - /**
    - * Get the preferences node associated with the given project scope and
    - * preference key (subNode) If create is true, the preference node will be
    - * created if one does not already exist
    - *
    - * @param project
    - * the project the preference node is under
    - * @param preferenceKey
    - * the subnode/category the preference node is located in
    - * @param create
    - * if true, a preference node will be created if one does not
    - * already exist
    - * @return Preferences associated with the given project scope and
    - * preference key. null if one could not be found and create is
    - * false
    - */
    - static Preferences getPreferences(IProject project, String preferenceKey, boolean create) {
    - if (create)
    - // create all nodes down to the one we are interested in
    - return new ProjectScope(project).getNode(JSPCORE_ID).node(preferenceKey);
    - // be careful looking up for our node so not to create any nodes as
    - // side effect
    - Preferences node = Platform.getPreferencesService().getRootNode().node(ProjectScope.SCOPE);
    - try {
    - // TODO once bug 90500 is fixed, should be as simple as this:
    - // String path = project.getName() + IPath.SEPARATOR +
    - // ResourcesPlugin.PI_RESOURCES + IPath.SEPARATOR +
    - // ENCODING_PREF_NODE;
    - // return node.nodeExists(path) ? node.node(path) : null;
    - // for now, take the long way
    - if (!node.nodeExists(project.getName()))
    - return null;
    - node = node.node(project.getName());
    - if (!node.nodeExists(JSPCORE_ID))
    - return null;
    - node = node.node(JSPCORE_ID);
    - if (!node.nodeExists(preferenceKey))
    - return null;
    - return node.node(preferenceKey);
    - }
    - catch (BackingStoreException e) {
    - // nodeExists failed
    - Logger.log(Logger.WARNING_DEBUG, "Could not retrieve preference node", e); //$NON-NLS-1$
    - }
    - return null;
    - }
    -
    - /**
    - * Returns the value for the given key in the given context.
    - *
    - * @param key
    - * The property key
    - * @param resource
    - * The current context or <code>null</code> if no context is
    - * available and the workspace setting should be taken. Note
    - * that passing <code>null</code> should be avoided.
    - * @param recurse
    - * whether the parent should be queried till property is found
    - * @return Returns the current value for the key.
    - * @since 1.1
    - */
    - public static String getProperty(String key, IResource resource, boolean recurse) {
    - String val = null;
    - if (resource != null) {
    - IProject project = resource.getProject();
    - if (project != null) {
    - Preferences preferences = getPreferences(project, key, false);
    - if (preferences != null) {
    - val = internalGetProperty(resource, recurse, preferences);
    - }
    - }
    - }
    - // no preferences found - for performance reasons,
    - // short-circuit
    - // lookup by falling back to workspace's default
    - // setting
    - if (val == null && recurse)
    - val = getWorkbenchPreference(key);
    - return val;
    - }
    -
    - private static String getWorkbenchPreference(String key) {
    - return Platform.getPreferencesService().getString(JSPCORE_ID, key, null, null);
    - }
    -
    - private static String internalGetProperty(IResource resource, boolean recurse, Preferences preferences) {
    - String value = preferences.get(getKeyFor(resource.getFullPath()), null);
    - if (value == null && resource != resource.getProject() && recurse) {
    - value = preferences.get(getKeyFor(null), null);
    - }
    -
    - return value;
    - }
    -
    - /**
    - * Sets the value for the given key in the given context.
    - *
    - * @param key
    - * The property key
    - * @param resource
    - * The current context. Note context cannot be
    - * <code>null</code>.
    - * @param value
    - * The value to set for the key. If value is <code>null</code>
    - * the key is removed from properties.
    - * @since 1.1
    - */
    - public static void setProperty(String key, IResource resource, String value) throws CoreException {
    - if (resource != null) {
    - IProject project = resource.getProject();
    - if (project != null) {
    - Preferences preferences = getPreferences(project, key, true);
    - if (value == null || value.trim().length() == 0)
    - preferences.remove(getKeyFor(resource.getFullPath()));
    - else
    - preferences.put(getKeyFor(resource.getFullPath()), value);
    - try {
    - // save changes
    - preferences.flush();
    - }
    - catch (BackingStoreException e) {
    - throw new CoreException(new Status(IStatus.ERROR, JSPCORE_ID, IStatus.ERROR, "Unable to set property", e)); //$NON-NLS-1$
    - }
    - }
    - }
    - // Workbench preference may not be needed so leave out for now
    - // just set a preference in the instance scope
    - // if (!preferenceFound) {
    - // setWorkbenchPreference(key);
    - // }
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentproperties/JSPFContentPropertiesManager.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentproperties/JSPFContentPropertiesManager.java
    deleted file mode 100644
    index d3cd4cff9a..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentproperties/JSPFContentPropertiesManager.java
    +++ /dev/null
    @@ -1,245 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2006 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.jsp.core.internal.contentproperties;
    -
    -import java.util.ArrayList;
    -import java.util.HashSet;
    -import java.util.List;
    -import java.util.Set;
    -
    -import org.eclipse.core.resources.IProject;
    -import org.eclipse.core.resources.IResourceChangeEvent;
    -import org.eclipse.core.resources.IResourceChangeListener;
    -import org.eclipse.core.resources.IResourceDelta;
    -import org.eclipse.core.resources.IResourceStatus;
    -import org.eclipse.core.resources.ResourcesPlugin;
    -import org.eclipse.core.runtime.IProgressMonitor;
    -import org.eclipse.core.runtime.IStatus;
    -import org.eclipse.core.runtime.MultiStatus;
    -import org.eclipse.core.runtime.NullProgressMonitor;
    -import org.eclipse.core.runtime.OperationCanceledException;
    -import org.eclipse.core.runtime.Path;
    -import org.eclipse.core.runtime.Platform;
    -import org.eclipse.core.runtime.Status;
    -import org.eclipse.core.runtime.jobs.Job;
    -import org.eclipse.jst.jsp.core.internal.JSPCoreMessages;
    -import org.eclipse.jst.jsp.core.internal.Logger;
    -import org.eclipse.osgi.util.NLS;
    -import org.osgi.framework.Bundle;
    -import org.osgi.service.prefs.BackingStoreException;
    -import org.osgi.service.prefs.Preferences;
    -
    -public class JSPFContentPropertiesManager {
    - public JSPFContentPropertiesManager() {
    - super();
    - fResourceChangeListener = new ResourceChangeListener();
    - fJob = new ContentPropertiesManagerJob();
    - }
    -
    - private static JSPFContentPropertiesManager _instance = null;
    - private IResourceChangeListener fResourceChangeListener;
    - ContentPropertiesManagerJob fJob;
    -
    - /**
    - * This job implementation is used to allow the resource change listener
    - * to schedule operations that need to modify the workspace.
    - */
    - private class ContentPropertiesManagerJob extends Job {
    - private static final int PROPERTIES_UPDATE_DELAY = 500;
    - private List asyncChanges = new ArrayList();
    -
    - public ContentPropertiesManagerJob() {
    - super(JSPCoreMessages.JSPFContentPropertiesManager_Updating);
    - setSystem(true);
    - setPriority(Job.INTERACTIVE);
    - }
    -
    - public void addChanges(Set newChanges) {
    - if (newChanges.isEmpty())
    - return;
    - synchronized (asyncChanges) {
    - asyncChanges.addAll(newChanges);
    - asyncChanges.notify();
    - }
    - schedule(PROPERTIES_UPDATE_DELAY);
    - }
    -
    - public IProject getNextChange() {
    - synchronized (asyncChanges) {
    - return asyncChanges.isEmpty() ? null : (IProject) asyncChanges.remove(asyncChanges.size() - 1);
    - }
    - }
    -
    - protected IStatus run(IProgressMonitor monitor) {
    - MultiStatus result = new MultiStatus(JSPFContentProperties.JSPCORE_ID, IResourceStatus.FAILED_SETTING_CHARSET, JSPCoreMessages.JSPFContentPropertiesManager_Updating, null);
    - monitor = monitor == null ? new NullProgressMonitor() : monitor;
    - try {
    - monitor.beginTask(JSPCoreMessages.JSPFContentPropertiesManager_Updating, asyncChanges.size());
    - try {
    - IProject next;
    - while ((next = getNextChange()) != null) {
    - // just exit if the system is shutting down or has
    - // been shut down
    - // it is too late to change the workspace at this
    - // point anyway
    - if (Platform.getBundle("org.eclipse.osgi").getState() != Bundle.ACTIVE) //$NON-NLS-1$
    - return Status.OK_STATUS;
    - try {
    - // save the preferences nodes
    - if (next.isAccessible()) {
    - // save content type preferences
    - Preferences projectPrefs = JSPFContentProperties.getPreferences(next, JSPFContentProperties.JSPCONTENTTYPE, false);
    - if (projectPrefs != null)
    - projectPrefs.flush();
    - // save language preferences
    - projectPrefs = JSPFContentProperties.getPreferences(next, JSPFContentProperties.JSPLANGUAGE, false);
    - if (projectPrefs != null)
    - projectPrefs.flush();
    -
    - }
    - }
    - catch (BackingStoreException e) {
    - // we got an error saving
    - String detailMessage = NLS.bind(JSPCoreMessages.JSPFContentPropertiesManager_Problems_Updating, next.getFullPath());
    - result.add(new Status(1 << (IResourceStatus.FAILED_SETTING_CHARSET % 100 / 33), ResourcesPlugin.PI_RESOURCES, IResourceStatus.FAILED_SETTING_CHARSET, detailMessage, e));
    - }
    - }
    - monitor.worked(1);
    - }
    - catch (OperationCanceledException e) {
    - throw e;
    - }
    - }
    - finally {
    - monitor.done();
    - }
    - return result;
    - }
    -
    - /*
    - * (non-Javadoc)
    - *
    - * @see org.eclipse.core.runtime.jobs.Job#shouldRun()
    - */
    - public boolean shouldRun() {
    - synchronized (asyncChanges) {
    - return !asyncChanges.isEmpty();
    - }
    - }
    - }
    -
    - class ResourceChangeListener implements IResourceChangeListener {
    - private void processEntryChanges(IResourceDelta projectDelta, Set projectsToSave) {
    - // check each resource with jsp fragment setting to see if it has
    - // been moved/deleted
    - boolean resourceChanges = false;
    - boolean resourceChanges2 = false;
    -
    - // project affected
    - IProject currentProject = (IProject) projectDelta.getResource();
    -
    - resourceChanges = processPreferences(currentProject, JSPFContentProperties.JSPCONTENTTYPE, projectDelta, projectsToSave);
    - resourceChanges2 = processPreferences(currentProject, JSPFContentProperties.JSPLANGUAGE, projectDelta, projectsToSave);
    -
    - // if there was a preference key change, need to save preferences
    - if (resourceChanges || resourceChanges2)
    - projectsToSave.add(currentProject);
    - }
    -
    - /**
    - * Goes through all the resource-dependent preferences associated with
    - * currentProject & key and updates the preference keys if needed
    - * based on projectDelta
    - *
    - * @param currentProject
    - * current project of the preferences to be looked at
    - * @param key
    - * current key/subcategory of the preferences to be looked
    - * at
    - * @param projectDelta
    - * the changes to process the preference keys against
    - * @param projectsToSave
    - * the projects that need to be updated/saved
    - * @return true if currentProject's preferences were modified
    - */
    - private boolean processPreferences(IProject currentProject, String key, IResourceDelta projectDelta, Set projectsToSave) {
    - boolean resourceChanges = false;
    -
    - // get the project-key preference node
    - Preferences projectPrefs = JSPFContentProperties.getPreferences(currentProject, key, false);
    - if (projectPrefs == null)
    - // no preferences for this project-key, just bail
    - return false;
    - String[] affectedResources;
    - try {
    - affectedResources = projectPrefs.keys();
    - }
    - catch (BackingStoreException e) {
    - // problems with the project scope... we gonna miss the
    - // changes (but will log)
    - Logger.log(Logger.WARNING_DEBUG, "Problem retreiving JSP Fragment preferences", e); //$NON-NLS-1$
    - return false;
    - }
    -
    - // go through each preference key (which is really a file name)
    - for (int i = 0; i < affectedResources.length; i++) {
    - // see if preference key/file name was file that was changed
    - IResourceDelta memberDelta = projectDelta.findMember(new Path(affectedResources[i]));
    - // no changes for the given resource
    - if (memberDelta == null)
    - continue;
    - if (memberDelta.getKind() == IResourceDelta.REMOVED) {
    - resourceChanges = true;
    - // remove the setting for the original location
    - String currentValue = projectPrefs.get(affectedResources[i], null);
    - projectPrefs.remove(affectedResources[i]);
    - if ((memberDelta.getFlags() & IResourceDelta.MOVED_TO) != 0) {
    - // if moving, copy the setting for the new location
    - IProject targetProject = ResourcesPlugin.getWorkspace().getRoot().getProject(memberDelta.getMovedToPath().segment(0));
    - Preferences targetPrefs = JSPFContentProperties.getPreferences(targetProject, key, true);
    - targetPrefs.put(JSPFContentProperties.getKeyFor(memberDelta.getMovedToPath()), currentValue);
    - if (targetProject != currentProject)
    - projectsToSave.add(targetProject);
    - }
    - }
    - }
    - return resourceChanges;
    - }
    -
    - /**
    - * For any change to the encoding file or any resource with encoding
    - * set, just discard the cache for the corresponding project.
    - */
    - public void resourceChanged(IResourceChangeEvent event) {
    - IResourceDelta delta = event.getDelta();
    - if (delta == null)
    - return;
    - IResourceDelta[] projectDeltas = delta.getAffectedChildren();
    - // process each project in the delta
    - Set projectsToSave = new HashSet();
    - for (int i = 0; i < projectDeltas.length; i++)
    - // nothing to do if a project has been added/removed/moved
    - if (projectDeltas[i].getKind() == IResourceDelta.CHANGED && (projectDeltas[i].getFlags() & IResourceDelta.OPEN) == 0)
    - processEntryChanges(projectDeltas[i], projectsToSave);
    - fJob.addChanges(projectsToSave);
    - }
    - }
    -
    - public synchronized static void startup() {
    - _instance = new JSPFContentPropertiesManager();
    - ResourcesPlugin.getWorkspace().addResourceChangeListener(_instance.fResourceChangeListener, IResourceChangeEvent.POST_CHANGE);
    - }
    -
    - public synchronized static void shutdown() {
    - ResourcesPlugin.getWorkspace().removeResourceChangeListener(_instance.fResourceChangeListener);
    - _instance = null;
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/BooleanStack.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/BooleanStack.java
    deleted file mode 100644
    index 6c1db58443..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/BooleanStack.java
    +++ /dev/null
    @@ -1,112 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2009 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.jsp.core.internal.contenttype;
    -
    -/*
    - *
    - * A non-resizable class implementing the behavior of java.util.Stack, but
    - * directly for the <code> boolean </code> primitive.
    - */
    -import java.util.EmptyStackException;
    -
    -public class BooleanStack {
    - private boolean[] list = null;
    -
    - private int size = 0;
    -
    - /**
    - * This field is not meant to be modified by anyone! In a typical document, tags should not
    - * be embedded to such a depth that it would cause a stack overflow. Three tests in JSPTokenizerTest (test144807_*)
    - * create embedded tags up to a depth of 400. Because of this test, we allow for modification of the maxDepth as a
    - * static field before the JSPTokenizer is created.
    - *
    - * Changing this value can impact the tokenizing of a JSP file!
    - */
    - public static int maxDepth = 100;
    -
    - public BooleanStack() {
    - this(maxDepth);
    - }
    -
    - public BooleanStack(int maxdepth) {
    - super();
    - list = new boolean[maxdepth];
    - initialize();
    - }
    -
    - public void clear() {
    - initialize();
    - }
    -
    - public boolean empty() {
    - return size == 0;
    - }
    -
    - public boolean get(int slot) {
    - return list[slot];
    - }
    -
    - private void initialize() {
    - for (int i = 0; i < list.length; i++)
    - list[i] = false;
    - }
    -
    - /**
    - * Returns the boolean at the top of the stack without removing it
    - *
    - * @return boolean at the top of this stack.
    - * @exception EmptyStackException
    - * when empty.
    - */
    - public boolean peek() {
    - if (size == 0)
    - throw new EmptyStackException();
    - return list[size - 1];
    - }
    -
    - /**
    - * Removes and returns the boolean at the top of the stack
    - *
    - * @return boolean at the top of this stack.
    - * @exception EmptyStackException
    - * when empty.
    - */
    - public boolean pop() {
    - boolean value = peek();
    - list[size - 1] = false;
    - size--;
    - return value;
    - }
    -
    - /**
    - * Pushes an item onto the top of this stack.
    - *
    - * @param newValue -
    - * the boolean to be pushed onto this stack.
    - * @return the <code>newValue</code> argument.
    - */
    - public boolean push(boolean newValue) {
    - if (size == list.length) {
    - throw new StackOverflowError();
    - }
    - list[size++] = newValue;
    - return newValue;
    - }
    -
    - public int size() {
    - return list.length;
    - }
    -
    - public static void setMaxDepth(int depth) {
    -
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/ByteReader.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/ByteReader.java
    deleted file mode 100644
    index c91119ee6c..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/ByteReader.java
    +++ /dev/null
    @@ -1,109 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2001, 2005 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
    - * Jens Lukowski/Innoopract - initial renaming/restructuring
    - *
    - *******************************************************************************/
    -package org.eclipse.jst.jsp.core.internal.contenttype;
    -
    -import java.io.IOException;
    -import java.io.InputStream;
    -import java.io.Reader;
    -
    -import org.eclipse.wst.sse.core.internal.encoding.CodedIO;
    -
    -/**
    - * This is an "adapter" class, simply to get in input stream to act like a
    - * reader. We could not use InputStreamReader directly because its internal
    - * buffers are not controllable, and it sometimes pulls too much out of input
    - * stream (even when it wasn't needed for our purposes).
    - *
    - * The use of this class is highly specialized and by not means meant to be
    - * general purpose. Its use is restricted to those cases where the input
    - * stream can be regarded as ascii just long enough to determine what the real
    - * encoding should be.
    - */
    -
    -public class ByteReader extends Reader {
    -
    -
    - public static final int DEFAULT_BUFFER_SIZE = CodedIO.MAX_BUF_SIZE;
    -
    - protected byte[] fBuffer;
    -
    - protected InputStream fInputStream;
    -
    - protected ByteReader() {
    - super();
    - }
    -
    - public ByteReader(InputStream inputStream) {
    - this(inputStream, DEFAULT_BUFFER_SIZE);
    - if (!inputStream.markSupported()) {
    - throw new IllegalArgumentException("ByteReader is required to have a resettable stream"); //$NON-NLS-1$
    - }
    - }
    -
    - public ByteReader(InputStream inputStream, int size) {
    - this.fInputStream = inputStream;
    - if (!inputStream.markSupported()) {
    - throw new IllegalArgumentException("ByteReader is required to have a resettable stream"); //$NON-NLS-1$
    - }
    - this.fBuffer = new byte[size];
    -
    - }
    -
    - public void close() throws IOException {
    - this.fInputStream.close();
    - }
    -
    - public void mark(int readAheadLimit) {
    - this.fInputStream.mark(readAheadLimit);
    - }
    -
    - public boolean markSupported() {
    - return true;
    - }
    -
    - public int read() throws IOException {
    - int b0 = this.fInputStream.read();
    - return (b0 & 0x00FF);
    - }
    -
    - public int read(char ch[], int offset, int length) throws IOException {
    - if (length > this.fBuffer.length) {
    - length = this.fBuffer.length;
    - }
    -
    - int count = this.fInputStream.read(this.fBuffer, 0, length);
    -
    - for (int i = 0; i < count; i++) {
    - int b0 = this.fBuffer[i];
    - // the 0x00FF is to "lose" the negative bits filled in the byte to
    - // int conversion
    - // (and which would be there if cast directly from byte to char).
    - char c0 = (char) (b0 & 0x00FF);
    - ch[offset + i] = c0;
    - }
    - return count;
    - }
    -
    - public boolean ready() throws IOException {
    - return this.fInputStream.available() > 0;
    - }
    -
    - public void reset() throws IOException {
    - this.fInputStream.reset();
    - }
    -
    - public long skip(long n) throws IOException {
    - return this.fInputStream.skip(n);
    - }
    -
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/ContentDescriberForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/ContentDescriberForJSP.java
    deleted file mode 100644
    index 47ec7b919b..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/ContentDescriberForJSP.java
    +++ /dev/null
    @@ -1,253 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004-2006 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.jsp.core.internal.contenttype;
    -
    -import java.io.IOException;
    -import java.io.InputStream;
    -import java.io.Reader;
    -
    -import org.eclipse.core.runtime.QualifiedName;
    -import org.eclipse.core.runtime.content.IContentDescriber;
    -import org.eclipse.core.runtime.content.IContentDescription;
    -import org.eclipse.core.runtime.content.ITextContentDescriber;
    -import org.eclipse.jst.jsp.core.internal.provisional.contenttype.IContentDescriptionForJSP;
    -import org.eclipse.wst.html.core.internal.provisional.contenttype.ContentTypeFamilyForHTML;
    -import org.eclipse.wst.sse.core.internal.encoding.EncodingMemento;
    -import org.eclipse.wst.sse.core.internal.encoding.IContentDescriptionExtended;
    -import org.eclipse.wst.sse.core.internal.encoding.IResourceCharsetDetector;
    -
    -public final class ContentDescriberForJSP implements ITextContentDescriber {
    - private final static QualifiedName[] SUPPORTED_OPTIONS = {IContentDescription.CHARSET, IContentDescription.BYTE_ORDER_MARK, IContentDescriptionExtended.DETECTED_CHARSET, IContentDescriptionExtended.UNSUPPORTED_CHARSET, IContentDescriptionExtended.APPROPRIATE_DEFAULT, IContentDescriptionForJSP.CONTENT_TYPE_ATTRIBUTE, IContentDescriptionForJSP.LANGUAGE_ATTRIBUTE, IContentDescriptionForJSP.CONTENT_FAMILY_ATTRIBUTE};
    -
    - /*
    - * (non-Javadoc)
    - *
    - * @see org.eclipse.core.runtime.content.IContentDescriber#describe(java.io.InputStream,
    - * org.eclipse.core.runtime.content.IContentDescription)
    - */
    - public int describe(InputStream contents, IContentDescription description) throws IOException {
    - int result = IContentDescriber.INVALID;
    -
    - // if discription is null, we are just being asked to
    - // assess contents validity
    - if (description != null) {
    - result = calculateSupportedOptions(contents, description);
    - }
    - else {
    - result = determineValidity(contents);
    - }
    -
    - return result;
    - }
    -
    - private int determineValidity(InputStream contents) {
    - // There's little to prove, via contents, that
    - // a file is JSP, so always return interminant, and
    - // let filetypes decide.
    - return IContentDescriber.INDETERMINATE;
    - }
    -
    - /*
    - * (non-Javadoc)
    - *
    - * @see org.eclipse.core.runtime.content.ITextContentDescriber#describe(java.io.Reader,
    - * org.eclipse.core.runtime.content.IContentDescription)
    - */
    - public int describe(Reader contents, IContentDescription description) throws IOException {
    - int result = IContentDescriber.INVALID;
    -
    - // if discription is null, we are just being asked to
    - // assess contents validity
    - if (description != null) {
    - result = calculateSupportedOptions(contents, description);
    - }
    - else {
    - result = determineValidity(contents);
    - }
    -
    - return result;
    - }
    -
    - private int determineValidity(Reader contents) {
    - // There's little to prove, via contents, that
    - // a file is JSP, so always return interminant, and
    - // let filetypes decide.
    - return IContentDescriber.INDETERMINATE;
    - }
    -
    - public QualifiedName[] getSupportedOptions() {
    - return SUPPORTED_OPTIONS;
    - }
    -
    - private int calculateSupportedOptions(InputStream contents, IContentDescription description) throws IOException {
    - int result = IContentDescriber.INDETERMINATE;
    - if (isRelevent(description)) {
    - IResourceCharsetDetector detector = getDetector();
    - detector.set(contents);
    - handleCalculations(description, detector);
    - result = IContentDescriber.VALID;
    - }
    - return result;
    - }
    -
    - /**
    - * @param contents
    - * @param description
    - * @throws IOException
    - */
    - private int calculateSupportedOptions(Reader contents, IContentDescription description) throws IOException {
    - int result = IContentDescriber.INDETERMINATE;
    - if (isRelevent(description)) {
    - IResourceCharsetDetector detector = getDetector();
    - detector.set(contents);
    - handleCalculations(description, detector);
    - result = IContentDescriber.VALID;
    - }
    - return result;
    - }
    -
    - private IResourceCharsetDetector getDetector() {
    - return new JSPResourceEncodingDetector();
    - }
    -
    - private void handleCalculations(IContentDescription description, IResourceCharsetDetector detector) throws IOException {
    - // handle standard ones first, to be sure detector processes
    - handleStandardCalculations(description, detector);
    - // now do those specific for JSPs
    - // note: detector should always be of correct instance, but we'll
    - // check, for now.
    - if (detector instanceof JSPResourceEncodingDetector) {
    - JSPResourceEncodingDetector jspDetector = (JSPResourceEncodingDetector) detector;
    - String language = jspDetector.getLanguage();
    - if (language != null && language.length() > 0) {
    - description.setProperty(IContentDescriptionForJSP.LANGUAGE_ATTRIBUTE, language);
    - }
    - /*
    - * content type is literally the content type that's in the page
    - * directive
    - */
    - String contentTypeAttribute = jspDetector.getContentType();
    - if (contentTypeAttribute != null && contentTypeAttribute.length() > 0) {
    - description.setProperty(IContentDescriptionForJSP.CONTENT_TYPE_ATTRIBUTE, contentTypeAttribute);
    - }
    - /*
    - * content family is the general class of content, when its
    - * different from what's defined by content type
    - */
    - if (jspDetector.isXHTML() || jspDetector.isWML()) {
    - // ISSUE: long term this logic and value should be contributed by extension point
    - description.setProperty(IContentDescriptionForJSP.CONTENT_FAMILY_ATTRIBUTE, ContentTypeFamilyForHTML.HTML_FAMILY);
    - }
    -
    -
    - }
    - }
    -
    - private void handleDetectedSpecialCase(IContentDescription description, Object detectedCharset, Object javaCharset) {
    - if (detectedCharset != null) {
    - // Once we detected a charset, we should set the property even
    - // though it's the same as javaCharset
    - // because there are clients that rely on this property to
    - // determine if the charset is actually detected in file or not.
    - description.setProperty(IContentDescriptionExtended.DETECTED_CHARSET, detectedCharset);
    - }
    - }
    -
    - /**
    - * @param description
    - * @param detector
    - * @throws IOException
    - */
    - private void handleStandardCalculations(IContentDescription description, IResourceCharsetDetector detector) throws IOException {
    - // note: if we're asked for one, we set them all. I need to be sure if
    - // called
    - // mulitiple times (one for each, say) that we don't waste time
    - // processing same
    - // content again.
    - EncodingMemento encodingMemento = ((JSPResourceEncodingDetector) detector).getEncodingMemento();
    - // TODO: I need to verify to see if this BOM work is always done
    - // by text type.
    - Object detectedByteOrderMark = encodingMemento.getUnicodeBOM();
    - if (detectedByteOrderMark != null) {
    - Object existingByteOrderMark = description.getProperty(IContentDescription.BYTE_ORDER_MARK);
    - // not sure why would ever be different, so if is different, may
    - // need to "push" up into base.
    - if (!detectedByteOrderMark.equals(existingByteOrderMark))
    - description.setProperty(IContentDescription.BYTE_ORDER_MARK, detectedByteOrderMark);
    - }
    -
    -
    - if (!encodingMemento.isValid()) {
    - // note: after setting here, its the mere presence of
    - // IContentDescriptionExtended.UNSUPPORTED_CHARSET
    - // in the resource's description that can be used to determine if
    - // invalid
    - // in those cases, the "detected" property contains an
    - // "appropriate default" to use.
    - description.setProperty(IContentDescriptionExtended.UNSUPPORTED_CHARSET, encodingMemento.getInvalidEncoding());
    - description.setProperty(IContentDescriptionExtended.APPROPRIATE_DEFAULT, encodingMemento.getAppropriateDefault());
    - }
    -
    - Object detectedCharset = encodingMemento.getDetectedCharsetName();
    - Object javaCharset = encodingMemento.getJavaCharsetName();
    -
    - // we always include detected, if its different than java
    - handleDetectedSpecialCase(description, detectedCharset, javaCharset);
    -
    - if (javaCharset != null) {
    - Object existingCharset = description.getProperty(IContentDescription.CHARSET);
    - if (javaCharset.equals(existingCharset)) {
    - handleDetectedSpecialCase(description, detectedCharset, javaCharset);
    - }
    - else {
    - // we may need to add what we found, but only need to add
    - // if different from the default.
    - Object defaultCharset = detector.getSpecDefaultEncoding();
    - if (defaultCharset != null) {
    - if (!defaultCharset.equals(javaCharset)) {
    - description.setProperty(IContentDescription.CHARSET, javaCharset);
    - }
    - }
    - else {
    - // assuming if there is no spec default, we always need to
    - // add, I'm assuming
    - description.setProperty(IContentDescription.CHARSET, javaCharset);
    - }
    - }
    - }
    -
    - }
    -
    - /**
    - * @param description
    - * @return
    - */
    - private boolean isRelevent(IContentDescription description) {
    - boolean result = false;
    - if (description == null)
    - result = false;
    - else if (description.isRequested(IContentDescription.BYTE_ORDER_MARK))
    - result = true;
    - else if (description.isRequested(IContentDescription.CHARSET))
    - result = true;
    - else if (description.isRequested(IContentDescriptionExtended.APPROPRIATE_DEFAULT))
    - result = true;
    - else if (description.isRequested(IContentDescriptionExtended.DETECTED_CHARSET))
    - result = true;
    - else if (description.isRequested(IContentDescriptionExtended.UNSUPPORTED_CHARSET))
    - result = true;
    - else if (description.isRequested(IContentDescriptionForJSP.CONTENT_TYPE_ATTRIBUTE))
    - result = true;
    - else if (description.isRequested(IContentDescriptionForJSP.LANGUAGE_ATTRIBUTE))
    - result = true;
    - return result;
    - }
    -} \ No newline at end of file
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/DeploymentDescriptorPropertyCache.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/DeploymentDescriptorPropertyCache.java
    deleted file mode 100644
    index b718ec20f5..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/DeploymentDescriptorPropertyCache.java
    +++ /dev/null
    @@ -1,913 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 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.jsp.core.internal.contenttype;
    -
    -import java.io.ByteArrayInputStream;
    -import java.io.IOException;
    -import java.io.StringReader;
    -import java.lang.ref.Reference;
    -import java.lang.ref.SoftReference;
    -import java.util.ArrayList;
    -import java.util.HashMap;
    -import java.util.Hashtable;
    -import java.util.List;
    -import java.util.Map;
    -
    -import javax.xml.parsers.DocumentBuilder;
    -
    -import org.eclipse.core.resources.IFile;
    -import org.eclipse.core.resources.IProject;
    -import org.eclipse.core.resources.IResource;
    -import org.eclipse.core.resources.IResourceChangeEvent;
    -import org.eclipse.core.resources.IResourceChangeListener;
    -import org.eclipse.core.resources.IResourceDelta;
    -import org.eclipse.core.resources.IResourceDeltaVisitor;
    -import org.eclipse.core.resources.ResourcesPlugin;
    -import org.eclipse.core.runtime.CoreException;
    -import org.eclipse.core.runtime.IPath;
    -import org.eclipse.core.runtime.IProgressMonitor;
    -import org.eclipse.core.runtime.NullProgressMonitor;
    -import org.eclipse.core.runtime.Path;
    -import org.eclipse.core.runtime.SubProgressMonitor;
    -import org.eclipse.jst.jsp.core.internal.Logger;
    -import org.eclipse.jst.jsp.core.internal.util.CommonXML;
    -import org.eclipse.jst.jsp.core.internal.util.FacetModuleCoreSupport;
    -import org.eclipse.jst.jsp.core.internal.util.FileContentCache;
    -import org.eclipse.wst.sse.core.StructuredModelManager;
    -import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
    -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
    -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
    -import org.w3c.dom.Document;
    -import org.w3c.dom.DocumentType;
    -import org.w3c.dom.Element;
    -import org.w3c.dom.EntityReference;
    -import org.w3c.dom.Node;
    -import org.w3c.dom.NodeList;
    -import org.xml.sax.EntityResolver;
    -import org.xml.sax.ErrorHandler;
    -import org.xml.sax.InputSource;
    -import org.xml.sax.SAXException;
    -import org.xml.sax.SAXParseException;
    -
    -/**
    - * A cache fo property group information stored in web.xml files. Information
    - * is not persisted.
    - */
    -public final class DeploymentDescriptorPropertyCache {
    - private static final PropertyGroup[] NO_PROPERTY_GROUPS = new PropertyGroup[0];
    -
    - private static class DeploymentDescriptor {
    - PropertyGroup[] groups;
    - long modificationStamp;
    - Float version = new Float(defaultWebAppVersion);
    - }
    -
    - /**
    - * Representation of the JSP 2.0 property-group definitions from a servlet
    - * deployment descriptor.
    - */
    - public static final class PropertyGroup {
    - static PropertyGroup createFrom(IPath path, Node propertyGroupNode, int groupNumber) {
    - PropertyGroup group = new PropertyGroup(path, groupNumber);
    - Node propertyGroupID = propertyGroupNode.getAttributes().getNamedItem(ID);
    - if (propertyGroupID != null) {
    - group.setId(propertyGroupID.getNodeValue());
    - }
    - Node node = propertyGroupNode.getFirstChild();
    - while (node != null) {
    - if (node.getNodeType() == Node.ELEMENT_NODE) {
    - String name = node.getLocalName();
    - if (name == null) {
    - name = node.getNodeName();
    - }
    - if (IS_XML.equals(name)) {
    - group.setIsXML(getContainedText(node));
    - }
    - else if (EL_IGNORED.equals(name)) {
    - group.setElignored(getContainedText(node));
    - }
    - else if (INCLUDE_CODA.equals(name)) {
    - group.addCoda(getContainedText(node));
    - }
    - else if (INCLUDE_PRELUDE.equals(name)) {
    - group.addPrelude(getContainedText(node));
    - }
    - else if (SCRIPTING_INVALID.equals(name)) {
    - group.setScriptingInvalid(getContainedText(node));
    - }
    - else if (PAGE_ENCODING.equals(name)) {
    - group.setPageEncoding(getContainedText(node));
    - }
    - else if (URL_PATTERN.equals(name)) {
    - group.setUrlPattern(getContainedText(node));
    - }
    - }
    -
    - node = node.getNextSibling();
    - }
    -
    - return group;
    - }
    -
    - private boolean el_ignored;
    -
    - private String id;
    -
    - private IPath[] include_coda = new IPath[0];
    -
    - private IPath[] include_prelude = new IPath[0];
    - private boolean is_xml;
    - private StringMatcher matcher;
    - private String page_encoding;
    - private boolean scripting_invalid;
    - String url_pattern;
    - private IPath webxmlPath;
    -
    - int number;
    -
    - private PropertyGroup(IPath path, int number) {
    - super();
    - this.webxmlPath = path;
    - this.number = number;
    - }
    -
    - private void addCoda(String containedText) {
    - if (containedText.length() > 0) {
    - IPath[] codas = new IPath[include_coda.length + 1];
    - System.arraycopy(include_coda, 0, codas, 0, include_coda.length);
    - codas[include_coda.length] = webxmlPath.removeLastSegments(2).append(containedText);
    - include_coda = codas;
    - }
    - }
    -
    - private void addPrelude(String containedText) {
    - if (containedText.length() > 0) {
    - IPath[] preludes = new IPath[include_prelude.length + 1];
    - System.arraycopy(include_prelude, 0, preludes, 0, include_prelude.length);
    - preludes[include_prelude.length] = webxmlPath.removeLastSegments(2).append(containedText);
    - include_prelude = preludes;
    - }
    - }
    -
    - public String getId() {
    - return id;
    - }
    -
    - public IPath[] getIncludeCoda() {
    - return include_coda;
    - }
    -
    - public IPath[] getIncludePrelude() {
    - return include_prelude;
    - }
    -
    - public String getPageEncoding() {
    - return page_encoding;
    - }
    -
    - public String getUrlPattern() {
    - return url_pattern;
    - }
    -
    - public boolean isELignored() {
    - return el_ignored;
    - }
    -
    - public boolean isIsXML() {
    - return is_xml;
    - }
    -
    - public boolean isScriptingInvalid() {
    - return scripting_invalid;
    - }
    -
    - boolean matches(String pattern, boolean optimistic) {
    - if (matcher == null)
    - return optimistic;
    - return matcher.match(pattern);
    - }
    -
    - private void setElignored(String el_ignored) {
    - this.el_ignored = Boolean.valueOf(el_ignored).booleanValue();
    - }
    -
    - private void setId(String id) {
    - this.id = id;
    - }
    -
    - private void setIsXML(String is_xml) {
    - this.is_xml = Boolean.valueOf(is_xml).booleanValue();
    - }
    -
    - private void setPageEncoding(String page_encoding) {
    - this.page_encoding = page_encoding;
    - }
    -
    - private void setScriptingInvalid(String scripting_invalid) {
    - this.scripting_invalid = Boolean.valueOf(scripting_invalid).booleanValue();
    - }
    -
    - private void setUrlPattern(String url_pattern) {
    - this.url_pattern = url_pattern;
    - if (url_pattern != null && url_pattern.length() > 0) {
    - this.matcher = new StringMatcher(url_pattern);
    - }
    - }
    -
    - public String toString() {
    - return number + ":" + url_pattern;
    - }
    - }
    -
    - private static class ResourceChangeListener implements IResourceChangeListener {
    - public void resourceChanged(IResourceChangeEvent event) {
    - IResourceDelta delta = event.getDelta();
    - if (event.getType() != IResourceChangeEvent.POST_CHANGE)
    - return;
    - if (delta.getKind() == IResourceDelta.CHANGED && (delta.getFlags() == IResourceDelta.ENCODING || delta.getFlags() == IResourceDelta.MARKERS))
    - return;
    -
    - IResourceDeltaVisitor visitor = new IResourceDeltaVisitor() {
    - public boolean visit(IResourceDelta delta) {
    - IResource resource = delta.getResource();
    - if (resource.getType() == IResource.FILE) {
    - if (delta.getKind() == IResourceDelta.CHANGED && (delta.getFlags() == IResourceDelta.ENCODING || delta.getFlags() == IResourceDelta.MARKERS))
    - return false;
    -
    - IPath path = resource.getFullPath();
    - int segmentCount = path.segmentCount();
    - if (segmentCount > 1 && path.lastSegment().equals(WEB_XML) && path.segment(segmentCount - 2).equals(WEB_INF)) {
    - getInstance().deploymentDescriptorChanged(path);
    - }
    - }
    - else if (resource.getType() == IResource.PROJECT) {
    - String name = resource.getName();
    - if (_debugResolutionCache) {
    - System.out.println("Removing DeploymentDescriptorPropertyCache resolution cache for project " + name); //$NON-NLS-1$
    - }
    - getInstance().resolvedMap.remove(name);
    - }
    - return true;
    - }
    - };
    - try {
    - delta.accept(visitor);
    - }
    - catch (CoreException e) {
    - Logger.logException(e);
    - }
    - }
    - }
    -
    - private static class ResourceErrorHandler implements ErrorHandler {
    - private boolean fDoLogExceptions = false;
    - private IPath fPath;
    -
    - ResourceErrorHandler(boolean logExceptions) {
    - super();
    - fDoLogExceptions = logExceptions;
    - }
    -
    - public void error(SAXParseException exception) throws SAXException {
    - if (fDoLogExceptions)
    - Logger.log(Logger.WARNING, "SAXParseException with " + fPath + " (error) while reading descriptor: " + exception.getMessage()); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
    - }
    -
    - public void fatalError(SAXParseException exception) throws SAXException {
    - if (fDoLogExceptions)
    - Logger.log(Logger.WARNING, "SAXParseException with " + fPath + " (fatalError) while reading descriptor: " + exception.getMessage()); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
    - }
    -
    - public void setPath(IPath path) {
    - fPath = path;
    - }
    -
    - public void warning(SAXParseException exception) throws SAXException {
    - if (fDoLogExceptions)
    - Logger.log(Logger.WARNING, "SAXParseException with " + fPath + " (warning) while reading descriptor: " + exception.getMessage()); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
    - }
    - }
    -
    - /**
    - * Copied from org.eclipse.core.internal.propertytester.StringMatcher, but
    - * should be replaced with a more accurate implementation of the rules in
    - * Servlet spec SRV.11.2
    - */
    - private static class StringMatcher {
    - private static final char SINGLE_WILD_CARD = '\u0000';
    -
    - /**
    - * Boundary value beyond which we don't need to search in the text
    - */
    - private int bound = 0;
    -
    - private boolean hasLeadingStar;
    -
    - private boolean hasTrailingStar;
    -
    - private final String pattern;
    -
    - private final int patternLength;
    -
    - /**
    - * The pattern split into segments separated by *
    - */
    - private String segments[];
    -
    - /**
    - * StringMatcher constructor takes in a String object that is a simple
    - * pattern which may contain '*' for 0 and many characters and '?' for
    - * exactly one character.
    - *
    - * Literal '*' and '?' characters must be escaped in the pattern e.g.,
    - * "\*" means literal "*", etc.
    - *
    - * Escaping any other character (including the escape character
    - * itself), just results in that character in the pattern. e.g., "\a"
    - * means "a" and "\\" means "\"
    - *
    - * If invoking the StringMatcher with string literals in Java, don't
    - * forget escape characters are represented by "\\".
    - *
    - * @param pattern
    - * the pattern to match text against
    - */
    - StringMatcher(String pattern) {
    - if (pattern == null)
    - throw new IllegalArgumentException();
    - this.pattern = pattern;
    - patternLength = pattern.length();
    - parseWildCards();
    - }
    -
    - /**
    - * @param text
    - * a simple regular expression that may only contain '?'(s)
    - * @param start
    - * the starting index in the text for search, inclusive
    - * @param end
    - * the stopping point of search, exclusive
    - * @param p
    - * a simple regular expression that may contain '?'
    - * @return the starting index in the text of the pattern , or -1 if
    - * not found
    - */
    - private int findPosition(String text, int start, int end, String p) {
    - boolean hasWildCard = p.indexOf(SINGLE_WILD_CARD) >= 0;
    - int plen = p.length();
    - for (int i = start, max = end - plen; i <= max; ++i) {
    - if (hasWildCard) {
    - if (regExpRegionMatches(text, i, p, 0, plen))
    - return i;
    - }
    - else {
    - if (text.regionMatches(true, i, p, 0, plen))
    - return i;
    - }
    - }
    - return -1;
    - }
    -
    - /**
    - * Given the starting (inclusive) and the ending (exclusive) positions
    - * in the <code>text</code>, determine if the given substring matches
    - * with aPattern
    - *
    - * @return true if the specified portion of the text matches the
    - * pattern
    - * @param text
    - * a String object that contains the substring to match
    - */
    - public boolean match(String text) {
    - if (text == null)
    - return false;
    - final int end = text.length();
    - final int segmentCount = segments.length;
    - if (segmentCount == 0 && (hasLeadingStar || hasTrailingStar)) // pattern
    - // contains
    - // only
    - // '*'(s)
    - return true;
    - if (end == 0)
    - return patternLength == 0;
    - if (patternLength == 0)
    - return false;
    - int currentTextPosition = 0;
    - if ((end - bound) < 0)
    - return false;
    - int segmentIndex = 0;
    - String current = segments[segmentIndex];
    -
    - /* process first segment */
    - if (!hasLeadingStar) {
    - int currentLength = current.length();
    - if (!regExpRegionMatches(text, 0, current, 0, currentLength))
    - return false;
    - segmentIndex++;
    - currentTextPosition = currentTextPosition + currentLength;
    - }
    - if ((segmentCount == 1) && (!hasLeadingStar) && (!hasTrailingStar)) {
    - // only one segment to match, no wild cards specified
    - return currentTextPosition == end;
    - }
    - /* process middle segments */
    - while (segmentIndex < segmentCount) {
    - current = segments[segmentIndex];
    - int currentMatch = findPosition(text, currentTextPosition, end, current);
    - if (currentMatch < 0)
    - return false;
    - currentTextPosition = currentMatch + current.length();
    - segmentIndex++;
    - }
    -
    - /* process final segment */
    - if (!hasTrailingStar && currentTextPosition != end) {
    - int currentLength = current.length();
    - return regExpRegionMatches(text, end - currentLength, current, 0, currentLength);
    - }
    - return segmentIndex == segmentCount;
    - }
    -
    - /**
    - * Parses the pattern into segments separated by wildcard '*'
    - * characters.
    - */
    - private void parseWildCards() {
    - if (pattern.startsWith("*"))//$NON-NLS-1$
    - hasLeadingStar = true;
    - if (pattern.endsWith("*")) {//$NON-NLS-1$
    - /* make sure it's not an escaped wildcard */
    - if (patternLength > 1 && pattern.charAt(patternLength - 2) != '\\') {
    - hasTrailingStar = true;
    - }
    - }
    -
    - ArrayList temp = new ArrayList();
    -
    - int pos = 0;
    - StringBuffer buf = new StringBuffer();
    - while (pos < patternLength) {
    - char c = pattern.charAt(pos++);
    - switch (c) {
    - case '\\' :
    - if (pos >= patternLength) {
    - buf.append(c);
    - }
    - else {
    - char next = pattern.charAt(pos++);
    - /* if it's an escape sequence */
    - if (next == '*' || next == '?' || next == '\\') {
    - buf.append(next);
    - }
    - else {
    - /*
    - * not an escape sequence, just insert
    - * literally
    - */
    - buf.append(c);
    - buf.append(next);
    - }
    - }
    - break;
    - case '*' :
    - if (buf.length() > 0) {
    - /* new segment */
    - temp.add(buf.toString());
    - bound += buf.length();
    - buf.setLength(0);
    - }
    - break;
    - case '?' :
    - /*
    - * append special character representing single match
    - * wildcard
    - */
    - buf.append(SINGLE_WILD_CARD);
    - break;
    - default :
    - buf.append(c);
    - }
    - }
    -
    - /* add last buffer to segment list */
    - if (buf.length() > 0) {
    - temp.add(buf.toString());
    - bound += buf.length();
    - }
    - segments = (String[]) temp.toArray(new String[temp.size()]);
    - }
    -
    - /**
    - *
    - * @return boolean
    - * @param text
    - * a String to match
    - * @param tStart
    - * the starting index of match, inclusive
    - * @param p
    - * a simple regular expression that may contain '?'
    - * @param pStart
    - * The start position in the pattern
    - * @param plen
    - * The length of the pattern
    - */
    - private boolean regExpRegionMatches(String text, int tStart, String p, int pStart, int plen) {
    - while (plen-- > 0) {
    - char tchar = text.charAt(tStart++);
    - char pchar = p.charAt(pStart++);
    -
    - // process wild cards, skipping single wild cards
    - if (pchar == SINGLE_WILD_CARD)
    - continue;
    - if (pchar == tchar)
    - continue;
    - if (Character.toUpperCase(tchar) == Character.toUpperCase(pchar))
    - continue;
    - // comparing after converting to upper case doesn't handle all
    - // cases;
    - // also compare after converting to lower case
    - if (Character.toLowerCase(tchar) == Character.toLowerCase(pchar))
    - continue;
    - return false;
    - }
    - return true;
    - }
    - }
    -
    - private static DeploymentDescriptorPropertyCache _instance = new DeploymentDescriptorPropertyCache();
    - private static final boolean _debugResolutionCache = false;
    -
    - private static final float defaultWebAppVersion = 2.4f;
    - private static String EL_IGNORED = "el-ignored";
    - private static String ID = "id";
    - private static String INCLUDE_CODA = "include-coda";
    - private static String INCLUDE_PRELUDE = "include-prelude";
    -
    - private static String IS_XML = "is-xml";
    - private static String JSP_PROPERTY_GROUP = "jsp-property-group";
    - private static String PAGE_ENCODING = "page-encoding";
    -
    - private static String SCRIPTING_INVALID = "scripting-invalid";
    - private static String URL_PATTERN = "url-pattern";
    - private static final String WEB_APP_ELEMENT_LOCAL_NAME = ":web-app";
    - private static final String WEB_APP_ELEMENT_NAME = "web-app";
    -
    - private static final String WEB_APP_VERSION_NAME = "version";
    - private static final String WEB_INF = "WEB-INF";
    - private static final String WEB_XML = "web.xml";
    - // private static final String WEB_INF_WEB_XML = WEB_INF + IPath.SEPARATOR
    - // + WEB_XML;
    - private static final String SLASH_WEB_INF_WEB_XML = Path.ROOT.toString() + WEB_INF + IPath.SEPARATOR + WEB_XML;
    -
    - static String getContainedText(Node parent) {
    - NodeList children = parent.getChildNodes();
    - if (children.getLength() == 1) {
    - return children.item(0).getNodeValue().trim();
    - }
    - StringBuffer s = new StringBuffer();
    - Node child = parent.getFirstChild();
    - while (child != null) {
    - if (child.getNodeType() == Node.ENTITY_REFERENCE_NODE) {
    - String reference = ((EntityReference) child).getNodeValue();
    - if (reference == null && child.getNodeName() != null) {
    - reference = "&" + child.getNodeName() + ";"; //$NON-NLS-1$ //$NON-NLS-2$
    - }
    - if (reference != null) {
    - s.append(reference.trim());
    - }
    - }
    - else {
    - s.append(child.getNodeValue().trim());
    - }
    - child = child.getNextSibling();
    - }
    - return s.toString().trim();
    - }
    -
    - public static DeploymentDescriptorPropertyCache getInstance() {
    - return _instance;
    - }
    -
    - /**
    - * This method is not meant to be called by clients.
    - */
    - public static void start() {
    - ResourcesPlugin.getWorkspace().addResourceChangeListener(getInstance().fResourceChangeListener, IResourceChangeEvent.POST_CHANGE);
    - }
    -
    - /**
    - * This method is not meant to be called by clients.
    - */
    - public static void stop() {
    - ResourcesPlugin.getWorkspace().removeResourceChangeListener(getInstance().fResourceChangeListener);
    - }
    -
    - private ResourceErrorHandler errorHandler;
    -
    - private Map fDeploymentDescriptors = new Hashtable();
    -
    - private IResourceChangeListener fResourceChangeListener = new ResourceChangeListener();
    -
    - // for use when reading TLDs
    - private EntityResolver resolver;
    -
    - Map resolvedMap = new HashMap();
    -
    - private DeploymentDescriptorPropertyCache() {
    - super();
    - }
    -
    - private void _parseDocument(IPath path, Float[] version, List groupList, SubProgressMonitor subMonitor, Document document) {
    - Element webapp = document.getDocumentElement();
    - if (webapp != null) {
    - if (webapp.getTagName().equals(WEB_APP_ELEMENT_NAME) || webapp.getNodeName().endsWith(WEB_APP_ELEMENT_LOCAL_NAME)) {
    - // this convention only started with 2.4?
    - String versionValue = webapp.getAttribute(WEB_APP_VERSION_NAME);
    - if (versionValue != null) {
    - versionValue = versionValue.trim();
    - if (versionValue.length() > 0) {
    - try {
    - version[0] = Float.valueOf(versionValue);
    - }
    - catch (NumberFormatException e) {
    - // doesn't matter
    - }
    - }
    - }
    - if (version[0] == null) {
    - // try determining the version from the doctype reference
    - DocumentType doctype = document.getDoctype();
    - if (doctype != null) {
    - String systemId = doctype.getSystemId();
    - String publicId = doctype.getPublicId();
    - if ((systemId != null && systemId.endsWith("web-app_2_3.dtd")) || (publicId != null && publicId.indexOf("Web Application 2.3") > 0)) { //$NON-NLS-1$ //$NON-NLS-2$
    - version[0] = new Float(2.3);
    - }
    - else if ((systemId != null && systemId.endsWith("web-app_2_2.dtd")) || (publicId != null && publicId.indexOf("Web Application 2.2") > 0)) { //$NON-NLS-1$ //$NON-NLS-2$
    - version[0] = new Float(2.2);
    - }
    - else if ((systemId != null && systemId.endsWith("web-app_2_1.dtd")) || (publicId != null && publicId.indexOf("Web Application 2.1") > 0)) { //$NON-NLS-1$ //$NON-NLS-2$
    - version[0] = new Float(2.1);
    - }
    - }
    - }
    - }
    - }
    - NodeList propertyGroupElements = document.getElementsByTagName(JSP_PROPERTY_GROUP);
    - int length = propertyGroupElements.getLength();
    - subMonitor.beginTask("Reading Property Groups", length); //$NON-NLS-1$
    - for (int i = 0; i < length; i++) {
    - PropertyGroup group = PropertyGroup.createFrom(path, propertyGroupElements.item(i), i);
    - subMonitor.worked(1);
    - if (group != null) {
    - groupList.add(group);
    - }
    - }
    - }
    -
    - /**
    - * Convert the SRV spec version to the JSP spec version
    - */
    - private float convertSpecVersions(float version) {
    - if (version > 0) {
    - if (version == 2.5f)
    - return 2.1f;
    - else if (version == 2.4f)
    - return 2.0f;
    - else if (version == 2.3f)
    - return 1.2f;
    - else if (version == 2.2f)
    - return 1.1f;
    - else if (version == 2.1f)
    - return 1.0f;
    - }
    - return convertSpecVersions(defaultWebAppVersion);
    - }
    -
    - void deploymentDescriptorChanged(final IPath fullPath) {
    - if (fDeploymentDescriptors.containsKey(fullPath.makeAbsolute())) {
    - updateCacheEntry(fullPath);
    - }
    - }
    -
    - /**
    - * parse the specified resource using Xerces, and if that fails, use the
    - * SSE XML parser to find the property groups.
    - */
    - private DeploymentDescriptor fetchDescriptor(IPath path, IProgressMonitor monitor) {
    - monitor.beginTask("Reading Deployment Descriptor", 3);
    - IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(path);
    -
    - PropertyGroup groups[] = null;
    -
    - IStructuredModel model = null;
    - List groupList = new ArrayList();
    - Float[] version = new Float[1];
    - SubProgressMonitor subMonitor = new SubProgressMonitor(monitor, 2);
    - DocumentBuilder builder = CommonXML.getDocumentBuilder(false);
    - builder.setEntityResolver(getEntityResolver());
    - builder.setErrorHandler(getErrorHandler(path));
    - try {
    - InputSource inputSource = new InputSource();
    - String s = FileContentCache.getInstance().getContents(path);
    - inputSource.setCharacterStream(new StringReader(s));
    - inputSource.setSystemId(path.toString());
    - Document document = builder.parse(inputSource);
    - _parseDocument(path, version, groupList, subMonitor, document);
    - }
    - catch (SAXException e1) {
    - /* encountered a fatal parsing error, try our own parser */
    - try {
    - /**
    - * Chiefly because the web.xml file itself is editable, use
    - * SSE to get the DOM Document because it is more fault
    - * tolerant.
    - */
    - model = StructuredModelManager.getModelManager().getModelForRead(file);
    - monitor.worked(1);
    - if (model instanceof IDOMModel) {
    - IDOMDocument document = ((IDOMModel) model).getDocument();
    - _parseDocument(path, version, groupList, subMonitor, document);
    - }
    - }
    - catch (Exception e) {
    - Logger.logException(e);
    - }
    - finally {
    - if (model != null) {
    - model.releaseFromRead();
    - }
    - }
    - }
    - catch (IOException e1) {
    - /* file is unreadable, create no property groups */
    - }
    - finally {
    - groups = (PropertyGroup[]) groupList.toArray(new PropertyGroup[groupList.size()]);
    - subMonitor.done();
    - }
    -
    - if (groups == null) {
    - groups = NO_PROPERTY_GROUPS;
    - }
    -
    - DeploymentDescriptor deploymentDescriptor = new DeploymentDescriptor();
    - deploymentDescriptor.modificationStamp = file.getModificationStamp();
    - deploymentDescriptor.groups = groups;
    - deploymentDescriptor.version = version[0];
    - monitor.done();
    - fDeploymentDescriptors.put(path, new SoftReference(deploymentDescriptor));
    - return deploymentDescriptor;
    - }
    -
    - private EntityResolver getEntityResolver() {
    - if (resolver == null) {
    - resolver = new EntityResolver() {
    - public InputSource resolveEntity(String publicID, String systemID) throws SAXException, IOException {
    - InputSource result = new InputSource(new ByteArrayInputStream(new byte[0]));
    - result.setPublicId(publicID);
    - result.setSystemId(systemID != null ? systemID : "/_" + getClass().getName()); //$NON-NLS-1$
    - return result;
    - }
    - };
    - }
    - return resolver;
    - }
    -
    - /**
    - * Returns an ErrorHandler that will not stop the parser on reported
    - * errors
    - */
    - private ErrorHandler getErrorHandler(IPath path) {
    - if (errorHandler == null) {
    - errorHandler = new ResourceErrorHandler(false);
    - }
    - errorHandler.setPath(path);
    - return errorHandler;
    - }
    -
    - /**
    - * @param fullPath
    - * @return the JSP version supported by the web application containing the
    - * path. A value stated within a web.xml file takes priority.
    - */
    - public float getJSPVersion(IPath fullPath) {
    - float version = defaultWebAppVersion;
    - /* try applicable web.xml file first */
    - IPath webxmlPath = getWebXMLPath(fullPath);
    - if (webxmlPath != null) {
    - IFile webxmlFile = ResourcesPlugin.getWorkspace().getRoot().getFile(webxmlPath);
    - if (webxmlFile.isAccessible()) {
    - Reference descriptorHolder = (Reference) fDeploymentDescriptors.get(webxmlPath);
    - DeploymentDescriptor descriptor = null;
    -
    - if (descriptorHolder == null || ((descriptor = (DeploymentDescriptor) descriptorHolder.get()) == null) || (descriptor.modificationStamp == IResource.NULL_STAMP) || (descriptor.modificationStamp != webxmlFile.getModificationStamp())) {
    - descriptor = fetchDescriptor(webxmlPath, new NullProgressMonitor());
    - }
    -
    - if (descriptor.version != null) {
    - version = descriptor.version.floatValue();
    - return convertSpecVersions(version);
    - }
    - }
    - }
    -
    - /* check facet settings */
    - IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(fullPath.segment(0));
    - version = FacetModuleCoreSupport.getDynamicWebProjectVersion(project);
    -
    - return convertSpecVersions(version);
    - }
    -
    - /**
    - * @param jspFilePath
    - * @return PropertyGroups matching the file at the given path or an empty
    - * array if no web.xml file exists or no matching property group
    - * was defined. A returned PropertyGroup object should be
    - * considered short-lived and not saved for later use.
    - */
    - public PropertyGroup[] getPropertyGroups(IPath jspFilePath) {
    - List matchingGroups = new ArrayList(1);
    - IPath webxmlPath = getWebXMLPath(jspFilePath);
    - if (webxmlPath == null)
    - return NO_PROPERTY_GROUPS;
    -
    - IFile webxmlFile = ResourcesPlugin.getWorkspace().getRoot().getFile(webxmlPath);
    - if (!webxmlFile.isAccessible())
    - return NO_PROPERTY_GROUPS;
    -
    - Reference descriptorHolder = (Reference) fDeploymentDescriptors.get(webxmlPath);
    - DeploymentDescriptor descriptor = null;
    -
    - if (descriptorHolder == null || ((descriptor = (DeploymentDescriptor) descriptorHolder.get()) == null) || (descriptor.modificationStamp == IResource.NULL_STAMP) || (descriptor.modificationStamp != webxmlFile.getModificationStamp())) {
    - descriptor = fetchDescriptor(webxmlPath, new NullProgressMonitor());
    - }
    -
    - for (int i = 0; i < descriptor.groups.length; i++) {
    - if (descriptor.groups[i].matches(FacetModuleCoreSupport.getRuntimePath(jspFilePath).toString(), false)) {
    - matchingGroups.add(descriptor.groups[i]);
    - }
    - }
    - if (matchingGroups.isEmpty()) {
    - for (int i = 0; i < descriptor.groups.length; i++) {
    - if (descriptor.groups[i].matches(FacetModuleCoreSupport.getRuntimePath(jspFilePath).toString(), true)) {
    - matchingGroups.add(descriptor.groups[i]);
    - }
    - }
    - }
    - return (PropertyGroup[]) matchingGroups.toArray(new PropertyGroup[matchingGroups.size()]);
    - }
    -
    - private IPath getWebXMLPath(IPath fullPath) {
    - /*
    - * It can take the better part of a full second to do this, so cache
    - * the result.
    - */
    - IPath resolved = null;
    - Map mapForProject = null;
    - mapForProject = (Map) resolvedMap.get(fullPath.segment(0));
    - if (mapForProject != null) {
    - resolved = (IPath) mapForProject.get(fullPath);
    - }
    - else {
    - mapForProject = new HashMap();
    - resolvedMap.put(fullPath.segment(0), mapForProject);
    - }
    -
    - if (resolved != null) {
    - if (_debugResolutionCache) {
    - System.out.println("DeploymentDescriptorPropertyCache resolution cache hit for " + fullPath); //$NON-NLS-1$
    - }
    - }
    - else {
    - if (_debugResolutionCache) {
    - System.out.println("DeploymentDescriptorPropertyCache resolution cache miss for " + fullPath); //$NON-NLS-1$
    - }
    - resolved = FacetModuleCoreSupport.resolve(fullPath, SLASH_WEB_INF_WEB_XML);
    - mapForProject.put(fullPath, resolved);
    - }
    - return resolved;
    - }
    -
    - public IFile getWebXML(IPath jspFilePath) {
    - IPath webxmlPath = getWebXMLPath(jspFilePath);
    - if (webxmlPath == null)
    - return null;
    -
    - return ResourcesPlugin.getWorkspace().getRoot().getFile(webxmlPath);
    - }
    -
    - private void updateCacheEntry(IPath fullPath) {
    - /* don't update right now; remove and wait for another query to update */
    - fDeploymentDescriptors.remove(fullPath);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/HeadParserToken.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/HeadParserToken.java
    deleted file mode 100644
    index 9a58ad2e9f..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/HeadParserToken.java
    +++ /dev/null
    @@ -1,44 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2001, 2005 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
    - * Jens Lukowski/Innoopract - initial renaming/restructuring
    - *
    - *******************************************************************************/
    -package org.eclipse.jst.jsp.core.internal.contenttype;
    -
    -public class HeadParserToken {
    - private int fStart;
    -
    - private String fText;
    - private String fType;
    -
    - protected HeadParserToken() {
    - super();
    - }
    -
    - public HeadParserToken(String type, int start, String text) {
    - this();
    - fType = type;
    - fStart = start;
    - fText = text;
    -
    - }
    -
    - public String getText() {
    - return fText;
    - }
    -
    - public String getType() {
    - return fType;
    - }
    -
    - public String toString() {
    - return ("text: " + fText + " offset: " + fStart + " type: " + fType); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/IntStack.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/IntStack.java
    deleted file mode 100644
    index 99c74777b9..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/IntStack.java
    +++ /dev/null
    @@ -1,99 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2001, 2005 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
    - * Jens Lukowski/Innoopract - initial renaming/restructuring
    - *
    - *******************************************************************************/
    -package org.eclipse.jst.jsp.core.internal.contenttype;
    -
    -/*
    - *
    - * A non-resizable class implementing the behavior of java.util.Stack, but
    - * directly for the <code> integer </code> primitive.
    - */
    -import java.util.EmptyStackException;
    -
    -public class IntStack {
    - private int[] list = null;
    -
    - private int size = 0;
    -
    - public IntStack() {
    - this(100);
    - }
    -
    - public IntStack(int maxdepth) {
    - super();
    - list = new int[maxdepth];
    - initialize();
    - }
    -
    - public void clear() {
    - initialize();
    - }
    -
    - public boolean empty() {
    - return size == 0;
    - }
    -
    - public int get(int slot) {
    - return list[slot];
    - }
    -
    - private void initialize() {
    - for (int i = 0; i < list.length; i++)
    - list[i] = -1;
    - }
    -
    - /**
    - * Returns the int at the top of the stack without removing it
    - *
    - * @return int at the top of this stack.
    - * @exception EmptyStackException
    - * when empty.
    - */
    - public int peek() {
    - if (size == 0)
    - throw new EmptyStackException();
    - return list[size - 1];
    - }
    -
    - /**
    - * Removes and returns the int at the top of the stack
    - *
    - * @return int at the top of this stack.
    - * @exception EmptyStackException
    - * when empty.
    - */
    - public int pop() {
    - int value = peek();
    - list[size - 1] = -1;
    - size--;
    - return value;
    - }
    -
    - /**
    - * Pushes an item onto the top of this stack.
    - *
    - * @param newValue -
    - * the int to be pushed onto this stack.
    - * @return the <code>newValue</code> argument.
    - */
    - public int push(int newValue) {
    - if (size == list.length) {
    - throw new StackOverflowError();
    - }
    - list[size++] = newValue;
    - return newValue;
    - }
    -
    - public int size() {
    - return list.length;
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/JSPHeadTokenizer.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/JSPHeadTokenizer.java
    deleted file mode 100644
    index 176c532ca2..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/JSPHeadTokenizer.java
    +++ /dev/null
    @@ -1,3924 +0,0 @@
    -/* The following code was generated by JFlex 1.4.2 on 7/28/08 9:29 AM */
    -
    -/*******************************************************************************
    - * Copyright (c) 2005, 2008 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
    - *******************************************************************************/
    -/*nlsXXX*/
    -package org.eclipse.jst.jsp.core.internal.contenttype;
    -import java.io.IOException;
    -import java.io.Reader;
    -import java.util.Arrays;
    -
    -import org.eclipse.wst.xml.core.internal.contenttype.EncodingParserConstants;
    -import org.eclipse.wst.xml.core.internal.contenttype.XMLHeadTokenizerConstants;
    -
    -
    -/**
    - * This class is a scanner generated by
    - * <a href="http://www.jflex.de/">JFlex</a> 1.4.2
    - * on 7/28/08 9:29 AM from the specification file
    - * <tt>D:/workspaces/wtp301/workspace/org.eclipse.jst.jsp.core/DevTimeSupport/HeadParsers/JSPHeadTokenizer.jFlex</tt>
    - */
    -public class JSPHeadTokenizer {
    -
    - /** This character denotes the end of file */
    - public static final int YYEOF = -1;
    -
    - /** initial size of the lookahead buffer */
    - private static final int ZZ_BUFFERSIZE = 8192;
    -
    - /** lexical states */
    - public static final int YYINITIAL = 0;
    - public static final int UnDelimitedString = 12;
    - public static final int DQ_STRING = 8;
    - public static final int SQ_STRING = 10;
    - public static final int ST_XMLDecl = 2;
    - public static final int ST_PAGE_DIRECTIVE = 4;
    - public static final int QuotedAttributeValue = 6;
    -
    - /**
    - * ZZ_LEXSTATE[l] is the state in the DFA for the lexical state l
    - * ZZ_LEXSTATE[l+1] is the state in the DFA for the lexical state l
    - * at the beginning of a line
    - * l is of the form l = 2*k, k a non negative integer
    - */
    - private static final int ZZ_LEXSTATE[] = {
    - 0, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7
    - };
    -
    - /**
    - * Translates characters to character classes
    - */
    - private static final String ZZ_CMAP_PACKED =
    - "\1\11\10\0\1\6\1\10\2\0\1\7\22\0\1\6\1\20\1\37"+
    - "\2\0\1\51\1\0\1\40\6\0\1\43\1\34\1\0\1\47\1\0"+
    - "\1\44\5\0\1\50\1\41\1\0\1\13\1\12\1\56\1\14\1\52"+
    - "\1\53\1\32\1\23\1\21\1\27\1\0\1\46\1\30\1\33\1\54"+
    - "\1\0\1\17\1\16\1\35\1\22\1\26\1\0\1\45\1\36\1\24"+
    - "\1\31\1\55\1\42\1\15\1\25\7\0\1\53\1\32\1\23\1\21"+
    - "\1\27\1\0\1\46\1\30\1\33\1\54\1\0\1\17\1\16\1\35"+
    - "\1\22\1\26\1\0\1\45\1\36\1\24\1\31\1\55\1\42\1\15"+
    - "\1\25\101\0\1\4\3\0\1\5\17\0\1\3\16\0\1\1\20\0"+
    - "\1\3\16\0\1\1\1\2\170\0\1\2\ufe87\0";
    -
    - /**
    - * Translates characters to character classes
    - */
    - private static final char [] ZZ_CMAP = zzUnpackCMap(ZZ_CMAP_PACKED);
    -
    - /**
    - * Translates DFA states to action switch labels.
    - */
    - private static final int [] ZZ_ACTION = zzUnpackAction();
    -
    - private static final String ZZ_ACTION_PACKED_0 =
    - "\10\0\24\1\2\2\1\1\1\2\1\3\1\4\1\5"+
    - "\1\6\1\1\1\5\1\7\1\5\1\1\1\10\1\1"+
    - "\1\11\6\0\1\12\1\13\15\0\1\14\20\0\1\15"+
    - "\1\0\1\16\1\0\1\2\1\3\1\4\1\6\3\0"+
    - "\1\17\1\7\1\0\1\10\1\11\10\0\1\20\5\0"+
    - "\1\14\12\0\1\15\1\16\1\2\1\17\67\0\1\21"+
    - "\20\0\1\22\4\0\1\21\17\0\1\22\6\0\1\23"+
    - "\15\0\1\24\1\0\1\23\2\0\1\25\14\0\1\24"+
    - "\2\0\1\25\34\0\1\26\14\0\1\26\2\0\1\27"+
    - "\13\0\1\27\132\0\1\30\1\0\1\30\6\0\2\30"+
    - "\11\0\1\31\1\0\1\31\2\0\2\31\11\0";
    -
    - private static int [] zzUnpackAction() {
    - int [] result = new int[446];
    - int offset = 0;
    - offset = zzUnpackAction(ZZ_ACTION_PACKED_0, offset, result);
    - return result;
    - }
    -
    - private static int zzUnpackAction(String packed, int offset, int [] result) {
    - int i = 0; /* index in packed string */
    - int j = offset; /* index in unpacked array */
    - int l = packed.length();
    - while (i < l) {
    - int count = packed.charAt(i++);
    - int value = packed.charAt(i++);
    - do result[j++] = value; while (--count > 0);
    - }
    - return j;
    - }
    -
    -
    - /* error codes */
    - private static final int ZZ_UNKNOWN_ERROR = 0;
    - private static final int ZZ_NO_MATCH = 1;
    - private static final int ZZ_PUSHBACK_2BIG = 2;
    -
    - /* error messages for the codes above */
    - private static final String ZZ_ERROR_MSG[] = {
    - "Unkown internal scanner error",
    - "Error: could not match input",
    - "Error: pushback value was too large"
    - };
    -
    - /** the input device */
    - private java.io.Reader zzReader;
    -
    - /** the current state of the DFA */
    - private int zzState;
    -
    - /** the current lexical state */
    - private int zzLexicalState = YYINITIAL;
    -
    - /** this buffer contains the current text to be matched and is
    - the source of the yytext() string */
    - private char zzBuffer[] = new char[ZZ_BUFFERSIZE];
    -
    - /** the textposition at the last accepting state */
    - private int zzMarkedPos;
    -
    - /** the current text position in the buffer */
    - private int zzCurrentPos;
    -
    - /** startRead marks the beginning of the yytext() string in the buffer */
    - private int zzStartRead;
    -
    - /** endRead marks the last character in the buffer, that has been read
    - from input */
    - private int zzEndRead;
    -
    - /** the number of characters up to the start of the matched text */
    - private int yychar;
    -
    - /**
    - * zzAtBOL == true <=> the scanner is currently at the beginning of a line
    - */
    - private boolean zzAtBOL = true;
    -
    - /** zzAtEOF == true <=> the scanner is at the EOF */
    - private boolean zzAtEOF;
    -
    - /** denotes if the user-EOF-code has already been executed */
    - private boolean zzEOFDone;
    -
    - /* user code: */
    -
    -
    -
    -
    - private boolean hasMore = true;
    - private final static int MAX_TO_SCAN = 8000;
    - StringBuffer string = new StringBuffer();
    - // state stack for easier state handling
    - private IntStack fStateStack = new IntStack();
    - private String valueText = null;
    - private boolean isXHTML;
    - private boolean isWML;
    -
    -
    - public JSPHeadTokenizer() {
    - super();
    - }
    -
    - public void reset (Reader in) {
    - /* the input device */
    - zzReader = in;
    -
    - /* the current state of the DFA */
    - zzState = 0;
    -
    - /* the current lexical state */
    - zzLexicalState = YYINITIAL;
    -
    - /* this buffer contains the current text to be matched and is
    - the source of the yytext() string */
    - Arrays.fill(zzBuffer, (char)0);
    -
    - /* the textposition at the last accepting state */
    - zzMarkedPos = 0;
    -
    - /* the textposition at the last state to be included in yytext */
    - //zzPushbackPos = 0;
    -
    - /* the current text position in the buffer */
    - zzCurrentPos = 0;
    -
    - /* startRead marks the beginning of the yytext() string in the buffer */
    - zzStartRead = 0;
    -
    - /**
    - * endRead marks the last character in the buffer, that has been read
    - * from input
    - */
    - zzEndRead = 0;
    -
    - /* number of newlines encountered up to the start of the matched text */
    - //yyline = 0;
    -
    - /* the number of characters up to the start of the matched text */
    - yychar = 0;
    -
    - /**
    - * the number of characters from the last newline up to the start
    - * of the matched text
    - */
    - //yycolumn = 0;
    -
    - /**
    - * yy_atBOL == true <=> the scanner is currently at the beginning
    - * of a line
    - */
    - zzAtBOL = true;
    -
    - /* yy_atEOF == true <=> the scanner has returned a value for EOF */
    - zzAtEOF = false;
    -
    - /* denotes if the user-EOF-code has already been executed */
    - zzEOFDone = false;
    -
    -
    - fStateStack.clear();
    -
    - hasMore = true;
    - isXHTML=false;
    - isWML=false;
    -
    -
    - }
    -
    -
    - public final HeadParserToken getNextToken() throws IOException, Exception {
    - String context = null;
    - context = primGetNextToken();
    - HeadParserToken result = null;
    - if (valueText != null) {
    - result = createToken(context, yychar, valueText);
    - valueText = null;
    - } else {
    - result = createToken(context, yychar, yytext());
    - }
    - return result;
    - }
    -
    - public final boolean hasMoreTokens() {
    - return hasMore && yychar < MAX_TO_SCAN;
    - }
    - private void pushCurrentState() {
    - fStateStack.push(yystate());
    -
    - }
    -
    - private void popState() {
    - yybegin(fStateStack.pop());
    - }
    - private HeadParserToken createToken(String context, int start, String text) {
    - return new HeadParserToken(context, start, text);
    - }
    -
    - public boolean isXHTML() {
    - return isXHTML;
    - }
    - public boolean isWML() {
    - return isWML;
    - }
    -
    -
    -
    - /**
    - * Creates a new scanner
    - * There is also a java.io.InputStream version of this constructor.
    - *
    - * @param in the java.io.Reader to read input from.
    - */
    - public JSPHeadTokenizer(java.io.Reader in) {
    - this.zzReader = in;
    - }
    -
    - /**
    - * Creates a new scanner.
    - * There is also java.io.Reader version of this constructor.
    - *
    - * @param in the java.io.Inputstream to read input from.
    - */
    - public JSPHeadTokenizer(java.io.InputStream in) {
    - this(new java.io.InputStreamReader(in));
    - }
    -
    - /**
    - * Unpacks the compressed character translation table.
    - *
    - * @param packed the packed character translation table
    - * @return the unpacked character translation table
    - */
    - private static char [] zzUnpackCMap(String packed) {
    - char [] map = new char[0x10000];
    - int i = 0; /* index in packed string */
    - int j = 0; /* index in unpacked array */
    - while (i < 194) {
    - int count = packed.charAt(i++);
    - char value = packed.charAt(i++);
    - do map[j++] = value; while (--count > 0);
    - }
    - return map;
    - }
    -
    -
    - /**
    - * Refills the input buffer.
    - *
    - * @return <code>false</code>, iff there was new input.
    - *
    - * @exception java.io.IOException if any I/O-Error occurs
    - */
    - private boolean zzRefill() throws java.io.IOException {
    -
    - /* first: make room (if you can) */
    - if (zzStartRead > 0) {
    - System.arraycopy(zzBuffer, zzStartRead,
    - zzBuffer, 0,
    - zzEndRead-zzStartRead);
    -
    - /* translate stored positions */
    - zzEndRead-= zzStartRead;
    - zzCurrentPos-= zzStartRead;
    - zzMarkedPos-= zzStartRead;
    - zzStartRead = 0;
    - }
    -
    - /* is the buffer big enough? */
    - if (zzCurrentPos >= zzBuffer.length) {
    - /* if not: blow it up */
    - char newBuffer[] = new char[zzCurrentPos*2];
    - System.arraycopy(zzBuffer, 0, newBuffer, 0, zzBuffer.length);
    - zzBuffer = newBuffer;
    - }
    -
    - /* finally: fill the buffer with new input */
    - int numRead = zzReader.read(zzBuffer, zzEndRead,
    - zzBuffer.length-zzEndRead);
    -
    - if (numRead > 0) {
    - zzEndRead+= numRead;
    - return false;
    - }
    - // unlikely but not impossible: read 0 characters, but not at end of stream
    - if (numRead == 0) {
    - int c = zzReader.read();
    - if (c == -1) {
    - return true;
    - } else {
    - zzBuffer[zzEndRead++] = (char) c;
    - return false;
    - }
    - }
    -
    - // numRead < 0
    - return true;
    - }
    -
    -
    - /**
    - * Closes the input stream.
    - */
    - public final void yyclose() throws java.io.IOException {
    - zzAtEOF = true; /* indicate end of file */
    - zzEndRead = zzStartRead; /* invalidate buffer */
    -
    - if (zzReader != null)
    - zzReader.close();
    - }
    -
    -
    - /**
    - * Resets the scanner to read from a new input stream.
    - * Does not close the old reader.
    - *
    - * All internal variables are reset, the old input stream
    - * <b>cannot</b> be reused (internal buffer is discarded and lost).
    - * Lexical state is set to <tt>ZZ_INITIAL</tt>.
    - *
    - * @param reader the new input stream
    - */
    - public final void yyreset(java.io.Reader reader) {
    - zzReader = reader;
    - zzAtBOL = true;
    - zzAtEOF = false;
    - zzEndRead = zzStartRead = 0;
    - zzCurrentPos = zzMarkedPos = 0;
    - yychar = 0;
    - zzLexicalState = YYINITIAL;
    - }
    -
    -
    - /**
    - * Returns the current lexical state.
    - */
    - public final int yystate() {
    - return zzLexicalState;
    - }
    -
    -
    - /**
    - * Enters a new lexical state
    - *
    - * @param newState the new lexical state
    - */
    - public final void yybegin(int newState) {
    - zzLexicalState = newState;
    - }
    -
    -
    - /**
    - * Returns the text matched by the current regular expression.
    - */
    - public final String yytext() {
    - return new String( zzBuffer, zzStartRead, zzMarkedPos-zzStartRead );
    - }
    -
    -
    - /**
    - * Returns the character at position <tt>pos</tt> from the
    - * matched text.
    - *
    - * It is equivalent to yytext().charAt(pos), but faster
    - *
    - * @param pos the position of the character to fetch.
    - * A value from 0 to yylength()-1.
    - *
    - * @return the character at position pos
    - */
    - public final char yycharat(int pos) {
    - return zzBuffer[zzStartRead+pos];
    - }
    -
    -
    - /**
    - * Returns the length of the matched text region.
    - */
    - public final int yylength() {
    - return zzMarkedPos-zzStartRead;
    - }
    -
    -
    - /**
    - * Reports an error that occured while scanning.
    - *
    - * In a wellformed scanner (no or only correct usage of
    - * yypushback(int) and a match-all fallback rule) this method
    - * will only be called with things that "Can't Possibly Happen".
    - * If this method is called, something is seriously wrong
    - * (e.g. a JFlex bug producing a faulty scanner etc.).
    - *
    - * Usual syntax/scanner level error handling should be done
    - * in error fallback rules.
    - *
    - * @param errorCode the code of the errormessage to display
    - */
    - private void zzScanError(int errorCode) throws java.lang.Exception {
    - String message;
    - try {
    - message = ZZ_ERROR_MSG[errorCode];
    - }
    - catch (ArrayIndexOutOfBoundsException e) {
    - message = ZZ_ERROR_MSG[ZZ_UNKNOWN_ERROR];
    - }
    -
    - throw new java.lang.Exception(message);
    - }
    -
    -
    - /**
    - * Pushes the specified amount of characters back into the input stream.
    - *
    - * They will be read again by then next call of the scanning method
    - *
    - * @param number the number of characters to be read again.
    - * This number must not be greater than yylength()!
    - */
    - public void yypushback(int number) throws java.lang.Exception {
    - if ( number > yylength() )
    - zzScanError(ZZ_PUSHBACK_2BIG);
    -
    - zzMarkedPos -= number;
    - }
    -
    -
    - /**
    - * Contains user EOF-code, which will be executed exactly once,
    - * when the end of file is reached
    - */
    - private void zzDoEOF() {
    - if (!zzEOFDone) {
    - zzEOFDone = true;
    - hasMore=false;
    -
    - }
    - }
    -
    -
    - /**
    - * Resumes scanning until the next regular expression is matched,
    - * the end of input is encountered or an I/O-Error occurs.
    - *
    - * @return the next token
    - * @exception java.io.IOException if any I/O-Error occurs
    - */
    - public String primGetNextToken() throws java.io.IOException, java.lang.Exception {
    - int zzInput;
    - int zzAction;
    -
    - // cached fields:
    - int zzCurrentPosL;
    - int zzMarkedPosL;
    - int zzEndReadL = zzEndRead;
    - char [] zzBufferL = zzBuffer;
    - char [] zzCMapL = ZZ_CMAP;
    -
    -
    - while (true) {
    - zzMarkedPosL = zzMarkedPos;
    -
    - yychar+= zzMarkedPosL-zzStartRead;
    -
    - if (zzMarkedPosL > zzStartRead) {
    - switch (zzBufferL[zzMarkedPosL-1]) {
    - case '\n':
    - case '\u000B':
    - case '\u000C':
    - case '\u0085':
    - case '\u2028':
    - case '\u2029':
    - zzAtBOL = true;
    - break;
    - case '\r':
    - if (zzMarkedPosL < zzEndReadL)
    - zzAtBOL = zzBufferL[zzMarkedPosL] != '\n';
    - else if (zzAtEOF)
    - zzAtBOL = false;
    - else {
    - boolean eof = zzRefill();
    - zzMarkedPosL = zzMarkedPos;
    - zzEndReadL = zzEndRead;
    - zzBufferL = zzBuffer;
    - if (eof)
    - zzAtBOL = false;
    - else
    - zzAtBOL = zzBufferL[zzMarkedPosL] != '\n';
    - }
    - break;
    - default:
    - zzAtBOL = false;
    - }
    - }
    - zzAction = -1;
    -
    - zzCurrentPosL = zzCurrentPos = zzStartRead = zzMarkedPosL;
    -
    - if (zzAtBOL)
    - zzState = ZZ_LEXSTATE[zzLexicalState+1];
    - else
    - zzState = ZZ_LEXSTATE[zzLexicalState];
    -
    -
    - zzForAction: {
    - while (true) {
    -
    - if (zzCurrentPosL < zzEndReadL)
    - zzInput = zzBufferL[zzCurrentPosL++];
    - else if (zzAtEOF) {
    - zzInput = YYEOF;
    - break zzForAction;
    - }
    - else {
    - // store back cached positions
    - zzCurrentPos = zzCurrentPosL;
    - zzMarkedPos = zzMarkedPosL;
    - boolean eof = zzRefill();
    - // get translated positions and possibly new buffer
    - zzCurrentPosL = zzCurrentPos;
    - zzMarkedPosL = zzMarkedPos;
    - zzBufferL = zzBuffer;
    - zzEndReadL = zzEndRead;
    - if (eof) {
    - zzInput = YYEOF;
    - break zzForAction;
    - }
    - else {
    - zzInput = zzBufferL[zzCurrentPosL++];
    - }
    - }
    - zzInput = zzCMapL[zzInput];
    -
    - boolean zzIsFinal = false;
    - boolean zzNoLookAhead = false;
    -
    - zzForNext: { switch (zzState) {
    - case 0:
    - switch (zzInput) {
    - case 9: zzIsFinal = true; zzState = 9; break zzForNext;
    - case 11: zzIsFinal = true; zzState = 10; break zzForNext;
    - default: zzIsFinal = true; zzNoLookAhead = true; zzState = 8; break zzForNext;
    - }
    -
    - case 1:
    - switch (zzInput) {
    - case 1: zzIsFinal = true; zzState = 11; break zzForNext;
    - case 2: zzIsFinal = true; zzState = 12; break zzForNext;
    - case 3: zzIsFinal = true; zzState = 13; break zzForNext;
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; zzState = 14; break zzForNext;
    - case 9: zzIsFinal = true; zzState = 15; break zzForNext;
    - case 11: zzIsFinal = true; zzState = 16; break zzForNext;
    - default: zzIsFinal = true; zzNoLookAhead = true; zzState = 8; break zzForNext;
    - }
    -
    - case 2:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; zzState = 17; break zzForNext;
    - case 9: zzIsFinal = true; zzState = 18; break zzForNext;
    - case 12: zzIsFinal = true; zzState = 19; break zzForNext;
    - case 23: zzIsFinal = true; zzState = 20; break zzForNext;
    - case 45: zzIsFinal = true; zzState = 21; break zzForNext;
    - default: zzIsFinal = true; zzNoLookAhead = true; zzState = 8; break zzForNext;
    - }
    -
    - case 3:
    - switch (zzInput) {
    - case 9: zzIsFinal = true; zzState = 22; break zzForNext;
    - case 15: zzIsFinal = true; zzState = 23; break zzForNext;
    - case 19: zzIsFinal = true; zzState = 24; break zzForNext;
    - case 22: zzIsFinal = true; zzState = 25; break zzForNext;
    - case 28: zzIsFinal = true; zzState = 26; break zzForNext;
    - case 41: zzIsFinal = true; zzState = 27; break zzForNext;
    - default: zzIsFinal = true; zzNoLookAhead = true; zzState = 8; break zzForNext;
    - }
    -
    - case 4:
    - switch (zzInput) {
    - case 6:
    - case 7: zzIsFinal = true; zzState = 29; break zzForNext;
    - case 8: zzIsFinal = true; zzState = 30; break zzForNext;
    - case 9: zzIsFinal = true; zzState = 31; break zzForNext;
    - case 31: zzIsFinal = true; zzState = 32; break zzForNext;
    - case 32: zzIsFinal = true; zzState = 33; break zzForNext;
    - default: zzIsFinal = true; zzNoLookAhead = true; zzState = 28; break zzForNext;
    - }
    -
    - case 5:
    - switch (zzInput) {
    - case 7:
    - case 8:
    - case 11: zzIsFinal = true; zzState = 35; break zzForNext;
    - case 9: zzIsFinal = true; zzState = 36; break zzForNext;
    - case 12: zzIsFinal = true; zzState = 37; break zzForNext;
    - case 31: zzIsFinal = true; zzState = 38; break zzForNext;
    - case 41: zzIsFinal = true; zzState = 39; break zzForNext;
    - default: zzIsFinal = true; zzNoLookAhead = true; zzState = 34; break zzForNext;
    - }
    -
    - case 6:
    - switch (zzInput) {
    - case 7:
    - case 8:
    - case 11: zzIsFinal = true; zzState = 35; break zzForNext;
    - case 32: zzIsFinal = true; zzState = 38; break zzForNext;
    - case 41: zzIsFinal = true; zzState = 39; break zzForNext;
    - case 9: zzIsFinal = true; zzState = 40; break zzForNext;
    - default: zzIsFinal = true; zzNoLookAhead = true; zzState = 34; break zzForNext;
    - }
    -
    - case 7:
    - switch (zzInput) {
    - case 11: zzIsFinal = true; zzState = 35; break zzForNext;
    - case 12:
    - case 41: zzIsFinal = true; zzState = 39; break zzForNext;
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; zzState = 41; break zzForNext;
    - case 9: zzIsFinal = true; zzState = 42; break zzForNext;
    - case 31:
    - case 32: zzIsFinal = true; zzState = 43; break zzForNext;
    - default: zzIsFinal = true; zzNoLookAhead = true; zzState = 34; break zzForNext;
    - }
    -
    - case 9:
    - switch (zzInput) {
    - case 11: zzState = 44; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 10:
    - switch (zzInput) {
    - case 9: zzState = 45; break zzForNext;
    - case 16: zzState = 46; break zzForNext;
    - case 24: zzState = 47; break zzForNext;
    - case 41: zzState = 48; break zzForNext;
    - case 44: zzState = 49; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 11:
    - switch (zzInput) {
    - case 2: zzIsFinal = true; zzNoLookAhead = true; zzState = 50; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 12:
    - switch (zzInput) {
    - case 1: zzIsFinal = true; zzNoLookAhead = true; zzState = 51; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 13:
    - switch (zzInput) {
    - case 4: zzState = 52; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 14:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 53; break zzForNext;
    - case 9: zzState = 54; break zzForNext;
    - case 11: zzState = 55; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 15:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 53; break zzForNext;
    - case 11: zzState = 56; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 16:
    - switch (zzInput) {
    - case 16: zzState = 46; break zzForNext;
    - case 24: zzState = 47; break zzForNext;
    - case 41: zzState = 48; break zzForNext;
    - case 44: zzState = 49; break zzForNext;
    - case 9: zzState = 57; break zzForNext;
    - case 12: zzState = 58; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 17:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 59; break zzForNext;
    - case 9: zzState = 60; break zzForNext;
    - case 12: zzState = 61; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 18:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 59; break zzForNext;
    - case 12: zzState = 61; break zzForNext;
    - case 23: zzState = 62; break zzForNext;
    - case 45: zzState = 63; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 19:
    - switch (zzInput) {
    - case 9: zzState = 64; break zzForNext;
    - case 46: zzIsFinal = true; zzState = 65; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 20:
    - switch (zzInput) {
    - case 9: zzState = 66; break zzForNext;
    - case 29: zzState = 67; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 21:
    - switch (zzInput) {
    - case 9: zzState = 68; break zzForNext;
    - case 23: zzState = 69; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 22:
    - switch (zzInput) {
    - case 15: zzState = 70; break zzForNext;
    - case 19: zzState = 71; break zzForNext;
    - case 22: zzState = 72; break zzForNext;
    - case 28: zzState = 73; break zzForNext;
    - case 41: zzState = 74; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 23:
    - switch (zzInput) {
    - case 9: zzState = 75; break zzForNext;
    - case 43: zzState = 76; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 24:
    - switch (zzInput) {
    - case 9: zzState = 77; break zzForNext;
    - case 18: zzState = 78; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 25:
    - switch (zzInput) {
    - case 9: zzState = 79; break zzForNext;
    - case 43: zzState = 80; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 26:
    - switch (zzInput) {
    - case 9: zzState = 81; break zzForNext;
    - case 46: zzIsFinal = true; zzState = 82; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 27:
    - switch (zzInput) {
    - case 9: zzState = 83; break zzForNext;
    - case 46: zzIsFinal = true; zzState = 84; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 29:
    - switch (zzInput) {
    - case 6:
    - case 7: zzIsFinal = true; break zzForNext;
    - case 8: zzState = 85; break zzForNext;
    - case 9: zzIsFinal = true; zzState = 86; break zzForNext;
    - default: zzIsFinal = true; zzNoLookAhead = true; zzState = 28; break zzForNext;
    - }
    -
    - case 30:
    - switch (zzInput) {
    - case 6:
    - case 7: zzIsFinal = true; zzState = 29; break zzForNext;
    - case 8: zzState = 85; break zzForNext;
    - case 9: zzIsFinal = true; zzState = 86; break zzForNext;
    - default: zzIsFinal = true; zzNoLookAhead = true; zzState = 28; break zzForNext;
    - }
    -
    - case 31:
    - switch (zzInput) {
    - case 31: zzIsFinal = true; zzState = 32; break zzForNext;
    - case 32: zzIsFinal = true; zzState = 33; break zzForNext;
    - case 6:
    - case 7:
    - case 8: zzState = 85; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 32:
    - switch (zzInput) {
    - case 9: zzIsFinal = true; zzNoLookAhead = true; zzState = 87; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 33:
    - switch (zzInput) {
    - case 9: zzIsFinal = true; zzNoLookAhead = true; zzState = 88; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 35:
    - switch (zzInput) {
    - case 9: zzIsFinal = true; zzNoLookAhead = true; zzState = 89; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 36:
    - switch (zzInput) {
    - case 7:
    - case 8:
    - case 11: zzIsFinal = true; zzState = 35; break zzForNext;
    - case 31: zzIsFinal = true; zzState = 38; break zzForNext;
    - case 12: zzState = 90; break zzForNext;
    - case 41: zzState = 91; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 37:
    - switch (zzInput) {
    - case 9: zzState = 92; break zzForNext;
    - case 46: zzIsFinal = true; zzState = 93; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 38:
    - switch (zzInput) {
    - case 9: zzIsFinal = true; zzNoLookAhead = true; zzState = 94; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 39:
    - switch (zzInput) {
    - case 46: zzIsFinal = true; zzState = 35; break zzForNext;
    - case 9: zzState = 95; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 40:
    - switch (zzInput) {
    - case 7:
    - case 8:
    - case 11: zzIsFinal = true; zzState = 35; break zzForNext;
    - case 32: zzIsFinal = true; zzState = 38; break zzForNext;
    - case 41: zzState = 91; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 41:
    - switch (zzInput) {
    - case 9: zzIsFinal = true; zzNoLookAhead = true; zzState = 96; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 42:
    - switch (zzInput) {
    - case 11: zzIsFinal = true; zzState = 35; break zzForNext;
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; zzState = 41; break zzForNext;
    - case 31:
    - case 32: zzIsFinal = true; zzState = 43; break zzForNext;
    - case 12:
    - case 41: zzState = 91; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 43:
    - switch (zzInput) {
    - case 9: zzIsFinal = true; zzNoLookAhead = true; zzState = 97; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 44:
    - switch (zzInput) {
    - case 9: zzState = 45; break zzForNext;
    - case 16: zzState = 46; break zzForNext;
    - case 24: zzState = 47; break zzForNext;
    - case 41: zzState = 48; break zzForNext;
    - case 44: zzState = 49; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 45:
    - switch (zzInput) {
    - case 16: zzState = 46; break zzForNext;
    - case 24: zzState = 47; break zzForNext;
    - case 41: zzState = 48; break zzForNext;
    - case 44: zzState = 49; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 46:
    - switch (zzInput) {
    - case 9: zzState = 98; break zzForNext;
    - case 17: zzState = 99; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 47:
    - switch (zzInput) {
    - case 9: zzState = 100; break zzForNext;
    - case 20: zzState = 101; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 48:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: break zzForNext;
    - case 9: zzState = 102; break zzForNext;
    - case 42: zzState = 103; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 49:
    - switch (zzInput) {
    - case 9: zzState = 104; break zzForNext;
    - case 30: zzState = 105; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 52:
    - switch (zzInput) {
    - case 5: zzIsFinal = true; zzNoLookAhead = true; zzState = 106; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 53:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: break zzForNext;
    - case 9: zzState = 54; break zzForNext;
    - case 11: zzState = 55; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 54:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 53; break zzForNext;
    - case 11: zzState = 55; break zzForNext;
    - case 9: zzState = 107; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 55:
    - switch (zzInput) {
    - case 12: zzState = 58; break zzForNext;
    - case 9: zzState = 108; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 56:
    - switch (zzInput) {
    - case 16: zzState = 46; break zzForNext;
    - case 24: zzState = 47; break zzForNext;
    - case 41: zzState = 48; break zzForNext;
    - case 44: zzState = 49; break zzForNext;
    - case 9: zzState = 57; break zzForNext;
    - case 12: zzState = 58; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 57:
    - switch (zzInput) {
    - case 16: zzState = 46; break zzForNext;
    - case 24: zzState = 47; break zzForNext;
    - case 41: zzState = 48; break zzForNext;
    - case 44: zzState = 49; break zzForNext;
    - case 12: zzState = 58; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 58:
    - switch (zzInput) {
    - case 9: zzState = 109; break zzForNext;
    - case 13: zzState = 110; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 59:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: break zzForNext;
    - case 9: zzState = 60; break zzForNext;
    - case 12: zzState = 61; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 60:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 59; break zzForNext;
    - case 12: zzState = 61; break zzForNext;
    - case 9: zzState = 111; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 61:
    - switch (zzInput) {
    - case 9: zzState = 64; break zzForNext;
    - case 46: zzIsFinal = true; zzState = 65; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 62:
    - switch (zzInput) {
    - case 9: zzState = 66; break zzForNext;
    - case 29: zzState = 67; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 63:
    - switch (zzInput) {
    - case 9: zzState = 68; break zzForNext;
    - case 23: zzState = 69; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 64:
    - switch (zzInput) {
    - case 46: zzIsFinal = true; zzState = 65; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 65:
    - switch (zzInput) {
    - case 9: zzIsFinal = true; zzNoLookAhead = true; zzState = 112; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 66:
    - switch (zzInput) {
    - case 29: zzState = 67; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 67:
    - switch (zzInput) {
    - case 9: zzState = 113; break zzForNext;
    - case 19: zzState = 114; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 68:
    - switch (zzInput) {
    - case 23: zzState = 69; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 69:
    - switch (zzInput) {
    - case 9: zzState = 115; break zzForNext;
    - case 37: zzState = 116; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 70:
    - switch (zzInput) {
    - case 9: zzState = 75; break zzForNext;
    - case 43: zzState = 76; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 71:
    - switch (zzInput) {
    - case 9: zzState = 77; break zzForNext;
    - case 18: zzState = 78; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 72:
    - switch (zzInput) {
    - case 9: zzState = 79; break zzForNext;
    - case 43: zzState = 80; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 73:
    - switch (zzInput) {
    - case 9: zzState = 81; break zzForNext;
    - case 46: zzIsFinal = true; zzState = 82; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 74:
    - switch (zzInput) {
    - case 9: zzState = 83; break zzForNext;
    - case 46: zzIsFinal = true; zzState = 84; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 75:
    - switch (zzInput) {
    - case 43: zzState = 76; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 76:
    - switch (zzInput) {
    - case 9: zzState = 117; break zzForNext;
    - case 29: zzState = 118; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 77:
    - switch (zzInput) {
    - case 18: zzState = 78; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 78:
    - switch (zzInput) {
    - case 9: zzState = 119; break zzForNext;
    - case 29: zzState = 120; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 79:
    - switch (zzInput) {
    - case 43: zzState = 80; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 80:
    - switch (zzInput) {
    - case 9: zzState = 121; break zzForNext;
    - case 38: zzState = 122; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 81:
    - switch (zzInput) {
    - case 46: zzIsFinal = true; zzState = 82; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 82:
    - switch (zzInput) {
    - case 9: zzIsFinal = true; zzNoLookAhead = true; zzState = 123; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 83:
    - switch (zzInput) {
    - case 46: zzIsFinal = true; zzState = 84; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 84:
    - switch (zzInput) {
    - case 9: zzIsFinal = true; zzNoLookAhead = true; zzState = 124; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 85:
    - switch (zzInput) {
    - case 6:
    - case 7: zzIsFinal = true; zzState = 29; break zzForNext;
    - case 8: break zzForNext;
    - case 9: zzIsFinal = true; zzState = 86; break zzForNext;
    - default: zzIsFinal = true; zzNoLookAhead = true; zzState = 28; break zzForNext;
    - }
    -
    - case 86:
    - switch (zzInput) {
    - case 6:
    - case 7: zzIsFinal = true; zzState = 29; break zzForNext;
    - case 8: zzState = 85; break zzForNext;
    - case 9: zzIsFinal = true; zzState = 125; break zzForNext;
    - default: zzIsFinal = true; zzNoLookAhead = true; zzState = 28; break zzForNext;
    - }
    -
    - case 90:
    - switch (zzInput) {
    - case 9: zzState = 92; break zzForNext;
    - case 46: zzIsFinal = true; zzState = 93; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 91:
    - switch (zzInput) {
    - case 46: zzIsFinal = true; zzState = 35; break zzForNext;
    - case 9: zzState = 95; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 92:
    - switch (zzInput) {
    - case 46: zzIsFinal = true; zzState = 93; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 93:
    - switch (zzInput) {
    - case 9: zzIsFinal = true; zzNoLookAhead = true; zzState = 126; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 95:
    - switch (zzInput) {
    - case 46: zzIsFinal = true; zzState = 35; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 98:
    - switch (zzInput) {
    - case 17: zzState = 99; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 99:
    - switch (zzInput) {
    - case 9: zzState = 127; break zzForNext;
    - case 18: zzState = 128; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 100:
    - switch (zzInput) {
    - case 20: zzState = 101; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 101:
    - switch (zzInput) {
    - case 9: zzState = 129; break zzForNext;
    - case 14: zzState = 130; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 102:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 48; break zzForNext;
    - case 42: zzState = 103; break zzForNext;
    - case 9: zzState = 131; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 103:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: break zzForNext;
    - case 9: zzState = 132; break zzForNext;
    - case 20: zzState = 133; break zzForNext;
    - case 22: zzState = 134; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 104:
    - switch (zzInput) {
    - case 30: zzState = 105; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 105:
    - switch (zzInput) {
    - case 9: zzState = 135; break zzForNext;
    - case 22: zzState = 136; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 107:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 53; break zzForNext;
    - case 11: zzState = 55; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 108:
    - switch (zzInput) {
    - case 12: zzState = 58; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 109:
    - switch (zzInput) {
    - case 13: zzState = 110; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 110:
    - switch (zzInput) {
    - case 9: zzState = 137; break zzForNext;
    - case 14: zzState = 138; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 111:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 59; break zzForNext;
    - case 12: zzState = 61; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 113:
    - switch (zzInput) {
    - case 19: zzState = 114; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 114:
    - switch (zzInput) {
    - case 9: zzState = 139; break zzForNext;
    - case 18: zzState = 140; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 115:
    - switch (zzInput) {
    - case 37: zzState = 116; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 116:
    - switch (zzInput) {
    - case 9: zzState = 141; break zzForNext;
    - case 30: zzState = 142; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 117:
    - switch (zzInput) {
    - case 29: zzState = 118; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 118:
    - switch (zzInput) {
    - case 9: zzState = 143; break zzForNext;
    - case 38: zzState = 144; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 119:
    - switch (zzInput) {
    - case 29: zzState = 120; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 120:
    - switch (zzInput) {
    - case 9: zzState = 145; break zzForNext;
    - case 20: zzState = 146; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 121:
    - switch (zzInput) {
    - case 38: zzState = 122; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 122:
    - switch (zzInput) {
    - case 9: zzState = 147; break zzForNext;
    - case 23: zzState = 148; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 125:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 85; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 127:
    - switch (zzInput) {
    - case 18: zzState = 128; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 128:
    - switch (zzInput) {
    - case 9: zzState = 149; break zzForNext;
    - case 19: zzState = 150; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 129:
    - switch (zzInput) {
    - case 14: zzState = 130; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 130:
    - switch (zzInput) {
    - case 9: zzState = 151; break zzForNext;
    - case 15: zzState = 152; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 131:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 48; break zzForNext;
    - case 42: zzState = 103; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 132:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 103; break zzForNext;
    - case 20: zzState = 133; break zzForNext;
    - case 22: zzState = 134; break zzForNext;
    - case 9: zzState = 153; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 133:
    - switch (zzInput) {
    - case 9: zzState = 154; break zzForNext;
    - case 43: zzState = 155; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 134:
    - switch (zzInput) {
    - case 9: zzState = 156; break zzForNext;
    - case 43: zzState = 157; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 135:
    - switch (zzInput) {
    - case 22: zzState = 136; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 136:
    - switch (zzInput) {
    - case 9: zzState = 158; break zzForNext;
    - case 33: zzState = 159; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 137:
    - switch (zzInput) {
    - case 14: zzState = 138; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 138:
    - switch (zzInput) {
    - case 9: zzState = 160; break zzForNext;
    - case 15: zzState = 161; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 139:
    - switch (zzInput) {
    - case 18: zzState = 140; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 140:
    - switch (zzInput) {
    - case 9: zzState = 162; break zzForNext;
    - case 17: zzState = 163; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 141:
    - switch (zzInput) {
    - case 30: zzState = 142; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 142:
    - switch (zzInput) {
    - case 9: zzState = 164; break zzForNext;
    - case 27: zzState = 165; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 143:
    - switch (zzInput) {
    - case 38: zzState = 144; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 144:
    - switch (zzInput) {
    - case 9: zzState = 166; break zzForNext;
    - case 25: zzState = 167; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 145:
    - switch (zzInput) {
    - case 20: zzState = 146; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 146:
    - switch (zzInput) {
    - case 9: zzState = 168; break zzForNext;
    - case 23: zzState = 169; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 147:
    - switch (zzInput) {
    - case 23: zzState = 148; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 148:
    - switch (zzInput) {
    - case 9: zzState = 170; break zzForNext;
    - case 23: zzState = 171; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 149:
    - switch (zzInput) {
    - case 19: zzState = 150; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 150:
    - switch (zzInput) {
    - case 9: zzState = 172; break zzForNext;
    - case 20: zzState = 173; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 151:
    - switch (zzInput) {
    - case 15: zzState = 152; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 152:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: break zzForNext;
    - case 9: zzState = 174; break zzForNext;
    - case 13: zzState = 175; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 153:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 103; break zzForNext;
    - case 20: zzState = 133; break zzForNext;
    - case 22: zzState = 134; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 154:
    - switch (zzInput) {
    - case 43: zzState = 155; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 155:
    - switch (zzInput) {
    - case 9: zzState = 176; break zzForNext;
    - case 38: zzState = 177; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 156:
    - switch (zzInput) {
    - case 43: zzState = 157; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 157:
    - switch (zzInput) {
    - case 9: zzState = 178; break zzForNext;
    - case 38: zzState = 179; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 158:
    - switch (zzInput) {
    - case 33: zzState = 159; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 159:
    - switch (zzInput) {
    - case 9: zzState = 180; break zzForNext;
    - case 17: zzState = 181; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 160:
    - switch (zzInput) {
    - case 15: zzState = 161; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 161:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; zzState = 182; break zzForNext;
    - case 9: zzState = 183; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 162:
    - switch (zzInput) {
    - case 17: zzState = 163; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 163:
    - switch (zzInput) {
    - case 9: zzState = 184; break zzForNext;
    - case 27: zzState = 185; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 164:
    - switch (zzInput) {
    - case 27: zzState = 165; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 165:
    - switch (zzInput) {
    - case 9: zzState = 186; break zzForNext;
    - case 18: zzState = 187; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 166:
    - switch (zzInput) {
    - case 25: zzState = 167; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 167:
    - switch (zzInput) {
    - case 9: zzState = 188; break zzForNext;
    - case 43: zzState = 189; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 168:
    - switch (zzInput) {
    - case 23: zzState = 169; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 169:
    - switch (zzInput) {
    - case 9: zzState = 190; break zzForNext;
    - case 29: zzState = 191; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 170:
    - switch (zzInput) {
    - case 23: zzState = 171; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 171:
    - switch (zzInput) {
    - case 9: zzState = 192; break zzForNext;
    - case 29: zzState = 193; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 172:
    - switch (zzInput) {
    - case 20: zzState = 173; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 173:
    - switch (zzInput) {
    - case 9: zzState = 194; break zzForNext;
    - case 21: zzState = 195; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 174:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 152; break zzForNext;
    - case 13: zzState = 175; break zzForNext;
    - case 9: zzState = 196; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 175:
    - switch (zzInput) {
    - case 9: zzState = 197; break zzForNext;
    - case 14: zzState = 198; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 176:
    - switch (zzInput) {
    - case 38: zzState = 177; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 177:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; zzState = 199; break zzForNext;
    - case 9: zzState = 200; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 178:
    - switch (zzInput) {
    - case 38: zzState = 179; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 179:
    - switch (zzInput) {
    - case 23: zzState = 177; break zzForNext;
    - case 9: zzState = 201; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 180:
    - switch (zzInput) {
    - case 17: zzState = 181; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 181:
    - switch (zzInput) {
    - case 9: zzState = 202; break zzForNext;
    - case 27: zzState = 203; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 182:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; break zzForNext;
    - case 9: zzIsFinal = true; zzState = 204; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 183:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; zzState = 182; break zzForNext;
    - case 9: zzState = 205; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 184:
    - switch (zzInput) {
    - case 27: zzState = 185; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 185:
    - switch (zzInput) {
    - case 9: zzState = 206; break zzForNext;
    - case 29: zzState = 207; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 186:
    - switch (zzInput) {
    - case 18: zzState = 187; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 187:
    - switch (zzInput) {
    - case 9: zzState = 208; break zzForNext;
    - case 29: zzState = 209; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 188:
    - switch (zzInput) {
    - case 43: zzState = 189; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 189:
    - switch (zzInput) {
    - case 9: zzState = 210; break zzForNext;
    - case 38: zzState = 211; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 190:
    - switch (zzInput) {
    - case 29: zzState = 191; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 191:
    - switch (zzInput) {
    - case 9: zzState = 212; break zzForNext;
    - case 20: zzState = 213; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 192:
    - switch (zzInput) {
    - case 29: zzState = 193; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 193:
    - switch (zzInput) {
    - case 9: zzState = 214; break zzForNext;
    - case 19: zzState = 215; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 194:
    - switch (zzInput) {
    - case 21: zzState = 195; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 195:
    - switch (zzInput) {
    - case 9: zzState = 216; break zzForNext;
    - case 22: zzState = 217; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 196:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 152; break zzForNext;
    - case 13: zzState = 175; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 197:
    - switch (zzInput) {
    - case 14: zzState = 198; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 198:
    - switch (zzInput) {
    - case 9: zzState = 218; break zzForNext;
    - case 15: zzState = 219; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 199:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; break zzForNext;
    - case 9: zzIsFinal = true; zzState = 220; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 200:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; zzState = 199; break zzForNext;
    - case 9: zzState = 221; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 201:
    - switch (zzInput) {
    - case 23: zzState = 177; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 202:
    - switch (zzInput) {
    - case 27: zzState = 203; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 203:
    - switch (zzInput) {
    - case 9: zzState = 222; break zzForNext;
    - case 37: zzState = 223; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 204:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; zzState = 182; break zzForNext;
    - case 9: zzState = 205; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 205:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; zzState = 182; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 206:
    - switch (zzInput) {
    - case 29: zzState = 207; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 207:
    - switch (zzInput) {
    - case 9: zzState = 224; break zzForNext;
    - case 38: zzState = 225; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 208:
    - switch (zzInput) {
    - case 29: zzState = 209; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 209:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: break zzForNext;
    - case 9: zzState = 226; break zzForNext;
    - case 10: zzIsFinal = true; zzState = 227; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 210:
    - switch (zzInput) {
    - case 38: zzState = 211; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 211:
    - switch (zzInput) {
    - case 9: zzState = 228; break zzForNext;
    - case 23: zzState = 229; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 212:
    - switch (zzInput) {
    - case 20: zzState = 213; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 213:
    - switch (zzInput) {
    - case 9: zzState = 230; break zzForNext;
    - case 20: zzState = 231; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 214:
    - switch (zzInput) {
    - case 19: zzState = 215; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 215:
    - switch (zzInput) {
    - case 9: zzState = 232; break zzForNext;
    - case 18: zzState = 233; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 216:
    - switch (zzInput) {
    - case 22: zzState = 217; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 217:
    - switch (zzInput) {
    - case 9: zzState = 234; break zzForNext;
    - case 23: zzState = 235; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 218:
    - switch (zzInput) {
    - case 15: zzState = 219; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 219:
    - switch (zzInput) {
    - case 9: zzState = 236; break zzForNext;
    - case 29: zzState = 237; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 220:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; zzState = 199; break zzForNext;
    - case 9: zzState = 221; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 221:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; zzState = 199; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 222:
    - switch (zzInput) {
    - case 37: zzState = 223; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 223:
    - switch (zzInput) {
    - case 9: zzState = 238; break zzForNext;
    - case 23: zzState = 239; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 224:
    - switch (zzInput) {
    - case 38: zzState = 225; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 225:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: break zzForNext;
    - case 9: zzState = 240; break zzForNext;
    - case 10: zzIsFinal = true; zzState = 241; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 226:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 209; break zzForNext;
    - case 10: zzIsFinal = true; zzState = 227; break zzForNext;
    - case 9: zzState = 242; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 227:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; zzState = 243; break zzForNext;
    - case 9: zzState = 244; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 228:
    - switch (zzInput) {
    - case 23: zzState = 229; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 229:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: break zzForNext;
    - case 9: zzState = 245; break zzForNext;
    - case 10: zzIsFinal = true; zzState = 246; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 230:
    - switch (zzInput) {
    - case 20: zzState = 231; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 231:
    - switch (zzInput) {
    - case 9: zzState = 247; break zzForNext;
    - case 21: zzState = 248; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 232:
    - switch (zzInput) {
    - case 18: zzState = 233; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 233:
    - switch (zzInput) {
    - case 9: zzState = 249; break zzForNext;
    - case 17: zzState = 250; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 234:
    - switch (zzInput) {
    - case 23: zzState = 235; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 235:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: break zzForNext;
    - case 9: zzState = 251; break zzForNext;
    - case 24: zzState = 252; break zzForNext;
    - case 34: zzState = 253; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 236:
    - switch (zzInput) {
    - case 29: zzState = 237; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 237:
    - switch (zzInput) {
    - case 9: zzState = 254; break zzForNext;
    - case 30: zzState = 255; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 238:
    - switch (zzInput) {
    - case 23: zzState = 239; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 239:
    - switch (zzInput) {
    - case 9: zzState = 256; break zzForNext;
    - case 19: zzState = 257; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 240:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 225; break zzForNext;
    - case 10: zzIsFinal = true; zzState = 241; break zzForNext;
    - case 9: zzState = 258; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 241:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; zzState = 259; break zzForNext;
    - case 9: zzState = 260; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 242:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 209; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 243:
    - switch (zzInput) {
    - case 9: zzIsFinal = true; zzState = 227; break zzForNext;
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 244:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; zzState = 243; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 245:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 229; break zzForNext;
    - case 10: zzIsFinal = true; zzState = 246; break zzForNext;
    - case 9: zzState = 261; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 246:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; zzState = 262; break zzForNext;
    - case 9: zzState = 263; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 247:
    - switch (zzInput) {
    - case 21: zzState = 248; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 248:
    - switch (zzInput) {
    - case 9: zzState = 264; break zzForNext;
    - case 22: zzState = 265; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 249:
    - switch (zzInput) {
    - case 17: zzState = 250; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 250:
    - switch (zzInput) {
    - case 9: zzState = 266; break zzForNext;
    - case 27: zzState = 267; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 251:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 235; break zzForNext;
    - case 24: zzState = 252; break zzForNext;
    - case 34: zzState = 253; break zzForNext;
    - case 9: zzState = 268; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 252:
    - switch (zzInput) {
    - case 9: zzState = 269; break zzForNext;
    - case 20: zzState = 270; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 253:
    - switch (zzInput) {
    - case 9: zzState = 271; break zzForNext;
    - case 14: zzState = 272; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 254:
    - switch (zzInput) {
    - case 30: zzState = 255; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 255:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: break zzForNext;
    - case 9: zzState = 273; break zzForNext;
    - case 10: zzState = 274; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 256:
    - switch (zzInput) {
    - case 19: zzState = 257; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 257:
    - switch (zzInput) {
    - case 9: zzState = 275; break zzForNext;
    - case 20: zzState = 276; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 258:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 225; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 259:
    - switch (zzInput) {
    - case 9: zzIsFinal = true; zzState = 241; break zzForNext;
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 260:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; zzState = 259; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 261:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 229; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 262:
    - switch (zzInput) {
    - case 9: zzIsFinal = true; zzState = 246; break zzForNext;
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 263:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; zzState = 262; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 264:
    - switch (zzInput) {
    - case 22: zzState = 265; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 265:
    - switch (zzInput) {
    - case 9: zzState = 277; break zzForNext;
    - case 23: zzState = 278; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 266:
    - switch (zzInput) {
    - case 27: zzState = 267; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 267:
    - switch (zzInput) {
    - case 9: zzState = 279; break zzForNext;
    - case 29: zzState = 280; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 268:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 235; break zzForNext;
    - case 24: zzState = 252; break zzForNext;
    - case 34: zzState = 253; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 269:
    - switch (zzInput) {
    - case 20: zzState = 270; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 270:
    - switch (zzInput) {
    - case 9: zzState = 281; break zzForNext;
    - case 14: zzState = 282; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 271:
    - switch (zzInput) {
    - case 14: zzState = 272; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 272:
    - switch (zzInput) {
    - case 9: zzState = 283; break zzForNext;
    - case 15: zzState = 284; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 273:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 255; break zzForNext;
    - case 10: zzState = 274; break zzForNext;
    - case 9: zzState = 285; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 274:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: break zzForNext;
    - case 9: zzState = 286; break zzForNext;
    - case 31:
    - case 32: zzState = 287; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 275:
    - switch (zzInput) {
    - case 20: zzState = 276; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 276:
    - switch (zzInput) {
    - case 9: zzState = 288; break zzForNext;
    - case 27: zzState = 289; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 277:
    - switch (zzInput) {
    - case 23: zzState = 278; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 278:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: break zzForNext;
    - case 9: zzState = 290; break zzForNext;
    - case 10: zzIsFinal = true; zzState = 291; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 279:
    - switch (zzInput) {
    - case 29: zzState = 280; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 280:
    - switch (zzInput) {
    - case 9: zzState = 292; break zzForNext;
    - case 38: zzState = 293; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 281:
    - switch (zzInput) {
    - case 14: zzState = 282; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 282:
    - switch (zzInput) {
    - case 9: zzState = 294; break zzForNext;
    - case 15: zzState = 295; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 283:
    - switch (zzInput) {
    - case 15: zzState = 284; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 284:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: break zzForNext;
    - case 9: zzState = 296; break zzForNext;
    - case 22: zzState = 297; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 285:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 255; break zzForNext;
    - case 10: zzState = 274; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 286:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 274; break zzForNext;
    - case 31:
    - case 32: zzState = 287; break zzForNext;
    - case 9: zzState = 298; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 287:
    - switch (zzInput) {
    - case 9: zzState = 299; break zzForNext;
    - case 24: zzState = 300; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 288:
    - switch (zzInput) {
    - case 27: zzState = 289; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 289:
    - switch (zzInput) {
    - case 9: zzState = 301; break zzForNext;
    - case 45: zzState = 302; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 290:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 278; break zzForNext;
    - case 10: zzIsFinal = true; zzState = 291; break zzForNext;
    - case 9: zzState = 303; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 291:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; zzState = 304; break zzForNext;
    - case 9: zzState = 305; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 292:
    - switch (zzInput) {
    - case 38: zzState = 293; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 293:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: break zzForNext;
    - case 9: zzState = 306; break zzForNext;
    - case 10: zzIsFinal = true; zzState = 307; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 294:
    - switch (zzInput) {
    - case 15: zzState = 295; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 295:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: break zzForNext;
    - case 9: zzState = 308; break zzForNext;
    - case 22: zzState = 309; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 296:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 284; break zzForNext;
    - case 22: zzState = 297; break zzForNext;
    - case 9: zzState = 310; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 297:
    - switch (zzInput) {
    - case 9: zzState = 311; break zzForNext;
    - case 25: zzState = 312; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 298:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 274; break zzForNext;
    - case 31:
    - case 32: zzState = 287; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 299:
    - switch (zzInput) {
    - case 24: zzState = 300; break zzForNext;
    - case 9: zzState = 313; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 300:
    - switch (zzInput) {
    - case 9: zzState = 314; break zzForNext;
    - case 20: zzState = 315; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 301:
    - switch (zzInput) {
    - case 45: zzState = 302; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 302:
    - switch (zzInput) {
    - case 9: zzState = 316; break zzForNext;
    - case 23: zzState = 317; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 303:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 278; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 304:
    - switch (zzInput) {
    - case 9: zzIsFinal = true; zzState = 291; break zzForNext;
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 305:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; zzState = 304; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 306:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 293; break zzForNext;
    - case 10: zzIsFinal = true; zzState = 307; break zzForNext;
    - case 9: zzState = 318; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 307:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; zzState = 319; break zzForNext;
    - case 9: zzState = 320; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 308:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 295; break zzForNext;
    - case 22: zzState = 309; break zzForNext;
    - case 9: zzState = 321; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 309:
    - switch (zzInput) {
    - case 9: zzState = 322; break zzForNext;
    - case 25: zzState = 323; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 310:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 284; break zzForNext;
    - case 22: zzState = 297; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 311:
    - switch (zzInput) {
    - case 25: zzState = 312; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 312:
    - switch (zzInput) {
    - case 9: zzState = 324; break zzForNext;
    - case 26: zzState = 325; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 313:
    - switch (zzInput) {
    - case 24: zzState = 300; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 314:
    - switch (zzInput) {
    - case 20: zzState = 315; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 315:
    - switch (zzInput) {
    - case 9: zzState = 326; break zzForNext;
    - case 20: zzState = 327; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 316:
    - switch (zzInput) {
    - case 23: zzState = 317; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 317:
    - switch (zzInput) {
    - case 9: zzState = 328; break zzForNext;
    - case 35: zzState = 329; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 318:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 293; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 319:
    - switch (zzInput) {
    - case 9: zzIsFinal = true; zzState = 307; break zzForNext;
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 320:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzIsFinal = true; zzState = 319; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 321:
    - switch (zzInput) {
    - case 6:
    - case 7:
    - case 8: zzState = 295; break zzForNext;
    - case 22: zzState = 309; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 322:
    - switch (zzInput) {
    - case 25: zzState = 323; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 323:
    - switch (zzInput) {
    - case 9: zzState = 330; break zzForNext;
    - case 26: zzState = 331; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 324:
    - switch (zzInput) {
    - case 26: zzState = 325; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 325:
    - switch (zzInput) {
    - case 9: zzState = 332; break zzForNext;
    - case 15: zzState = 333; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 326:
    - switch (zzInput) {
    - case 20: zzState = 327; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 327:
    - switch (zzInput) {
    - case 9: zzState = 334; break zzForNext;
    - case 22: zzState = 335; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 328:
    - switch (zzInput) {
    - case 35: zzState = 329; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 329:
    - switch (zzInput) {
    - case 20: zzState = 133; break zzForNext;
    - case 22: zzState = 134; break zzForNext;
    - case 9: zzState = 336; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 330:
    - switch (zzInput) {
    - case 26: zzState = 331; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 331:
    - switch (zzInput) {
    - case 9: zzState = 337; break zzForNext;
    - case 15: zzState = 338; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 332:
    - switch (zzInput) {
    - case 15: zzState = 333; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 333:
    - switch (zzInput) {
    - case 9: zzState = 339; break zzForNext;
    - case 27: zzState = 340; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 334:
    - switch (zzInput) {
    - case 22: zzState = 335; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 335:
    - switch (zzInput) {
    - case 9: zzState = 341; break zzForNext;
    - case 33: zzState = 342; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 336:
    - switch (zzInput) {
    - case 20: zzState = 133; break zzForNext;
    - case 22: zzState = 134; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 337:
    - switch (zzInput) {
    - case 15: zzState = 338; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 338:
    - switch (zzInput) {
    - case 9: zzState = 343; break zzForNext;
    - case 27: zzState = 344; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 339:
    - switch (zzInput) {
    - case 27: zzState = 340; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 340:
    - switch (zzInput) {
    - case 9: zzState = 345; break zzForNext;
    - case 19: zzState = 346; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 341:
    - switch (zzInput) {
    - case 33: zzState = 342; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 342:
    - switch (zzInput) {
    - case 9: zzState = 347; break zzForNext;
    - case 28: zzState = 348; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 343:
    - switch (zzInput) {
    - case 27: zzState = 344; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 344:
    - switch (zzInput) {
    - case 9: zzState = 349; break zzForNext;
    - case 19: zzState = 350; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 345:
    - switch (zzInput) {
    - case 19: zzState = 346; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 346:
    - switch (zzInput) {
    - case 28: zzState = 351; break zzForNext;
    - case 8: break zzForAction;
    - default: break zzForNext;
    - }
    -
    - case 347:
    - switch (zzInput) {
    - case 28: zzState = 348; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 348:
    - switch (zzInput) {
    - case 9: zzState = 352; break zzForNext;
    - case 28: zzState = 353; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 349:
    - switch (zzInput) {
    - case 19: zzState = 350; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 350:
    - switch (zzInput) {
    - case 28: zzState = 354; break zzForNext;
    - case 8: break zzForAction;
    - default: break zzForNext;
    - }
    -
    - case 351:
    - switch (zzInput) {
    - case 9: zzState = 355; break zzForNext;
    - case 28: zzState = 356; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 346; break zzForNext;
    - }
    -
    - case 352:
    - switch (zzInput) {
    - case 28: zzState = 353; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 353:
    - switch (zzInput) {
    - case 9: zzState = 357; break zzForNext;
    - case 34: zzState = 358; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 354:
    - switch (zzInput) {
    - case 9: zzState = 359; break zzForNext;
    - case 28: zzState = 360; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 350; break zzForNext;
    - }
    -
    - case 355:
    - switch (zzInput) {
    - case 28: zzState = 356; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 346; break zzForNext;
    - }
    -
    - case 356:
    - switch (zzInput) {
    - case 28: break zzForNext;
    - case 9: zzState = 361; break zzForNext;
    - case 17: zzState = 362; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 346; break zzForNext;
    - }
    -
    - case 357:
    - switch (zzInput) {
    - case 34: zzState = 358; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 358:
    - switch (zzInput) {
    - case 9: zzState = 363; break zzForNext;
    - case 34: zzState = 364; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 359:
    - switch (zzInput) {
    - case 28: zzState = 360; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 350; break zzForNext;
    - }
    -
    - case 360:
    - switch (zzInput) {
    - case 28: break zzForNext;
    - case 9: zzState = 365; break zzForNext;
    - case 17: zzState = 366; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 350; break zzForNext;
    - }
    -
    - case 361:
    - switch (zzInput) {
    - case 28: zzState = 356; break zzForNext;
    - case 17: zzState = 362; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 346; break zzForNext;
    - }
    -
    - case 362:
    - switch (zzInput) {
    - case 28: zzState = 351; break zzForNext;
    - case 9: zzState = 367; break zzForNext;
    - case 20: zzState = 368; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 346; break zzForNext;
    - }
    -
    - case 363:
    - switch (zzInput) {
    - case 34: zzState = 364; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 364:
    - switch (zzInput) {
    - case 9: zzState = 369; break zzForNext;
    - case 34: zzState = 370; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 365:
    - switch (zzInput) {
    - case 28: zzState = 360; break zzForNext;
    - case 17: zzState = 366; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 350; break zzForNext;
    - }
    -
    - case 366:
    - switch (zzInput) {
    - case 28: zzState = 354; break zzForNext;
    - case 9: zzState = 371; break zzForNext;
    - case 20: zzState = 372; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 350; break zzForNext;
    - }
    -
    - case 367:
    - switch (zzInput) {
    - case 28: zzState = 351; break zzForNext;
    - case 20: zzState = 368; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 346; break zzForNext;
    - }
    -
    - case 368:
    - switch (zzInput) {
    - case 28: zzState = 351; break zzForNext;
    - case 9: zzState = 373; break zzForNext;
    - case 17: zzState = 374; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 346; break zzForNext;
    - }
    -
    - case 369:
    - switch (zzInput) {
    - case 34: zzState = 370; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 370:
    - switch (zzInput) {
    - case 9: zzState = 375; break zzForNext;
    - case 35: zzState = 376; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 371:
    - switch (zzInput) {
    - case 28: zzState = 354; break zzForNext;
    - case 20: zzState = 372; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 350; break zzForNext;
    - }
    -
    - case 372:
    - switch (zzInput) {
    - case 28: zzState = 354; break zzForNext;
    - case 9: zzState = 377; break zzForNext;
    - case 17: zzState = 378; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 350; break zzForNext;
    - }
    -
    - case 373:
    - switch (zzInput) {
    - case 28: zzState = 351; break zzForNext;
    - case 17: zzState = 374; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 346; break zzForNext;
    - }
    -
    - case 374:
    - switch (zzInput) {
    - case 28: zzState = 351; break zzForNext;
    - case 6:
    - case 7: zzState = 379; break zzForNext;
    - case 8: zzState = 380; break zzForNext;
    - default: zzState = 346; break zzForNext;
    - }
    -
    - case 375:
    - switch (zzInput) {
    - case 35: zzState = 376; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 376:
    - switch (zzInput) {
    - case 9: zzState = 381; break zzForNext;
    - case 34: zzState = 382; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 377:
    - switch (zzInput) {
    - case 28: zzState = 354; break zzForNext;
    - case 17: zzState = 378; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 350; break zzForNext;
    - }
    -
    - case 378:
    - switch (zzInput) {
    - case 28: zzState = 354; break zzForNext;
    - case 6:
    - case 7: zzState = 383; break zzForNext;
    - case 8: zzState = 384; break zzForNext;
    - case 9: zzState = 385; break zzForNext;
    - default: zzState = 350; break zzForNext;
    - }
    -
    - case 379:
    - switch (zzInput) {
    - case 28: zzState = 351; break zzForNext;
    - case 9: zzState = 386; break zzForNext;
    - case 34: zzState = 387; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 346; break zzForNext;
    - }
    -
    - case 380:
    - switch (zzInput) {
    - case 9: zzState = 388; break zzForNext;
    - case 34: zzState = 389; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 381:
    - switch (zzInput) {
    - case 34: zzState = 382; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 382:
    - switch (zzInput) {
    - case 9: zzState = 390; break zzForNext;
    - case 36: zzState = 391; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 383:
    - switch (zzInput) {
    - case 28: zzState = 354; break zzForNext;
    - case 9: zzState = 392; break zzForNext;
    - case 13: zzState = 393; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 350; break zzForNext;
    - }
    -
    - case 384:
    - switch (zzInput) {
    - case 9: zzState = 394; break zzForNext;
    - case 13: zzState = 395; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 385:
    - switch (zzInput) {
    - case 28: zzState = 354; break zzForNext;
    - case 6:
    - case 7: zzState = 383; break zzForNext;
    - case 8: zzState = 384; break zzForNext;
    - case 9: zzState = 396; break zzForNext;
    - default: zzState = 350; break zzForNext;
    - }
    -
    - case 386:
    - switch (zzInput) {
    - case 28: zzState = 351; break zzForNext;
    - case 34: zzState = 387; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 346; break zzForNext;
    - }
    -
    - case 387:
    - switch (zzInput) {
    - case 28: zzState = 351; break zzForNext;
    - case 9: zzState = 397; break zzForNext;
    - case 14: zzState = 398; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 346; break zzForNext;
    - }
    -
    - case 388:
    - switch (zzInput) {
    - case 34: zzState = 389; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 389:
    - switch (zzInput) {
    - case 9: zzState = 399; break zzForNext;
    - case 14: zzState = 400; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 390:
    - switch (zzInput) {
    - case 36: zzState = 391; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 391:
    - switch (zzInput) {
    - case 9: zzState = 401; break zzForNext;
    - case 35: zzState = 402; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 392:
    - switch (zzInput) {
    - case 28: zzState = 354; break zzForNext;
    - case 13: zzState = 393; break zzForNext;
    - case 9: zzState = 403; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 350; break zzForNext;
    - }
    -
    - case 393:
    - switch (zzInput) {
    - case 28: zzState = 354; break zzForNext;
    - case 9: zzState = 404; break zzForNext;
    - case 24: zzState = 405; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 350; break zzForNext;
    - }
    -
    - case 394:
    - switch (zzInput) {
    - case 13: zzState = 395; break zzForNext;
    - case 9: zzState = 406; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 395:
    - switch (zzInput) {
    - case 9: zzState = 407; break zzForNext;
    - case 24: zzState = 408; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 396:
    - switch (zzInput) {
    - case 28: zzState = 354; break zzForNext;
    - case 6:
    - case 7: zzState = 383; break zzForNext;
    - case 8: zzState = 384; break zzForNext;
    - default: zzState = 350; break zzForNext;
    - }
    -
    - case 397:
    - switch (zzInput) {
    - case 28: zzState = 351; break zzForNext;
    - case 14: zzState = 398; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 346; break zzForNext;
    - }
    -
    - case 398:
    - switch (zzInput) {
    - case 28: zzState = 351; break zzForNext;
    - case 9: zzState = 409; break zzForNext;
    - case 15: zzIsFinal = true; zzState = 410; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 346; break zzForNext;
    - }
    -
    - case 399:
    - switch (zzInput) {
    - case 14: zzState = 400; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 400:
    - switch (zzInput) {
    - case 9: zzState = 411; break zzForNext;
    - case 15: zzIsFinal = true; zzState = 412; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 401:
    - switch (zzInput) {
    - case 35: zzState = 402; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 402:
    - switch (zzInput) {
    - case 9: zzState = 413; break zzForNext;
    - case 18: zzState = 414; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 403:
    - switch (zzInput) {
    - case 28: zzState = 354; break zzForNext;
    - case 13: zzState = 393; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 350; break zzForNext;
    - }
    -
    - case 404:
    - switch (zzInput) {
    - case 28: zzState = 354; break zzForNext;
    - case 24: zzState = 405; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 350; break zzForNext;
    - }
    -
    - case 405:
    - switch (zzInput) {
    - case 28: zzState = 354; break zzForNext;
    - case 9: zzState = 415; break zzForNext;
    - case 20: zzState = 416; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 350; break zzForNext;
    - }
    -
    - case 406:
    - switch (zzInput) {
    - case 13: zzState = 395; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 407:
    - switch (zzInput) {
    - case 24: zzState = 408; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 408:
    - switch (zzInput) {
    - case 9: zzState = 417; break zzForNext;
    - case 20: zzState = 418; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 409:
    - switch (zzInput) {
    - case 28: zzState = 351; break zzForNext;
    - case 15: zzIsFinal = true; zzState = 410; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 346; break zzForNext;
    - }
    -
    - case 410:
    - switch (zzInput) {
    - case 28: zzState = 351; break zzForNext;
    - case 9: zzIsFinal = true; zzState = 419; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 346; break zzForNext;
    - }
    -
    - case 411:
    - switch (zzInput) {
    - case 15: zzIsFinal = true; zzState = 412; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 412:
    - switch (zzInput) {
    - case 9: zzIsFinal = true; zzNoLookAhead = true; zzState = 420; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 413:
    - switch (zzInput) {
    - case 18: zzState = 414; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 414:
    - switch (zzInput) {
    - case 9: zzState = 421; break zzForNext;
    - case 37: zzState = 422; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 415:
    - switch (zzInput) {
    - case 28: zzState = 354; break zzForNext;
    - case 20: zzState = 416; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 350; break zzForNext;
    - }
    -
    - case 416:
    - switch (zzInput) {
    - case 28: zzState = 354; break zzForNext;
    - case 9: zzState = 423; break zzForNext;
    - case 14: zzState = 424; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 350; break zzForNext;
    - }
    -
    - case 417:
    - switch (zzInput) {
    - case 20: zzState = 418; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 418:
    - switch (zzInput) {
    - case 9: zzState = 425; break zzForNext;
    - case 14: zzState = 426; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 419:
    - switch (zzInput) {
    - case 28: zzState = 351; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 346; break zzForNext;
    - }
    -
    - case 421:
    - switch (zzInput) {
    - case 37: zzState = 422; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 422:
    - switch (zzInput) {
    - case 9: zzState = 427; break zzForNext;
    - case 38: zzState = 428; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 423:
    - switch (zzInput) {
    - case 28: zzState = 354; break zzForNext;
    - case 14: zzState = 424; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 350; break zzForNext;
    - }
    -
    - case 424:
    - switch (zzInput) {
    - case 28: zzState = 354; break zzForNext;
    - case 9: zzState = 429; break zzForNext;
    - case 15: zzIsFinal = true; zzState = 430; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 350; break zzForNext;
    - }
    -
    - case 425:
    - switch (zzInput) {
    - case 14: zzState = 426; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 426:
    - switch (zzInput) {
    - case 9: zzState = 431; break zzForNext;
    - case 15: zzIsFinal = true; zzState = 432; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 427:
    - switch (zzInput) {
    - case 38: zzState = 428; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 428:
    - switch (zzInput) {
    - case 9: zzState = 433; break zzForNext;
    - case 28: zzState = 434; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 429:
    - switch (zzInput) {
    - case 28: zzState = 354; break zzForNext;
    - case 15: zzIsFinal = true; zzState = 430; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 350; break zzForNext;
    - }
    -
    - case 430:
    - switch (zzInput) {
    - case 28: zzState = 354; break zzForNext;
    - case 9: zzIsFinal = true; zzState = 435; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 350; break zzForNext;
    - }
    -
    - case 431:
    - switch (zzInput) {
    - case 15: zzIsFinal = true; zzState = 432; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 432:
    - switch (zzInput) {
    - case 9: zzIsFinal = true; zzNoLookAhead = true; zzState = 436; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 433:
    - switch (zzInput) {
    - case 28: zzState = 434; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 434:
    - switch (zzInput) {
    - case 9: zzState = 437; break zzForNext;
    - case 39: zzState = 438; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 435:
    - switch (zzInput) {
    - case 28: zzState = 354; break zzForNext;
    - case 8: break zzForAction;
    - default: zzState = 350; break zzForNext;
    - }
    -
    - case 437:
    - switch (zzInput) {
    - case 39: zzState = 438; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 438:
    - switch (zzInput) {
    - case 9: zzState = 439; break zzForNext;
    - case 40: zzState = 440; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 439:
    - switch (zzInput) {
    - case 40: zzState = 440; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 440:
    - switch (zzInput) {
    - case 9: zzState = 441; break zzForNext;
    - case 40: zzState = 442; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 441:
    - switch (zzInput) {
    - case 40: zzState = 442; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 442:
    - switch (zzInput) {
    - case 9: zzState = 443; break zzForNext;
    - case 40: zzState = 444; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 443:
    - switch (zzInput) {
    - case 40: zzState = 444; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 444:
    - switch (zzInput) {
    - case 28: zzState = 394; break zzForNext;
    - case 9: zzState = 445; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - case 445:
    - switch (zzInput) {
    - case 28: zzState = 394; break zzForNext;
    - default: break zzForAction;
    - }
    -
    - default:
    - // if this is ever reached, there is a serious bug in JFlex
    - zzScanError(ZZ_UNKNOWN_ERROR);
    - break;
    - } }
    -
    - if ( zzIsFinal ) {
    - zzAction = zzState;
    - zzMarkedPosL = zzCurrentPosL;
    - if ( zzNoLookAhead ) break zzForAction;
    - }
    -
    - }
    - }
    -
    - // store back cached position
    - zzMarkedPos = zzMarkedPosL;
    -
    - switch (zzAction < 0 ? zzAction : ZZ_ACTION[zzAction]) {
    - case 10:
    - { if (yychar == 0 ) {hasMore = false; return EncodingParserConstants.UTF16BE;}
    - }
    - case 26: break;
    - case 16:
    - { if (yychar == 0 ) {hasMore = false; return EncodingParserConstants.UTF83ByteBOM;}
    - }
    - case 27: break;
    - case 1:
    - { if(yychar > MAX_TO_SCAN) {hasMore=false; return EncodingParserConstants.MAX_CHARS_REACHED;}
    - }
    - case 28: break;
    - case 4:
    - { yybegin(SQ_STRING); string.setLength(0);
    - }
    - case 29: break;
    - case 8:
    - { yypushback(yylength());popState(); valueText = string.toString(); return EncodingParserConstants.UnDelimitedStringValue;
    - }
    - case 30: break;
    - case 5:
    - { string.append( yytext() );
    - }
    - case 31: break;
    - case 9:
    - { yypushback(yylength());popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTermintatedUnDelimitedStringValue;
    - }
    - case 32: break;
    - case 21:
    - { pushCurrentState(); yybegin(QuotedAttributeValue); return JSPHeadTokenizerConstants.PageLanguage;
    - }
    - case 33: break;
    - case 15:
    - { yypushback(yylength()); popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTerminatedStringValue;
    - }
    - case 34: break;
    - case 25:
    - { isXHTML = true;
    - }
    - case 35: break;
    - case 23:
    - { pushCurrentState(); yybegin(QuotedAttributeValue); return JSPHeadTokenizerConstants.PageEncoding;
    - }
    - case 36: break;
    - case 11:
    - { if (yychar == 0 ) {hasMore = false; return EncodingParserConstants.UTF16LE;}
    - }
    - case 37: break;
    - case 7:
    - { popState(); valueText = string.toString(); return EncodingParserConstants.StringValue;
    - }
    - case 38: break;
    - case 14:
    - { yybegin(YYINITIAL); return JSPHeadTokenizerConstants.PageDirectiveEnd;
    - }
    - case 39: break;
    - case 22:
    - { pushCurrentState(); yybegin(QuotedAttributeValue); return JSPHeadTokenizerConstants.PageContentType;
    - }
    - case 40: break;
    - case 17:
    - { if (yychar == 0 ) {yybegin(ST_XMLDecl); return XMLHeadTokenizerConstants.XMLDeclStart;}
    - }
    - case 41: break;
    - case 2:
    - { yypushback(1); yybegin(UnDelimitedString); string.setLength(0);
    - }
    - case 42: break;
    - case 12:
    - { yybegin(YYINITIAL); return XMLHeadTokenizerConstants.XMLDeclEnd;
    - }
    - case 43: break;
    - case 13:
    - { yybegin(YYINITIAL); return JSPHeadTokenizerConstants.PageDirectiveEnd;
    - }
    - case 44: break;
    - case 24:
    - { isWML = true;
    - }
    - case 45: break;
    - case 18:
    - { yybegin(ST_PAGE_DIRECTIVE); return JSPHeadTokenizerConstants.PageDirectiveStart;
    - }
    - case 46: break;
    - case 6:
    - { yypushback(yylength());popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTerminatedStringValue;
    - }
    - case 47: break;
    - case 20:
    - { pushCurrentState(); yybegin(QuotedAttributeValue); return XMLHeadTokenizerConstants.XMLDelEncoding;
    - }
    - case 48: break;
    - case 19:
    - { pushCurrentState(); yybegin(QuotedAttributeValue); return XMLHeadTokenizerConstants.XMLDeclVersion;
    - }
    - case 49: break;
    - case 3:
    - { yybegin(DQ_STRING); string.setLength(0);
    - }
    - case 50: break;
    - default:
    - if (zzInput == YYEOF && zzStartRead == zzCurrentPos) {
    - zzAtEOF = true;
    - zzDoEOF();
    - {
    - hasMore = false; return EncodingParserConstants.EOF;
    - }
    - }
    - else {
    - zzScanError(ZZ_NO_MATCH);
    - }
    - }
    - }
    - }
    -
    -
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/JSPHeadTokenizerConstants.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/JSPHeadTokenizerConstants.java
    deleted file mode 100644
    index 7b71657cc0..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/JSPHeadTokenizerConstants.java
    +++ /dev/null
    @@ -1,21 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.contenttype;
    -
    -import org.eclipse.wst.xml.core.internal.contenttype.XMLHeadTokenizerConstants;
    -
    -public interface JSPHeadTokenizerConstants extends XMLHeadTokenizerConstants {
    - String PageDirectiveStart = "PageDirectiveStart"; //$NON-NLS-1$
    - String PageDirectiveEnd = "PageDirectiveEnd"; //$NON-NLS-1$
    - String PageLanguage = "PageLanguage"; //$NON-NLS-1$
    - String PageEncoding = "PageEncoding"; //$NON-NLS-1$
    - String PageContentType = "PageContentType"; //$NON-NLS-1$
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/JSPResourceEncodingDetector.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/JSPResourceEncodingDetector.java
    deleted file mode 100644
    index f3f3e9c59d..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/JSPResourceEncodingDetector.java
    +++ /dev/null
    @@ -1,522 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2008 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.jsp.core.internal.contenttype;
    -
    -import java.io.BufferedInputStream;
    -import java.io.BufferedReader;
    -import java.io.IOException;
    -import java.io.InputStream;
    -import java.io.Reader;
    -import java.nio.charset.Charset;
    -import java.nio.charset.IllegalCharsetNameException;
    -import java.nio.charset.UnsupportedCharsetException;
    -import java.util.regex.Pattern;
    -
    -import org.eclipse.core.resources.IStorage;
    -import org.eclipse.core.runtime.CoreException;
    -import org.eclipse.core.runtime.content.IContentDescription;
    -import org.eclipse.jst.jsp.core.internal.Logger;
    -import org.eclipse.wst.sse.core.internal.encoding.CodedIO;
    -import org.eclipse.wst.sse.core.internal.encoding.EncodingMemento;
    -import org.eclipse.wst.sse.core.internal.encoding.IResourceCharsetDetector;
    -import org.eclipse.wst.sse.core.internal.encoding.NonContentBasedEncodingRules;
    -import org.eclipse.wst.xml.core.internal.contenttype.EncodingParserConstants;
    -import org.eclipse.wst.xml.core.internal.contenttype.XMLHeadTokenizerConstants;
    -
    -public class JSPResourceEncodingDetector implements IResourceCharsetDetector {
    -
    - private String fCharset;
    -
    - private String fContentType;
    -
    - private String fContentTypeValue;
    -
    - private String fLanguage;
    -
    - private String fPageEncodingValue;
    -
    - private JSPHeadTokenizer fTokenizer;
    -
    - private String fXMLDecEncodingName;
    -
    - private boolean unicodeCase;
    -
    - private EncodingMemento fEncodingMemento;
    -
    - private boolean fHeaderParsed;
    -
    - private Reader fReader;
    -
    - private boolean fXHTML;
    -
    - private boolean fWML;
    -
    -
    - /**
    - * No Arg constructor.
    - */
    - public JSPResourceEncodingDetector() {
    - super();
    - }
    -
    - class NullMemento extends EncodingMemento {
    - /**
    - *
    - */
    - public NullMemento() {
    - super();
    - String defaultCharset = NonContentBasedEncodingRules.useDefaultNameRules(null);
    - setJavaCharsetName(defaultCharset);
    - setAppropriateDefault(defaultCharset);
    - setDetectedCharsetName(null);
    - }
    -
    - }
    -
    - /**
    - * @return Returns the contentType.
    - */
    - public String getContentType() throws IOException {
    - ensureInputSet();
    - if (!fHeaderParsed) {
    - parseInput();
    - // we keep track of if header's already been parse, so can make
    - // multiple 'get' calls, without causing reparsing.
    - fHeaderParsed = true;
    - // Note: there is a "hidden assumption" here that an empty
    - // string in content should be treated same as not present.
    - }
    - return fContentType;
    - }
    -
    - public String getEncoding() throws IOException {
    - return getEncodingMemento().getDetectedCharsetName();
    - }
    -
    - // to ensure consist overall rules used, we'll mark as
    - // final,
    - // and require subclasses to provide certain pieces of
    - // the
    - // implementation
    - public EncodingMemento getEncodingMemento() throws IOException {
    - ensureInputSet();
    - if (!fHeaderParsed) {
    - parseInput();
    - // we keep track of if header's already been
    - // parse, so can make
    - // multiple 'get' calls, without causing
    - // reparsing.
    - fHeaderParsed = true;
    - // Note: there is a "hidden assumption" here
    - // that an empty
    - // string in content should be treated same as
    - // not present.
    - }
    - if (fEncodingMemento == null) {
    - handleSpecDefault();
    - }
    - if (fEncodingMemento == null) {
    - // safty net
    - fEncodingMemento = new NullMemento();
    - }
    - return fEncodingMemento;
    - }
    -
    - public String getLanguage() throws IOException {
    - ensureInputSet();
    - if (!fHeaderParsed) {
    - parseInput();
    - fHeaderParsed = true;
    - }
    - return fLanguage;
    - }
    -
    - public String getSpecDefaultEncoding() {
    - // by JSP Spec
    - final String enc = "ISO-8859-1"; //$NON-NLS-1$
    - return enc;
    - }
    -
    - public EncodingMemento getSpecDefaultEncodingMemento() {
    - resetAll();
    - EncodingMemento result = null;
    - String enc = getSpecDefaultEncoding();
    - if (enc != null) {
    - createEncodingMemento(enc, EncodingMemento.DEFAULTS_ASSUMED_FOR_EMPTY_INPUT);
    - fEncodingMemento.setAppropriateDefault(enc);
    - result = fEncodingMemento;
    - }
    - return result;
    - }
    -
    - /**
    - *
    - */
    - public void set(InputStream inputStream) {
    - resetAll();
    - fReader = new ByteReader(inputStream);
    - try {
    - fReader.mark(CodedIO.MAX_MARK_SIZE);
    - }
    - catch (IOException e) {
    - // impossible, since we know ByteReader
    - // supports marking
    - throw new Error(e);
    - }
    - }
    -
    - /**
    - *
    - */
    - public void set(IStorage iStorage) throws CoreException {
    - resetAll();
    - InputStream inputStream = iStorage.getContents();
    - InputStream resettableStream = new BufferedInputStream(inputStream, CodedIO.MAX_BUF_SIZE);
    - resettableStream.mark(CodedIO.MAX_MARK_SIZE);
    - set(resettableStream);
    - // TODO we'll need to "remember" IFile, or
    - // get its (or its project's) settings, in case
    - // those are needed to handle cases when the
    - // encoding is not in the file stream.
    - }
    -
    - /**
    - * Note: this is not part of interface to help avoid confusion ... it
    - * expected this Reader is a well formed character reader ... that is, its
    - * all ready been determined to not be a unicode marked input stream. And,
    - * its assumed to be in the correct position, at position zero, ready to
    - * read first character.
    - */
    - public void set(Reader reader) {
    - resetAll();
    - fReader = reader;
    - if (!fReader.markSupported()) {
    - fReader = new BufferedReader(fReader);
    - }
    - try {
    - fReader.mark(CodedIO.MAX_MARK_SIZE);
    - }
    - catch (IOException e) {
    - // impossble, since we just checked if markable
    - throw new Error(e);
    - }
    - }
    -
    - private boolean canHandleAsUnicodeStream(String tokenType) {
    - boolean canHandleAsUnicode = false;
    - if (tokenType == EncodingParserConstants.UTF83ByteBOM) {
    - canHandleAsUnicode = true;
    - String enc = "UTF-8"; //$NON-NLS-1$
    - createEncodingMemento(enc, EncodingMemento.DETECTED_STANDARD_UNICODE_BYTES);
    - fEncodingMemento.setUTF83ByteBOMUsed(true);
    - }
    - else if (tokenType == EncodingParserConstants.UTF16BE || tokenType == EncodingParserConstants.UTF16LE) {
    - canHandleAsUnicode = true;
    - String enc = "UTF-16"; //$NON-NLS-1$
    - byte[] bom = (tokenType == EncodingParserConstants.UTF16BE) ? IContentDescription.BOM_UTF_16BE : IContentDescription.BOM_UTF_16LE;
    - createEncodingMemento(enc, EncodingMemento.DETECTED_STANDARD_UNICODE_BYTES);
    - fEncodingMemento.setUnicodeStream(true);
    - fEncodingMemento.setUnicodeBOM(bom);
    - }
    - return canHandleAsUnicode;
    - }
    -
    - /**
    - * Note: once this instance is created, trace info still needs to be
    - * appended by caller, depending on the context its created.
    - */
    - private void createEncodingMemento(String detectedCharsetName) {
    - fEncodingMemento = new EncodingMemento();
    - fEncodingMemento.setJavaCharsetName(getAppropriateJavaCharset(detectedCharsetName));
    - fEncodingMemento.setDetectedCharsetName(detectedCharsetName);
    - // TODO: if detectedCharset and spec default is
    - // null, need to use "work
    - // bench based" defaults.
    - fEncodingMemento.setAppropriateDefault(getSpecDefaultEncoding());
    - }
    -
    - /**
    - * There can sometimes be mulitple 'encodings' specified in a file. This
    - * is an attempt to centralize the rules for deciding between them.
    - * Returns encoding according to priority: 1. XML Declaration 2. page
    - * directive pageEncoding name 3. page directive contentType charset name
    - */
    - private String getAppropriateEncoding() {
    - String result = null;
    - if (fXMLDecEncodingName != null)
    - result = fXMLDecEncodingName;
    - else if (fPageEncodingValue != null)
    - result = fPageEncodingValue;
    - else if (fCharset != null)
    - result = fCharset;
    - return result;
    - }
    -
    - /**
    - * This method can return null, if invalid charset name (in which case
    - * "appropriateDefault" should be used, if a name is really need for some
    - * "save anyway" cases).
    - *
    - * @param detectedCharsetName
    - * @return
    - */
    - private String getAppropriateJavaCharset(String detectedCharsetName) {
    - String result = null;
    - // 1. Check explicit mapping overrides from
    - // property file -- its here we pick up "rules" for cases
    - // that are not even in Java
    - result = CodedIO.checkMappingOverrides(detectedCharsetName);
    - // 2. Use the "canonical" name from JRE mappings
    - // Note: see Charset JavaDoc, the name you get one
    - // with can be alias,
    - // the name you get back is "standard" name.
    - Charset javaCharset = null;
    - try {
    - javaCharset = Charset.forName(detectedCharsetName);
    - }
    - catch (UnsupportedCharsetException e) {
    - // only set invalid, if result is same as detected -- they won't
    - // be equal if
    - // overridden
    - if (result != null && result.equals(detectedCharsetName)) {
    - fEncodingMemento.setInvalidEncoding(detectedCharsetName);
    - }
    - }
    - catch (IllegalCharsetNameException e) {
    - // only set invalid, if result is same as detected -- they won't
    - // be equal if
    - // overridden
    - if (result != null && result.equals(detectedCharsetName)) {
    - fEncodingMemento.setInvalidEncoding(detectedCharsetName);
    - }
    - }
    - // give priority to java cononical name, if present
    - if (javaCharset != null) {
    - result = javaCharset.name();
    - // but still allow overrides
    - result = CodedIO.checkMappingOverrides(result);
    - }
    - return result;
    - }
    -
    - private JSPHeadTokenizer getTokinizer() {
    - if (fTokenizer == null) {
    - fTokenizer = new JSPHeadTokenizer();
    - }
    - return fTokenizer;
    - }
    -
    - private void handleSpecDefault() {
    - String encodingName;
    - encodingName = getSpecDefaultEncoding();
    - if (encodingName != null) {
    - // createEncodingMemento(encodingName,
    - // EncodingMemento.USED_CONTENT_TYPE_DEFAULT);
    - fEncodingMemento = new EncodingMemento();
    - fEncodingMemento.setJavaCharsetName(encodingName);
    - fEncodingMemento.setAppropriateDefault(encodingName);
    - }
    - }
    -
    - private boolean isLegalString(String valueTokenType) {
    - boolean result = false;
    - if (valueTokenType != null) {
    - result = valueTokenType.equals(EncodingParserConstants.StringValue) || valueTokenType.equals(EncodingParserConstants.UnDelimitedStringValue) || valueTokenType.equals(EncodingParserConstants.InvalidTerminatedStringValue) || valueTokenType.equals(EncodingParserConstants.InvalidTermintatedUnDelimitedStringValue);
    - }
    - return result;
    - }
    -
    -
    - /**
    - * This method should be exactly the same as what is in
    - * JSPHeadTokenizerTester
    - * @param contentType
    - */
    - private void parseContentTypeValue(String contentType) {
    - Pattern pattern = Pattern.compile(";\\s*charset\\s*=\\s*"); //$NON-NLS-1$
    - String[] parts = pattern.split(contentType);
    - if (parts.length > 0) {
    - // if only one item, it can still be charset instead of
    - // contentType
    - if (parts.length == 1) {
    - if (parts[0].length() > 6) {
    - String checkForCharset = parts[0].substring(0, 7);
    - if (checkForCharset.equalsIgnoreCase("charset")) { //$NON-NLS-1$
    - int eqpos = parts[0].indexOf('=');
    - eqpos = eqpos + 1;
    - if (eqpos < parts[0].length()) {
    - fCharset = parts[0].substring(eqpos);
    - fCharset = fCharset.trim();
    - }
    - }
    - else {
    - fContentType = parts[0];
    - }
    - }
    - }
    - else {
    - fContentType = parts[0];
    - }
    - }
    - if (parts.length > 1) {
    - fCharset = parts[1];
    - }
    - }
    -
    -
    - /**
    - * Looks for what ever encoding properties the tokenizer returns. Its the
    - * responsibility of the tokenizer to stop when appropriate and not go too
    - * far.
    - */
    - private void parseHeader(JSPHeadTokenizer tokenizer) throws Exception {
    - fPageEncodingValue = null;
    - fCharset = null;
    -
    - HeadParserToken token = null;
    - do {
    - // don't use 'get' here (at least until reset issue fixed)
    - token = tokenizer.getNextToken();
    - String tokenType = token.getType();
    - if (canHandleAsUnicodeStream(tokenType))
    - unicodeCase = true;
    - else {
    - if (tokenType == XMLHeadTokenizerConstants.XMLDelEncoding) {
    - if (tokenizer.hasMoreTokens()) {
    - HeadParserToken valueToken = tokenizer.getNextToken();
    - String valueTokenType = valueToken.getType();
    - if (isLegalString(valueTokenType)) {
    - fXMLDecEncodingName = valueToken.getText();
    - }
    - }
    - }
    - else if (tokenType == JSPHeadTokenizerConstants.PageEncoding) {
    - if (tokenizer.hasMoreTokens()) {
    - HeadParserToken valueToken = tokenizer.getNextToken();
    - String valueTokenType = valueToken.getType();
    - if (isLegalString(valueTokenType)) {
    - fPageEncodingValue = valueToken.getText();
    - }
    - }
    - }
    - else if (tokenType == JSPHeadTokenizerConstants.PageContentType) {
    - if (tokenizer.hasMoreTokens()) {
    - HeadParserToken valueToken = tokenizer.getNextToken();
    - String valueTokenType = valueToken.getType();
    - if (isLegalString(valueTokenType)) {
    - fContentTypeValue = valueToken.getText();
    - }
    - }
    - }
    - else if (tokenType == JSPHeadTokenizerConstants.PageLanguage) {
    - if (tokenizer.hasMoreTokens()) {
    - HeadParserToken valueToken = tokenizer.getNextToken();
    - String valueTokenType = valueToken.getType();
    - if (isLegalString(valueTokenType)) {
    - fLanguage = valueToken.getText();
    - }
    - }
    - }
    - }
    - }
    - while (tokenizer.hasMoreTokens());
    - if (fContentTypeValue != null) {
    - parseContentTypeValue(fContentTypeValue);
    - }
    - if (tokenizer.isXHTML()) {
    - fXHTML = true;
    - }
    - if (tokenizer.isWML() ) {
    - fWML = true;
    - }
    - }
    -
    - private void parseInput() throws IOException {
    - JSPHeadTokenizer tokenizer = getTokinizer();
    - fReader.reset();
    - tokenizer.reset(fReader);
    - try {
    - parseHeader(tokenizer);
    - // unicode stream cases are created directly in parseHeader
    - if (!unicodeCase) {
    - String enc = getAppropriateEncoding();
    - if (enc != null && enc.length() > 0) {
    - createEncodingMemento(enc, EncodingMemento.FOUND_ENCODING_IN_CONTENT);
    - }
    - }
    - } catch (Exception e) {
    - Logger.log(Logger.ERROR_DEBUG, e.getMessage());
    - }
    - }
    -
    - /**
    - *
    - */
    - private void resetAll() {
    - fReader = null;
    - fHeaderParsed = false;
    - fEncodingMemento = null;
    - fCharset = null;
    - fContentTypeValue = null;
    - fPageEncodingValue = null;
    - fXMLDecEncodingName = null;
    - unicodeCase = false;
    - fXHTML=false;
    - fWML=false;
    - }
    -
    -
    -
    - /**
    - * convience method all subclasses can use (but not override)
    - *
    - * @param detectedCharsetName
    - * @param reason
    - */
    - private void createEncodingMemento(String detectedCharsetName, String reason) {
    - createEncodingMemento(detectedCharsetName);
    - }
    -
    - /**
    - * convience method all subclasses can use (but not override)
    - */
    - private void ensureInputSet() {
    - if (fReader == null) {
    - throw new IllegalStateException("input must be set before use"); //$NON-NLS-1$
    - }
    - }
    -
    - public boolean isWML() throws IOException {
    - ensureInputSet();
    - if (!fHeaderParsed) {
    - parseInput();
    - // we keep track of if header's already been parse, so can make
    - // multiple 'get' calls, without causing reparsing.
    - fHeaderParsed = true;
    - // Note: there is a "hidden assumption" here that an empty
    - // string in content should be treated same as not present.
    - }
    - return fWML;
    - }
    -
    - public boolean isXHTML() throws IOException {
    - ensureInputSet();
    - if (!fHeaderParsed) {
    - parseInput();
    - // we keep track of if header's already been parse, so can make
    - // multiple 'get' calls, without causing reparsing.
    - fHeaderParsed = true;
    - // Note: there is a "hidden assumption" here that an empty
    - // string in content should be treated same as not present.
    - }
    - return fXHTML;
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/DocumentFactoryForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/DocumentFactoryForJSP.java
    deleted file mode 100644
    index fdf9a70ed7..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/DocumentFactoryForJSP.java
    +++ /dev/null
    @@ -1,54 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.document;
    -
    -import org.eclipse.core.filebuffers.IDocumentFactory;
    -import org.eclipse.jface.text.IDocument;
    -import org.eclipse.jst.jsp.core.internal.parser.JSPSourceParser;
    -import org.eclipse.jst.jsp.core.internal.provisional.JSP11Namespace;
    -import org.eclipse.wst.sse.core.internal.document.StructuredDocumentFactory;
    -import org.eclipse.wst.sse.core.internal.ltk.parser.RegionParser;
    -import org.eclipse.wst.sse.core.internal.ltk.parser.TagMarker;
    -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
    -
    -
    -public class DocumentFactoryForJSP implements IDocumentFactory {
    -
    - public DocumentFactoryForJSP() {
    - super();
    - }
    -
    - /*
    - * (non-Javadoc)
    - *
    - * @see org.eclipse.core.filebuffers.IDocumentFactory#createDocument()
    - */
    - public IDocument createDocument() {
    - IStructuredDocument structuredDocument = StructuredDocumentFactory.getNewStructuredDocumentInstance(new JSPSourceParser());
    - return structuredDocument;
    - }
    -
    - public RegionParser getParser() {
    - // remember, the Loader
    - // will need to finish initialization of parser
    - // based on "embedded content"
    - JSPSourceParser parser = new JSPSourceParser();
    - // add default nestable tag list
    - addNestablePrefix(parser, JSP11Namespace.JSP_TAG_PREFIX);
    - return parser;
    - }
    -
    - private void addNestablePrefix(JSPSourceParser parser, String tagName) {
    - TagMarker bm = new TagMarker(tagName);
    - parser.addNestablePrefix(bm);
    - }
    -
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveAdapter.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveAdapter.java
    deleted file mode 100644
    index d2b321ffcc..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveAdapter.java
    +++ /dev/null
    @@ -1,59 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2008 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.jsp.core.internal.document;
    -
    -import org.eclipse.wst.sse.core.internal.ltk.modelhandler.EmbeddedTypeHandler;
    -import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
    -import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
    -import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
    -
    -/**
    - * Classes which implement this interface have two responsibilities.
    - * One is to provide
    - * and embedded factory registry for JSP Aware INodeAdapter Factories
    - * to use. The other is to monitor page directives and if
    - * a change in embedded type is is made, it will signal
    - * the structuredModel that it needs to reinitialize itself.
    - */
    -public interface PageDirectiveAdapter extends INodeAdapter {
    -
    - public String getContentType();
    -
    - public String getLanguage();
    -
    - /**
    - * This setter method should be called once, shortly after
    - * initialization.
    - */
    - void setEmbeddedType(EmbeddedTypeHandler handler);
    -
    - EmbeddedTypeHandler getEmbeddedType();
    -
    - /**
    - * This method is to give this adapter a chance to use
    - * the AdapterFactories from the EmbeddedTypeHandler
    - * to adapt the node. Its to be used by JSPAwareAdapterFactories
    - * to (potentially) adapt nodes from the embedded content type.
    - */
    - INodeAdapter adapt(INodeNotifier notifier, Object type);
    -
    - void addEmbeddedFactory(INodeAdapterFactory factory);
    -
    - /**
    - * Method setLanguage.
    - * @param language
    - */
    - void setLanguage(String language);
    -
    - INodeNotifier getTarget();
    -
    - public void release();
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveAdapterFactory.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveAdapterFactory.java
    deleted file mode 100644
    index fc986daa99..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveAdapterFactory.java
    +++ /dev/null
    @@ -1,97 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2006 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.jsp.core.internal.document;
    -
    -import org.eclipse.jst.jsp.core.internal.Assert;
    -import org.eclipse.wst.sse.core.internal.provisional.AbstractAdapterFactory;
    -import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
    -import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
    -import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
    -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
    -import org.w3c.dom.Node;
    -
    -/**
    - * This class adapts document
    - * with the an instance of PageDirectiveAdapter
    - */
    -public class PageDirectiveAdapterFactory extends AbstractAdapterFactory implements INodeAdapterFactory {
    -
    -
    - private PageDirectiveAdapter pageDirectiveAdapterInstance = null;
    -
    - /**
    - * Constructor for PageDirectiveAdapterFactory.
    - * Note: its important not to be a singleton, since
    - * this factory needs to track its adapter(s) and release
    - * them when they are released.
    - *
    - * @param adapterKey
    - * @param registerAdapters
    - */
    - protected PageDirectiveAdapterFactory(Object adapterKey, boolean registerAdapters) {
    - super(adapterKey, registerAdapters);
    - }
    -
    - /**
    - * The no argument constructor assumes its a
    - * Factory for PageDirectiveAdapter
    - */
    - public PageDirectiveAdapterFactory() {
    - this(PageDirectiveAdapter.class, true);
    - }
    -
    - protected INodeAdapter createAdapter(INodeNotifier target) {
    - PageDirectiveAdapter result = null;
    - if (target instanceof IDOMNode) {
    - IDOMNode node = (IDOMNode) target;
    - if (node.getNodeType() == Node.DOCUMENT_NODE) {
    - result = getAdapterInstance(target);
    - }
    -
    - }
    - return result;
    - }
    -
    - public void release() {
    - if (pageDirectiveAdapterInstance != null) {
    - pageDirectiveAdapterInstance.release();
    - }
    - }
    -
    - /**
    - * We assume this is only called for 'document' target
    - */
    - protected PageDirectiveAdapter getAdapterInstance(INodeNotifier target) {
    - // if our instance already exists with a different
    - // target, then, somehow, the document node must
    - // have changed for a model, so we should release
    - // old adapter and create new one for new document
    - // node. This is probably a programming error.
    - if (pageDirectiveAdapterInstance != null) {
    - if (target != pageDirectiveAdapterInstance.getTarget()) {
    - release();
    - pageDirectiveAdapterInstance = new PageDirectiveAdapterImpl(target);
    - }
    - // else return the one we have
    - }
    - else {
    - // if is equal to null, create a new one
    - pageDirectiveAdapterInstance = new PageDirectiveAdapterImpl(target);
    - }
    - Assert.isNotNull(pageDirectiveAdapterInstance, "pageDipageDirectiveAdapterInstance was null"); //$NON-NLS-1$
    - return pageDirectiveAdapterInstance;
    - }
    -
    - public INodeAdapterFactory copy() {
    -
    - return new PageDirectiveAdapterFactory(getAdapterKey(), isShouldRegisterAdapter());
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveAdapterImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveAdapterImpl.java
    deleted file mode 100644
    index 026c3a789f..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveAdapterImpl.java
    +++ /dev/null
    @@ -1,703 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 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.jsp.core.internal.document;
    -
    -import java.io.IOException;
    -import java.io.Reader;
    -import java.util.ArrayList;
    -import java.util.Iterator;
    -import java.util.List;
    -
    -import org.eclipse.core.resources.IFile;
    -import org.eclipse.core.resources.ResourcesPlugin;
    -import org.eclipse.core.runtime.IPath;
    -import org.eclipse.core.runtime.Path;
    -import org.eclipse.core.runtime.Platform;
    -import org.eclipse.core.runtime.content.IContentDescription;
    -import org.eclipse.core.runtime.content.IContentType;
    -import org.eclipse.jface.text.IDocument;
    -import org.eclipse.jface.text.IDocumentExtension3;
    -import org.eclipse.jface.text.IDocumentPartitioner;
    -import org.eclipse.jst.jsp.core.internal.Logger;
    -import org.eclipse.jst.jsp.core.internal.contentproperties.JSPFContentProperties;
    -import org.eclipse.jst.jsp.core.internal.modelhandler.EmbeddedTypeStateData;
    -import org.eclipse.jst.jsp.core.internal.provisional.contenttype.ContentTypeIdForJSP;
    -import org.eclipse.jst.jsp.core.internal.provisional.contenttype.IContentDescriptionForJSP;
    -import org.eclipse.jst.jsp.core.internal.text.StructuredTextPartitionerForJSP;
    -import org.eclipse.wst.html.core.internal.provisional.contenttype.ContentTypeFamilyForHTML;
    -import org.eclipse.wst.sse.core.internal.document.DocumentReader;
    -import org.eclipse.wst.sse.core.internal.ltk.modelhandler.EmbeddedTypeHandler;
    -import org.eclipse.wst.sse.core.internal.modelhandler.EmbeddedTypeRegistry;
    -import org.eclipse.wst.sse.core.internal.modelhandler.EmbeddedTypeRegistryImpl;
    -import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
    -import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
    -import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
    -import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
    -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredPartitioning;
    -import org.eclipse.wst.sse.core.internal.util.Debug;
    -import org.eclipse.wst.sse.core.utils.StringUtils;
    -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
    -
    -import com.ibm.icu.util.StringTokenizer;
    -
    -/**
    - * This class has the responsibility to provide an embedded factory registry
    - * for JSP Aware INodeAdapter Factories to use.
    - *
    - * Typically, the embedded type is to be considered a feature of the document,
    - * so JSP Aware AdpaterFactories should call
    - * getAdapter(PageDirectiveAdapter.class) directoy on the document (or owning
    - * document) node.
    - */
    -public class PageDirectiveAdapterImpl implements PageDirectiveAdapter {
    -
    - protected static final String STR_CHARSET = "charset"; //$NON-NLS-1$
    - private final static Object adapterType = PageDirectiveAdapter.class;
    - private IStructuredModel model;
    - protected final String[] JAVASCRIPT_LANGUAGE_KEYS = new String[]{"javascript", "javascript1.0", "javascript1.1_3", "javascript1.2", "javascript1.3", "javascript1.4", "javascript1.5", "javascript1.6", "jscript", "sashscript"}; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$ //$NON-NLS-7$ //$NON-NLS-8$ //$NON-NLS-9$ //$NON-NLS-10$
    - protected final String[] JAVA_LANGUAGE_KEYS = new String[]{"java"}; //$NON-NLS-1$
    -
    - /**
    - * Constructor for PageDirectiveAdapterImpl.
    - */
    - public PageDirectiveAdapterImpl(INodeNotifier target) {
    - super();
    - notifierAtCreation = target;
    - // we need to remember our instance of model,
    - // in case we need to "signal" a re-init needed.
    - if (target instanceof IDOMNode) {
    - IDOMNode node = (IDOMNode) target;
    - model = node.getModel();
    - }
    -
    - }
    -
    - /**
    - * parses the full contentType value into its two parts the contentType,
    - * and the charset, if present. Note: this method is a lightly modified
    - * version of a method in AbstractHeadParser. There, we're mostly
    - * interested in the charset part of contentTypeValue. Here, we're mostly
    - * interested in the mimeType part.
    - */
    - private String getMimeTypeFromContentTypeValue(String contentTypeValue) {
    - if (contentTypeValue == null)
    - return null;
    - String cleanContentTypeValue = StringUtils.stripNonLetterDigits(contentTypeValue);
    - StringTokenizer tokenizer = new StringTokenizer(cleanContentTypeValue, ";= \t\n\r\f"); //$NON-NLS-1$
    - int tLen = tokenizer.countTokens();
    - // if contains encoding should have three tokens, the mimetype, the
    - // word 'charset', and the encoding value
    - String[] tokens = new String[tLen];
    - int j = 0;
    - while (tokenizer.hasMoreTokens()) {
    - tokens[j] = tokenizer.nextToken();
    - j++;
    - }
    - //
    - // Following is the common form for target expression
    - // <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
    - // But apparrently is also valid without the content type there,
    - // just the charset, as follows:
    - // <META http-equiv="Content-Type" content="charset=UTF-8">
    - // So we'll loop through tokens and key off of 'charset'
    -
    - int charsetPos = -1;
    - for (int i = 0; i < tokens.length; i++) {
    - if (tokens[i].equalsIgnoreCase(STR_CHARSET)) {
    - charsetPos = i;
    - break;
    - }
    - }
    - // String charset = null;
    - String contentType = null;
    - if (charsetPos > -1) {
    - // case where charset was present
    - // int charsetValuePos = charsetPos + 1;
    - // if (charsetValuePos < tokens.length) {
    - // charset = tokens[charsetValuePos];
    - // }
    - int contentTypeValuePos = charsetPos - 1;
    - if (contentTypeValuePos > -1) {
    - contentType = tokens[contentTypeValuePos];
    - }
    - }
    - else {
    - // charset was not present, so if there's
    - // a value, we assume its the contentType value
    - if (tokens.length > 0) {
    - contentType = tokens[0];
    - }
    - }
    - return contentType;
    - }
    -
    - private EmbeddedTypeHandler embeddedTypeHandler;
    - private List embeddedFactoryRegistry = new ArrayList();
    - private String cachedLanguage;
    - private String cachedContentType;
    - private INodeNotifier notifierAtCreation;
    -
    - private int firstLanguagePosition = -1;
    - private int firstContentTypePosition = -1;
    -
    - /*
    - * @see INodeAdapter#isAdapterForType(Object)
    - */
    - public boolean isAdapterForType(Object type) {
    - return (type == adapterType);
    - }
    -
    - /*
    - * @see INodeAdapter#notifyChanged(INodeNotifier, int, Object, Object,
    - * Object, int)
    - */
    - public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
    - }
    -
    - public void setEmbeddedType(EmbeddedTypeHandler handler) {
    - // if really the same handler, no need for further processing
    - if (embeddedTypeHandler == handler) {
    - return;
    - }
    - // then one exists, and the new one is truely different, so we need to
    - // release and remove current factories
    - if (embeddedTypeHandler != null) {
    - Iterator list = embeddedFactoryRegistry.iterator();
    - while (list.hasNext()) {
    - INodeAdapterFactory factory = (INodeAdapterFactory) list.next();
    - factory.release();
    - }
    -
    - embeddedFactoryRegistry.clear();
    - }
    -
    - embeddedTypeHandler = handler;
    - // when the handler is set, "transfer" its factories to our own list.
    - // note: our own list may also be added to else where, such as on
    - // "editor side".
    - if (embeddedTypeHandler != null) {
    - Iterator iterator = embeddedTypeHandler.getAdapterFactories().iterator();
    - while (iterator.hasNext()) {
    - INodeAdapterFactory factory = (INodeAdapterFactory) iterator.next();
    - embeddedFactoryRegistry.add(factory);
    - }
    - }
    - }
    -
    - /**
    - * @see PageDirectiveAdapter#adapt(INodeNotifier, Object)
    - */
    - public INodeAdapter adapt(INodeNotifier notifier, Object type) {
    - INodeAdapter result = null;
    - // if embeddedContentType hasn't been set,
    - // then we can not adapt it.
    - if (embeddedTypeHandler != null) {
    - if (embeddedFactoryRegistry != null) {
    - Iterator iterator = embeddedFactoryRegistry.iterator();
    - INodeAdapterFactory factory = null;
    - while (iterator.hasNext()) {
    - factory = (INodeAdapterFactory) iterator.next();
    - if (factory.isFactoryForType(type)) {
    - result = factory.adapt(notifier);
    - break;
    - }
    - }
    - }
    - }
    - return result;
    -
    - }
    -
    - /**
    - * @see PageDirectiveAdapter#getEmbeddedType()
    - */
    - public EmbeddedTypeHandler getEmbeddedType() {
    - if (embeddedTypeHandler == null) {
    - embeddedTypeHandler = getDefaultEmbeddedType();
    - }
    - return embeddedTypeHandler;
    - }
    -
    - public void addEmbeddedFactory(INodeAdapterFactory factory) {
    - // should we check if already exists in list?
    - embeddedFactoryRegistry.add(factory);
    - }
    -
    - // /**
    - // * Used by PageDirectiveWatchers to signal that some important attribute
    - // has changed, and
    - // * any cached values should be re-calcuated
    - // */
    - // void changed() {
    - // // we won't actually check if change is needed, if the model state is
    - // already changing.
    - // if (!model.isReinitializationNeeded()) {
    - // // go through our list of page watcher adapters, and updates the
    - // attributes
    - // // we're interested in, if and only if they are the earliest occurance
    - // in the resource
    - // String potentialContentType = null;
    - // String potentialLanguage = null;
    - // int contentTypePosition = -1;
    - // int languagePosition = -1;
    - // Iterator iterator = pageDirectiveWatchers.iterator();
    - // while (iterator.hasNext()) {
    - // PageDirectiveWatcher pdWatcher = (PageDirectiveWatcher)
    - // iterator.next();
    - // String contentType = pdWatcher.getContentType();
    - // String language = pdWatcher.getLanguage();
    - // int offset = pdWatcher.getOffset();
    - // if (potentialContentType == null || (hasValue(contentType) && (offset <
    - // contentTypePosition))) {
    - // potentialContentType = contentType;
    - // contentTypePosition = offset;
    - // }
    - // }
    - // // now we have the best candiates for cached values, let's see if
    - // they've really changed from
    - // // what we had. If so, note we go through the setters so side effects
    - // can take place there.
    - // potentialContentType =
    - // getMimeTypeFromContentTypeValue(potentialContentType);
    - // if (potentialContentType == null || potentialContentType.length() == 0)
    - // {
    - // //potentialContentType = getDefaultContentType();
    - // } else {
    - // setCachedContentType(potentialContentType);
    - // }
    - //
    - // if (potentialLanguage != null && hasValue(potentialLanguage)) {
    - // setCachedLanguage(potentialLanguage);
    - // }
    - // }
    - // }
    - void changedContentType(int elementOffset, String newValue) {
    - // only need to process if this new value is
    - // earlier in the file than our current value
    - if (firstContentTypePosition == -1 || elementOffset <= firstContentTypePosition) {
    - // dw_TODO: update embedded partitioner in JSP document
    - // partitioner
    - // nsd_TODO: update embedded partitioner in JSP document
    - // partitioner
    -
    - // no need to change current value, if we're told some
    - // earlier value is null or blank (sounds like an error, anyway)
    - if (hasValue(newValue)) {
    - firstContentTypePosition = elementOffset;
    - String potentialContentType = getMimeTypeFromContentTypeValue(newValue);
    - // only do the set processing if different
    - // from what it already is
    - // if (!potentialContentType.equalsIgnoreCase(cachedLanguage))
    - // {
    - setCachedContentType(potentialContentType);
    - // }
    - }
    - }
    - }
    -
    - /**
    - * Used by PageDirectiveWatchers to signal that some important attribute
    - * has changed, and any cached values should be re-calcuated
    - */
    - void changedLanguage(int elementOffset, String newValue) {
    - // only need to process if this new value is
    - // earlier in the file than our current value
    - // has to be less than or equal to, in case our previous earliest one,
    - // is itself changing!
    - if (firstLanguagePosition == -1 || elementOffset <= firstLanguagePosition) {
    -
    - // no need to change current value, if we're told some
    - // earlier value is null or blank (sounds like an error, anyway)
    - if (hasValue(newValue)) {
    - firstLanguagePosition = elementOffset;
    - // only do the set processing if different
    - // from what it already is
    - if (!newValue.equalsIgnoreCase(cachedLanguage)) {
    - setCachedLanguage(newValue);
    - }
    - }
    -
    - // dw_TODO: set language in document partitioner
    - // nsd_TODO: set language in document partitioner
    - }
    - }
    -
    - /**
    - * Used by PageDirectiveWatchers to signal that some important attribute
    - * has changed, and any cached values should be re-calcuated
    - */
    - void changedPageEncoding(int elementOffset, String newValue) {
    -
    - // we don't currently track active value, since
    - // just need during read and write (where its
    - // calculated. We will need in future, to
    - // acurately clone a model and to display
    - // "current encoding" to user in status bar.
    - }
    -
    - /**
    - * Method hasValue.
    - *
    - * @param contentType
    - * @return boolean
    - */
    - private boolean hasValue(String value) {
    - if (value != null && value.length() > 0)
    - return true;
    - else
    - return false;
    - }
    -
    - /**
    - * Returns the cachedContentType.
    - *
    - * @return String
    - */
    - public String getContentType() {
    - if (cachedContentType == null) {
    - cachedContentType = getDefaultContentType();
    - }
    - return cachedContentType;
    - }
    -
    - /**
    - * Method getDefaultContentType.
    - *
    - * @return String
    - */
    - private String getDefaultContentType() {
    - String type = null;
    - IFile file = getFile(model);
    - if (file != null) {
    - type = JSPFContentProperties.getProperty(JSPFContentProperties.JSPCONTENTTYPE, file, true);
    - }
    - // BUG136468
    - if (type == null)
    - type = "text/html"; //$NON-NLS-1$
    - return type;
    - }
    -
    - /**
    - * Returns the cachedLanguage.
    - *
    - * @return String
    - */
    - public String getLanguage() {
    - if (cachedLanguage == null)
    - cachedLanguage = getDefaultLanguage();
    - return cachedLanguage;
    - }
    -
    - /**
    - * Method getDefaultLanguage.
    - *
    - * @return String
    - */
    - private String getDefaultLanguage() {
    - String language = null;
    - IFile file = getFile(model);
    - if (file != null) {
    - language = JSPFContentProperties.getProperty(JSPFContentProperties.JSPLANGUAGE, file, true);
    - }
    - // BUG136468
    - if (language == null)
    - language = "java"; //$NON-NLS-1$
    - return language;
    - }
    -
    - /**
    - * Sets the cachedContentType.
    - *
    - * @param cachedContentType
    - * The cachedContentType to set
    - */
    - public void setCachedContentType(String newContentType) {
    - /*
    - * if the passed in value is the same as existing, there's nothing to
    - * do. if its different, then we need to change the contentHandler as
    - * well and, more to the point, signal a re-initializtation is needed.
    - *
    - * Note: if the value we're getting set to does not have a handler in
    - * the registry, we'll actually not set it to null or anything, we'll
    - * just continue on with the one we have. This is pretty important to
    - * avoid re-initializing on every key stroke if someone is typing in a
    - * new content type, but haven't yet finished the whole "word".
    - * However, if an contentType is not recognized, the registry returns
    - * the one for XML.
    - */
    -
    - /* set the actual value first, the rest is "side effect" */
    - this.cachedContentType = newContentType;
    -
    - /* see if we need to update embedded handler */
    -
    - /*
    - * If the document is a type of XHTML, we do not use the page
    - * directive's contentType to determine the embedded type ... its
    - * XHTML! ... and, eventually, the DOCTYPE adapter should determine
    - * if/when it needs to change.
    - */
    -
    - /* just safety check, can be removed later, early in release cycle */
    - if (model == null) {
    - // throw IllegalStateException("model should never be null in
    - // PageDirective Adapter");
    - Logger.log(Logger.ERROR, "model should never be null in PageDirective Adapter");
    - return;
    - }
    -
    - EmbeddedTypeHandler potentialNewandler = null;
    - IContentDescription contentDescription = getContentDescription(model.getStructuredDocument());
    - Object prop = contentDescription.getProperty(IContentDescriptionForJSP.CONTENT_FAMILY_ATTRIBUTE);
    - if (prop != null) {
    - if (ContentTypeFamilyForHTML.HTML_FAMILY.equals(prop)) {
    - potentialNewandler = EmbeddedTypeRegistryImpl.getInstance().getTypeFor("text/html");
    - }
    - }
    -
    - if (potentialNewandler == null) {
    - /*
    - * getHandler should always return something (never null), based
    - * on the rules in the factory.
    - */
    - potentialNewandler = getHandlerFor(this.cachedContentType);
    - }
    - /*
    - * we do this check for re-init here, instead of in setEmbeddedType,
    - * since setEmbeddedType is called during the normal initializtion
    - * process, when re-init is not needed (since there is no content)
    - */
    - if (embeddedTypeHandler == null) {
    - setEmbeddedType(potentialNewandler);
    - }
    - else if (potentialNewandler != null && embeddedTypeHandler != potentialNewandler) {
    - /*
    - * changing this embedded handler here may be in the middle of a
    - * notify loop. That's why we set that "it's needed". Then the
    - * model decides when its "safe" to actually do the re-init.
    - *
    - * be sure to hold oldHandler in temp var or else setEmbeddedType
    - * will "reset" it before modelReinitNeeded(oldHandler, handler)
    - * is called
    - *
    - */
    - EmbeddedTypeHandler oldHandler = embeddedTypeHandler;
    - setEmbeddedType(potentialNewandler);
    - modelReinitNeeded(oldHandler, potentialNewandler);
    - }
    -
    - }
    -
    - /**
    - * This method is used to re-init based on embeddedTypeHandler changing.
    - * It is given priority over the language change, since there its more
    - * important to have old and new handlers's in the stateData field.
    - */
    - private void modelReinitNeeded(EmbeddedTypeHandler oldHandler, EmbeddedTypeHandler newHandler) {
    - if (model.isReinitializationNeeded()) {
    - System.out.println("already being initialized"); //$NON-NLS-1$
    - }
    -
    - try {
    - model.aboutToChangeModel();
    - model.setReinitializeStateData(new EmbeddedTypeStateData(oldHandler, newHandler));
    - model.setReinitializeNeeded(true);
    - }
    - finally {
    - model.changedModel();
    - }
    - }
    -
    - /**
    - * Method modelReinitNeeded.
    - */
    - private void modelReinitNeeded(String oldlanguage, String newLanguage) {
    - // bit of a short cut for now .... we dont' need language at the
    - // moment,
    - // but should set the state data
    - if (model.isReinitializationNeeded()) {
    - if (Debug.displayWarnings) {
    - System.out.println("already being initialized"); //$NON-NLS-1$
    - }
    - }
    - else {
    - try {
    - // if already being re-initialized, we don't want to
    - // reset the data in the stateData field.
    - model.aboutToChangeModel();
    - model.setReinitializeStateData(newLanguage);
    - model.setReinitializeNeeded(true);
    - }
    - finally {
    - model.changedModel();
    - }
    - }
    - }
    -
    - public void setCachedLanguage(String newLanguage) {
    - if (cachedLanguage != null && languageStateChanged(cachedLanguage, newLanguage)) {
    - /*
    - * a complete re-init overkill in current system, since really
    - * just need for the line style providers, BUT, a change in
    - * language could effect other things, and we don't expect to
    - * happen often so a little overkill isn't too bad. The deep
    - * problem is that there is no way to get at the "edit side"
    - * adpapters specifically here in model class. we have to do the
    - * model changed sequence to get the screen to update. do not
    - * signal again, if signaled once (the reinit state data will be
    - * wrong. (this needs to be improved in future)
    - */
    - if (!model.isReinitializationNeeded()) {
    - modelReinitNeeded(cachedLanguage, newLanguage);
    - }
    - }
    - setLanguage(newLanguage);
    - }
    -
    - /**
    - * This is public access method, used especially from loader, for JSP
    - * Fragment support.
    - */
    - public void setLanguage(String newLanguage) {
    - this.cachedLanguage = newLanguage;
    - IDocumentPartitioner partitioner = ((IDocumentExtension3) model.getStructuredDocument()).getDocumentPartitioner(IStructuredPartitioning.DEFAULT_STRUCTURED_PARTITIONING);
    - if (partitioner instanceof StructuredTextPartitionerForJSP) {
    - ((StructuredTextPartitionerForJSP) partitioner).setLanguage(newLanguage);
    - }
    - }
    -
    - /**
    - * Method languageStateChange.
    - *
    - * @param cachedLanguage
    - * @param newLanguage
    - * @return boolean
    - */
    - private boolean languageStateChanged(String cachedLanguage, String newLanguage) {
    - boolean result = false; // languages are equal, then no change in
    - // state
    - if (!cachedLanguage.equalsIgnoreCase(newLanguage)) {
    - boolean oldLanguageKnown = languageKnown(cachedLanguage);
    - boolean newLanguageKnown = languageKnown(newLanguage);
    - result = newLanguageKnown || (!newLanguageKnown && oldLanguageKnown);
    - }
    - return result;
    - }
    -
    - /**
    - * Method languageKnown.
    - *
    - * @param cachedLanguage
    - * @return boolean
    - */
    - private boolean languageKnown(String language) {
    - return (StringUtils.contains(JAVA_LANGUAGE_KEYS, language, false) || StringUtils.contains(JAVASCRIPT_LANGUAGE_KEYS, language, false));
    - }
    -
    - private IFile getFile(IStructuredModel model) {
    - String location = model.getBaseLocation();
    - if (location != null) {
    - IPath path = new Path(location);
    - if (path.segmentCount() > 1) {
    - return ResourcesPlugin.getWorkspace().getRoot().getFile(path);
    - }
    - }
    - return null;
    - }
    -
    - private EmbeddedTypeHandler getHandlerFor(String contentType) {
    - EmbeddedTypeRegistry reg = getEmbeddedContentTypeRegistry();
    - EmbeddedTypeHandler handler = null;
    - if (reg != null)
    - handler = reg.getTypeFor(contentType);
    - return handler;
    - }
    -
    - /**
    - * Gets the embeddedContentTypeRegistry.
    - *
    - * @return Returns a EmbeddedContentTypeRegistry
    - */
    - private EmbeddedTypeRegistry getEmbeddedContentTypeRegistry() {
    - return EmbeddedTypeRegistryImpl.getInstance();
    - }
    -
    - /**
    - * For JSP files, text/html is the default content type. This may want
    - * this different for types like jsv (jsp for voice xml) For now, hard
    - * code to new instance. In future, should get instance from registry.
    - *
    - * Specification cites HTML as the default contentType.
    - */
    - protected EmbeddedTypeHandler getDefaultEmbeddedType() {
    - return getHandlerFor(getDefaultContentType());
    - }
    -
    - public INodeNotifier getTarget() {
    - return notifierAtCreation;
    - }
    -
    - public void release() {
    - if (embeddedTypeHandler != null) {
    - if (embeddedFactoryRegistry != null) {
    - Iterator iterator = embeddedFactoryRegistry.iterator();
    - INodeAdapterFactory factory = null;
    - while (iterator.hasNext()) {
    - factory = (INodeAdapterFactory) iterator.next();
    - factory.release();
    - }
    - }
    - // pa_TODO: possibly need to release here...
    - // or "uninitializeFactoryRegistry"
    - // initializeFactoryRegistry was called from JSPModelLoader
    - embeddedTypeHandler = null;
    - }
    - }
    -
    - private IContentDescription getContentDescription(IDocument doc) {
    - if (doc == null)
    - return null;
    - DocumentReader in = new DocumentReader(doc);
    - return getContentDescription(in);
    - }
    -
    - /**
    - * Returns content description for an input stream Assumes it's JSP
    - * content. Closes the input stream when finished.
    - *
    - * @param in
    - * @return the IContentDescription for in, or null if in is null
    - */
    - private IContentDescription getContentDescription(Reader in) {
    -
    - if (in == null)
    - return null;
    -
    - IContentDescription desc = null;
    - try {
    -
    - IContentType contentTypeJSP = Platform.getContentTypeManager().getContentType(ContentTypeIdForJSP.ContentTypeID_JSP);
    - desc = contentTypeJSP.getDescriptionFor(in, IContentDescription.ALL);
    - }
    - catch (IOException e) {
    - Logger.logException(e);
    - }
    - finally {
    - try {
    - in.close();
    - }
    - catch (IOException e) {
    - Logger.logException(e);
    - }
    - }
    - return desc;
    - }
    -} \ No newline at end of file
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveWatcher.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveWatcher.java
    deleted file mode 100644
    index b443a8a690..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveWatcher.java
    +++ /dev/null
    @@ -1,23 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.document;
    -
    -import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
    -
    -interface PageDirectiveWatcher extends INodeAdapter {
    -
    - String getContentType();
    -
    - String getLanguage();
    -
    - int getOffset();
    -
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveWatcherFactory.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveWatcherFactory.java
    deleted file mode 100644
    index 1fbb07aa06..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveWatcherFactory.java
    +++ /dev/null
    @@ -1,58 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.document;
    -
    -import org.eclipse.wst.sse.core.internal.PropagatingAdapterFactory;
    -import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
    -import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
    -import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
    -import org.eclipse.wst.xml.core.internal.propagate.PropagatingAdapterFactoryImpl;
    -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;
    -import org.w3c.dom.Node;
    -
    -public class PageDirectiveWatcherFactory extends PropagatingAdapterFactoryImpl implements PropagatingAdapterFactory {
    -
    - /**
    - * Constructor for PageDirectiveWatcherFactory.
    - */
    - public PageDirectiveWatcherFactory() {
    - this(PageDirectiveWatcher.class, true);
    - }
    -
    - /**
    - * Constructor for PageDirectiveWatcherFactory.
    - *
    - * @param adapterKey
    - * @param registerAdapters
    - */
    - public PageDirectiveWatcherFactory(Object adapterKey, boolean registerAdapters) {
    - super(adapterKey, registerAdapters);
    - }
    -
    - protected INodeAdapter createAdapter(INodeNotifier target) {
    - PageDirectiveWatcher result = null;
    - if (target instanceof IDOMElement) {
    - IDOMElement xmlElement = (IDOMElement) target;
    - if (xmlElement.getNodeType() == Node.ELEMENT_NODE) {
    - String nodeName = xmlElement.getNodeName();
    - if (nodeName.equals("jsp:directive.page")) { //$NON-NLS-1$
    - result = new PageDirectiveWatcherImpl(xmlElement);
    - }
    -
    - }
    - }
    - return result;
    -
    - }
    -
    -public INodeAdapterFactory copy() {
    - return new PageDirectiveWatcherFactory(getAdapterKey(), isShouldRegisterAdapter());
    - }}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveWatcherImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveWatcherImpl.java
    deleted file mode 100644
    index 5058785459..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveWatcherImpl.java
    +++ /dev/null
    @@ -1,108 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.document;
    -
    -import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
    -import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
    -import org.eclipse.wst.xml.core.internal.document.AttrImpl;
    -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
    -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;
    -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
    -
    -
    -
    -/**
    - * The responsibility of this class is to monitor page directives and if
    - * a change in embedded type is is made, it will signal
    - * the structuredModel that it needs to reinitialize itself.
    - */
    -class PageDirectiveWatcherImpl implements PageDirectiveWatcher {
    -
    - private static Object adapterType = PageDirectiveWatcher.class;
    - IDOMElement targetElement;
    -
    - /**
    - * Constructor for PageDirectiveWatcherImpl.
    - */
    - public PageDirectiveWatcherImpl(IDOMElement target) {
    - super();
    - targetElement = target;
    - String contentTypeValue = target.getAttribute("contentType"); //$NON-NLS-1$
    - if (contentTypeValue != null) {
    - // using concrete class below, since "changed" is something of an internal method
    - PageDirectiveAdapterImpl pageDirectiveAdapter = (PageDirectiveAdapterImpl) ((IDOMDocument) targetElement.getOwnerDocument()).getAdapterFor(PageDirectiveAdapter.class);
    - pageDirectiveAdapter.changedContentType(((IndexedRegion) targetElement).getStartOffset(), contentTypeValue);
    - }
    - String languageValue = target.getAttribute("language"); //$NON-NLS-1$
    - if (languageValue != null) {
    - // using concrete class below, since "changed" is something of an internal method
    - PageDirectiveAdapterImpl pageDirectiveAdapter = (PageDirectiveAdapterImpl) ((IDOMDocument) targetElement.getOwnerDocument()).getAdapterFor(PageDirectiveAdapter.class);
    - pageDirectiveAdapter.changedLanguage(((IndexedRegion) targetElement).getStartOffset(), languageValue);
    - }
    -
    -
    - }
    -
    - public boolean isAdapterForType(Object type) {
    - return (type == adapterType);
    - }
    -
    - public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
    - // we should only be added to page directives, so if we see a page directive
    - // change, we need to check its attributes, and notify the PageDirectiveAdapter when
    - // certain ones chane, so it can make its "centralized" decisions.
    - if (notifier instanceof IDOMNode) {
    -
    - switch (eventType) {
    - case INodeNotifier.CHANGE :
    - if (changedFeature instanceof AttrImpl) {
    - AttrImpl attribute = (AttrImpl) changedFeature;
    - String name = attribute.getName();
    - if (name.equals("contentType")) { //$NON-NLS-1$
    - // using concrete class below, since "changed" is something of an internal method
    - PageDirectiveAdapterImpl pageDirectiveAdapter = (PageDirectiveAdapterImpl) ((IDOMDocument) targetElement.getOwnerDocument()).getAdapterFor(PageDirectiveAdapter.class);
    - pageDirectiveAdapter.changedContentType(((IndexedRegion) targetElement).getStartOffset(), (String) newValue);
    - }
    - if (name.equals("language")) { //$NON-NLS-1$ //$NON-NLS-2$
    - // using concrete class below, since "changed" is something of an internal method
    - PageDirectiveAdapterImpl pageDirectiveAdapter = (PageDirectiveAdapterImpl) ((IDOMDocument) targetElement.getOwnerDocument()).getAdapterFor(PageDirectiveAdapter.class);
    - pageDirectiveAdapter.changedLanguage(((IndexedRegion) targetElement).getStartOffset(), (String) newValue);
    - }
    - }
    -
    - break;
    - case INodeNotifier.REMOVE :
    - //System.out.println("removed"+new Date().toString());
    - break;
    -
    -
    - default :
    - break;
    - }
    - }
    -
    - }
    -
    - public String getContentType() {
    - String contentTypeValue = targetElement.getAttribute("contentType"); //$NON-NLS-1$
    - return contentTypeValue;
    - }
    -
    - public String getLanguage() {
    - String languageValue = targetElement.getAttribute("language"); //$NON-NLS-1$
    - return languageValue;
    - }
    -
    - public int getOffset() {
    - return targetElement.getStartOffset();
    - }
    -
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/AttrImplForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/AttrImplForJSP.java
    deleted file mode 100644
    index ff30c55ed8..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/AttrImplForJSP.java
    +++ /dev/null
    @@ -1,35 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.domdocument;
    -
    -import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
    -import org.eclipse.wst.xml.core.internal.document.AttrImpl;
    -import org.w3c.dom.Document;
    -
    -public class AttrImplForJSP extends AttrImpl {
    -
    - protected boolean isNestedLanguageOpening(String regionType) {
    - boolean result = regionType == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN || regionType == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN || regionType == DOMJSPRegionContexts.JSP_DECLARATION_OPEN || regionType == DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN;
    - return result;
    - }
    - protected void setOwnerDocument(Document ownerDocument) {
    - super.setOwnerDocument(ownerDocument);
    - }
    - protected void setName(String name) {
    - super.setName(name);
    - }
    - protected void setNamespaceURI(String namespaceURI) {
    - super.setNamespaceURI(namespaceURI);
    - }
    -
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/CommentImplForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/CommentImplForJSP.java
    deleted file mode 100644
    index c9ccc58ec2..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/CommentImplForJSP.java
    +++ /dev/null
    @@ -1,50 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2006 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.jsp.core.internal.domdocument;
    -
    -import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
    -import org.eclipse.wst.xml.core.internal.document.CommentImpl;
    -import org.w3c.dom.Document;
    -import org.w3c.dom.Node;
    -
    -/**
    - * CommentImplForJSP
    - */
    -public class CommentImplForJSP extends CommentImpl {
    - protected CommentImplForJSP() {
    - super();
    - }
    -
    - protected CommentImplForJSP(CommentImpl that) {
    - super(that);
    - }
    -
    - protected boolean isNestedCommentClose(String regionType) {
    - boolean result = regionType == DOMJSPRegionContexts.JSP_COMMENT_CLOSE;
    - return result;
    - }
    -
    - protected boolean isNestedCommentOpenClose(String regionType) {
    - boolean result = regionType == DOMJSPRegionContexts.JSP_COMMENT_OPEN || regionType == DOMJSPRegionContexts.JSP_COMMENT_CLOSE;
    - return result;
    - }
    -
    - protected void setOwnerDocument(Document ownerDocument) {
    - super.setOwnerDocument(ownerDocument);
    - }
    -
    - public Node cloneNode(boolean deep) {
    - CommentImpl cloned = new CommentImplForJSP(this);
    - return cloned;
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/DOMDocumentForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/DOMDocumentForJSP.java
    deleted file mode 100644
    index 23a8baa90d..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/DOMDocumentForJSP.java
    +++ /dev/null
    @@ -1,120 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.domdocument;
    -
    -import org.eclipse.wst.html.core.internal.document.DocumentStyleImpl;
    -import org.eclipse.wst.xml.core.internal.document.DocumentImpl;
    -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
    -import org.w3c.dom.Attr;
    -import org.w3c.dom.Comment;
    -import org.w3c.dom.DOMException;
    -import org.w3c.dom.Element;
    -import org.w3c.dom.Node;
    -import org.w3c.dom.Text;
    -
    -public class DOMDocumentForJSP extends DocumentStyleImpl {
    -
    - /**
    - *
    - */
    - public DOMDocumentForJSP() {
    - super();
    - }
    -
    - /**
    - * @param that
    - */
    - protected DOMDocumentForJSP(DocumentImpl that) {
    - super(that);
    - }
    - /**
    - * cloneNode method
    - * @return org.w3c.dom.Node
    - * @param deep boolean
    - */
    - public Node cloneNode(boolean deep) {
    - DOMDocumentForJSP cloned = new DOMDocumentForJSP(this);
    - if (deep)
    - cloned.importChildNodes(this, true);
    - return cloned;
    - }
    - /**
    - * createElement method
    - *
    - * @return org.w3c.dom.Element
    - * @param tagName
    - * java.lang.String
    - */
    - public Element createElement(String tagName) throws DOMException {
    - checkTagNameValidity(tagName);
    -
    - ElementImplForJSP element = new ElementImplForJSP();
    - element.setOwnerDocument(this);
    - element.setTagName(tagName);
    - return element;
    - }
    - /**
    - * createComment method
    - *
    - * @return org.w3c.dom.Comment
    - * @param data
    - * java.lang.String
    - */
    - public Comment createComment(String data) {
    - CommentImplForJSP comment = new CommentImplForJSP();
    - comment.setOwnerDocument(this);
    - if (data != null)
    - comment.setData(data);
    - return comment;
    - }
    -
    - /**
    - * createAttribute method
    - *
    - * @return org.w3c.dom.Attr
    - * @param name
    - * java.lang.String
    - */
    - public Attr createAttribute(String name) throws DOMException {
    - AttrImplForJSP attr = new AttrImplForJSP();
    - attr.setOwnerDocument(this);
    - attr.setName(name);
    - return attr;
    - }
    -
    - /**
    - */
    - public Attr createAttributeNS(String uri, String name) throws DOMException {
    - AttrImplForJSP attr = new AttrImplForJSP();
    - attr.setOwnerDocument(this);
    - attr.setName(name);
    - attr.setNamespaceURI(uri);
    - return attr;
    - }
    - /**
    - * createTextNode method
    - *
    - * @return org.w3c.dom.Text
    - * @param data
    - * java.lang.String
    - */
    - public Text createTextNode(String data) {
    - TextImplForJSP text = new TextImplForJSP();
    - text.setOwnerDocument(this);
    - text.setData(data);
    - return text;
    - }
    - protected void setModel(IDOMModel model) {
    - super.setModel(model);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/DOMModelForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/DOMModelForJSP.java
    deleted file mode 100644
    index dcc8ce2b28..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/DOMModelForJSP.java
    +++ /dev/null
    @@ -1,45 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.domdocument;
    -
    -import org.eclipse.wst.html.core.internal.document.DOMStyleModelImpl;
    -import org.eclipse.wst.xml.core.internal.document.XMLModelParser;
    -import org.eclipse.wst.xml.core.internal.document.XMLModelUpdater;
    -import org.w3c.dom.Document;
    -
    -public class DOMModelForJSP extends DOMStyleModelImpl {
    -
    - /**
    - *
    - */
    - public DOMModelForJSP() {
    - super();
    - // remember, the document is created in super constructor,
    - // via internalCreateDocument
    - }
    - /**
    - * createDocument method
    - * @return org.w3c.dom.Document
    - */
    - protected Document internalCreateDocument() {
    - DOMDocumentForJSP document = new DOMDocumentForJSP();
    - document.setModel(this);
    - return document;
    - }
    - protected XMLModelParser createModelParser() {
    - return new NestedDOMModelParser(this);
    - }
    - protected XMLModelUpdater createModelUpdater() {
    - return new NestDOMModelUpdater(this);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/ElementImplForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/ElementImplForJSP.java
    deleted file mode 100644
    index 2969129714..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/ElementImplForJSP.java
    +++ /dev/null
    @@ -1,69 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.domdocument;
    -
    -import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
    -import org.eclipse.wst.html.core.internal.document.ElementStyleImpl;
    -import org.eclipse.wst.xml.core.internal.document.ElementImpl;
    -import org.w3c.dom.Document;
    -import org.w3c.dom.Node;
    -
    -public class ElementImplForJSP extends ElementStyleImpl {
    - /**
    - *
    - */
    - public ElementImplForJSP() {
    - super();
    - }
    -
    - /**
    - * @param that
    - */
    - public ElementImplForJSP(ElementImpl that) {
    - super(that);
    - }
    -
    - protected boolean isNestedEndTag(String regionType) {
    - boolean result = regionType == DOMJSPRegionContexts.JSP_ROOT_TAG_NAME || regionType == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME;
    - return result;
    - }
    -
    - protected boolean isNestedClosed(String regionType) {
    - boolean result = (regionType == DOMJSPRegionContexts.JSP_CLOSE || regionType == DOMJSPRegionContexts.JSP_DIRECTIVE_CLOSE);
    - return result;
    - }
    -
    - protected boolean isNestedClosedComment(String regionType) {
    - boolean result = regionType == DOMJSPRegionContexts.JSP_COMMENT_CLOSE;
    - return result;
    - }
    -
    - protected boolean isClosedNestedDirective(String regionType) {
    - boolean result = regionType == DOMJSPRegionContexts.JSP_DIRECTIVE_CLOSE;
    - return result;
    - }
    -
    - protected void setOwnerDocument(Document ownerDocument) {
    - super.setOwnerDocument(ownerDocument);
    - }
    -
    - protected void setTagName(String tagName) {
    - super.setTagName(tagName);
    - }
    - public Node cloneNode(boolean deep) {
    - ElementImpl cloned = new ElementImplForJSP(this);
    - if (deep)
    - cloneChildNodes(cloned, deep);
    - return cloned;
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/NestDOMModelUpdater.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/NestDOMModelUpdater.java
    deleted file mode 100644
    index 337d75b269..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/NestDOMModelUpdater.java
    +++ /dev/null
    @@ -1,34 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.domdocument;
    -
    -import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
    -import org.eclipse.wst.xml.core.internal.document.DOMModelImpl;
    -import org.eclipse.wst.xml.core.internal.document.XMLModelUpdater;
    -
    -
    -public class NestDOMModelUpdater extends XMLModelUpdater {
    -
    - /**
    - * @param model
    - */
    - public NestDOMModelUpdater(DOMModelImpl model) {
    - super(model);
    - }
    -
    - protected boolean isNestedTagClose(String regionType) {
    - boolean result = regionType == DOMJSPRegionContexts.JSP_CLOSE || regionType == DOMJSPRegionContexts.JSP_DIRECTIVE_CLOSE;
    - return result;
    - }
    -
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/NestedDOMModelParser.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/NestedDOMModelParser.java
    deleted file mode 100644
    index afaa719ad4..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/NestedDOMModelParser.java
    +++ /dev/null
    @@ -1,85 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.domdocument;
    -
    -import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
    -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
    -import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
    -import org.eclipse.wst.xml.core.internal.document.DOMModelImpl;
    -import org.eclipse.wst.xml.core.internal.document.JSPTag;
    -import org.eclipse.wst.xml.core.internal.document.XMLModelParser;
    -
    -public class NestedDOMModelParser extends XMLModelParser {
    -
    - /**
    - * @param model
    - */
    - public NestedDOMModelParser(DOMModelImpl model) {
    - super(model);
    - }
    -
    - protected boolean isNestedCommentOpen(String regionType) {
    - boolean result = regionType == DOMJSPRegionContexts.JSP_COMMENT_OPEN;
    - return result;
    - }
    -
    - protected boolean isNestedCommentText(String regionType) {
    - boolean result = regionType == DOMJSPRegionContexts.JSP_COMMENT_TEXT;
    - return result;
    - }
    -
    - protected boolean isNestedContent(String regionType) {
    - boolean result = regionType == DOMJSPRegionContexts.JSP_CONTENT;
    - return result;
    - }
    -
    - protected boolean isNestedTag(String regionType) {
    - boolean result = regionType == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN || regionType == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN || regionType == DOMJSPRegionContexts.JSP_DECLARATION_OPEN || regionType == DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN || regionType == DOMJSPRegionContexts.JSP_CLOSE;
    - return result;
    - }
    -
    - protected boolean isNestedTagName(String regionType) {
    - boolean result = regionType == DOMJSPRegionContexts.JSP_ROOT_TAG_NAME || regionType == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME;
    - return result;
    - }
    - protected boolean isNestedTagOpen(String regionType) {
    - boolean result = regionType == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN || regionType == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN || regionType == DOMJSPRegionContexts.JSP_DECLARATION_OPEN || regionType == DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN;
    - return result;
    - }
    - protected String computeNestedTag(String regionType, String tagName, IStructuredDocumentRegion structuredDocumentRegion, ITextRegion region) {
    - String resultTagName = tagName;
    - if (regionType == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN) {
    - resultTagName = JSPTag.JSP_SCRIPTLET;
    - }
    - else if (regionType == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN) {
    - resultTagName = JSPTag.JSP_EXPRESSION;
    - }
    - else if (regionType == DOMJSPRegionContexts.JSP_DECLARATION_OPEN) {
    - resultTagName = JSPTag.JSP_DECLARATION;
    - }
    - else if (regionType == DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN) {
    - resultTagName = JSPTag.JSP_DIRECTIVE;
    - }
    - else if (regionType == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME) {
    - resultTagName += '.';
    - resultTagName += structuredDocumentRegion.getText(region);
    - }
    - return resultTagName;
    - }
    -
    - protected boolean isNestedTagClose(String regionType) {
    - boolean result = regionType == DOMJSPRegionContexts.JSP_CLOSE || regionType == DOMJSPRegionContexts.JSP_DIRECTIVE_CLOSE;
    - return result;
    - }
    -
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/TextImplForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/TextImplForJSP.java
    deleted file mode 100644
    index 1f67f5355c..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/TextImplForJSP.java
    +++ /dev/null
    @@ -1,28 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.domdocument;
    -
    -import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
    -import org.eclipse.wst.xml.core.internal.document.TextImpl;
    -import org.w3c.dom.Document;
    -
    -public class TextImplForJSP extends TextImpl {
    - protected boolean isNotNestedContent(String regionType) {
    - boolean result = regionType != DOMJSPRegionContexts.JSP_CONTENT;
    - return result;
    - }
    - protected void setOwnerDocument(Document ownerDocument) {
    - super.setOwnerDocument(ownerDocument);
    - }
    -
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/encoding/IJSPHeadContentDetector.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/encoding/IJSPHeadContentDetector.java
    deleted file mode 100644
    index 291c5478e1..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/encoding/IJSPHeadContentDetector.java
    +++ /dev/null
    @@ -1,22 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.encoding;
    -
    -import java.io.IOException;
    -
    -import org.eclipse.wst.sse.core.internal.document.IDocumentCharsetDetector;
    -
    -public interface IJSPHeadContentDetector extends IDocumentCharsetDetector {
    - String getContentType() throws IOException;
    -
    - String getLanguage() throws IOException;
    -
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/encoding/JSPDocumentHeadContentDetector.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/encoding/JSPDocumentHeadContentDetector.java
    deleted file mode 100644
    index 84c5e7e4bc..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/encoding/JSPDocumentHeadContentDetector.java
    +++ /dev/null
    @@ -1,33 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.encoding;
    -
    -import org.eclipse.jface.text.IDocument;
    -import org.eclipse.jst.jsp.core.internal.contenttype.JSPResourceEncodingDetector;
    -import org.eclipse.wst.sse.core.internal.document.DocumentReader;
    -
    -/**
    - * This class parses beginning portion of JSP file to get attributes in page
    - * directiive
    - *
    - */
    -public class JSPDocumentHeadContentDetector extends JSPResourceEncodingDetector implements IJSPHeadContentDetector {
    -
    - public JSPDocumentHeadContentDetector() {
    - super();
    - }
    -
    - public void set(IDocument document) {
    - set(new DocumentReader(document, 0));
    -
    - }
    -
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/encoding/JSPDocumentLoader.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/encoding/JSPDocumentLoader.java
    deleted file mode 100644
    index 8e1d3cb653..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/encoding/JSPDocumentLoader.java
    +++ /dev/null
    @@ -1,312 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2006 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.jsp.core.internal.encoding;
    -
    -import java.io.IOException;
    -import java.io.InputStream;
    -import java.io.Reader;
    -import java.io.UnsupportedEncodingException;
    -
    -import org.eclipse.core.resources.IFile;
    -import org.eclipse.core.resources.IWorkspaceRoot;
    -import org.eclipse.core.resources.ResourcesPlugin;
    -import org.eclipse.core.runtime.CoreException;
    -import org.eclipse.core.runtime.Path;
    -import org.eclipse.jface.text.IDocumentPartitioner;
    -import org.eclipse.jst.jsp.core.internal.Assert;
    -import org.eclipse.jst.jsp.core.internal.JSPCoreMessages;
    -import org.eclipse.jst.jsp.core.internal.document.PageDirectiveWatcherFactory;
    -import org.eclipse.jst.jsp.core.internal.parser.JSPReParser;
    -import org.eclipse.jst.jsp.core.internal.parser.JSPSourceParser;
    -import org.eclipse.jst.jsp.core.internal.provisional.JSP11Namespace;
    -import org.eclipse.jst.jsp.core.internal.provisional.contenttype.ContentTypeIdForJSP;
    -import org.eclipse.jst.jsp.core.internal.text.StructuredTextPartitionerForJSP;
    -import org.eclipse.wst.sse.core.internal.PropagatingAdapter;
    -import org.eclipse.wst.sse.core.internal.document.AbstractDocumentLoader;
    -import org.eclipse.wst.sse.core.internal.document.IDocumentCharsetDetector;
    -import org.eclipse.wst.sse.core.internal.document.IDocumentLoader;
    -import org.eclipse.wst.sse.core.internal.document.StructuredDocumentFactory;
    -import org.eclipse.wst.sse.core.internal.encoding.CodedIO;
    -import org.eclipse.wst.sse.core.internal.encoding.CodedReaderCreator;
    -import org.eclipse.wst.sse.core.internal.encoding.ContentTypeEncodingPreferences;
    -import org.eclipse.wst.sse.core.internal.encoding.util.BufferedLimitedReader;
    -import org.eclipse.wst.sse.core.internal.ltk.modelhandler.EmbeddedTypeHandler;
    -import org.eclipse.wst.sse.core.internal.ltk.parser.JSPCapableParser;
    -import org.eclipse.wst.sse.core.internal.ltk.parser.RegionParser;
    -import org.eclipse.wst.sse.core.internal.ltk.parser.TagMarker;
    -import org.eclipse.wst.sse.core.internal.modelhandler.EmbeddedTypeRegistry;
    -import org.eclipse.wst.sse.core.internal.modelhandler.EmbeddedTypeRegistryImpl;
    -import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
    -import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
    -import org.eclipse.wst.sse.core.internal.provisional.document.IEncodedDocument;
    -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
    -import org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument;
    -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
    -import org.eclipse.wst.xml.core.internal.ssemodelquery.ModelQueryAdapter;
    -import org.w3c.dom.Document;
    -
    -public class JSPDocumentLoader extends AbstractDocumentLoader {
    - private final static String DEFAULT_MIME_TYPE = "text/html"; //$NON-NLS-1$
    - private final static String SPEC_DEFAULT_ENCODING = "ISO-8859-1"; //$NON-NLS-1$
    -
    - protected static IFile getFileFor(IStructuredModel model) {
    - if (model == null)
    - return null;
    - String path = model.getBaseLocation();
    - if (path == null || path.length() == 0) {
    - Object id = model.getId();
    - if (id == null)
    - return null;
    - path = id.toString();
    - }
    - // TODO needs rework for linked resources
    - IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
    - IFile file = root.getFileForLocation(new Path(path));
    - return file;
    - }
    -
    - private EmbeddedTypeRegistry fEmbeddedContentTypeRegistry;
    -
    - public JSPDocumentLoader() {
    - super();
    - }
    -
    - protected void addNestablePrefix(JSPSourceParser parser, String tagName) {
    - TagMarker bm = new TagMarker(tagName);
    - parser.addNestablePrefix(bm);
    - }
    -
    - synchronized public IEncodedDocument createNewStructuredDocument(IFile iFile) throws IOException, CoreException {
    - IStructuredDocument structuredDocument = null;
    - try {
    - structuredDocument = createCodedDocument(iFile);
    -
    - EmbeddedTypeHandler embeddedType = getEmbeddedType(iFile);
    - if (embeddedType != null)
    - embeddedType.initializeParser((JSPCapableParser) structuredDocument.getParser());
    -
    - fFullPreparedReader.reset();
    - setDocumentContentsFromReader(structuredDocument, fFullPreparedReader);
    -
    - }
    - finally {
    - if (fFullPreparedReader != null) {
    - fFullPreparedReader.close();
    - }
    - }
    - return structuredDocument;
    - }
    -
    - private IStructuredDocument createCodedDocument(IFile iFile) throws CoreException, UnsupportedEncodingException, IOException {
    - IStructuredDocument structuredDocument = (IStructuredDocument) createNewStructuredDocument();
    -
    - getCodedReaderCreator().set(iFile);
    -
    - fFullPreparedReader = getCodedReaderCreator().getCodedReader();
    - fEncodingMemento = getCodedReaderCreator().getEncodingMemento();
    -
    - structuredDocument.setEncodingMemento(getCodedReaderCreator().getEncodingMemento());
    -
    - return structuredDocument;
    - }
    -
    - public IEncodedDocument createNewStructuredDocument(String filename, InputStream inputStream) throws UnsupportedEncodingException, IOException {
    - if (filename == null && inputStream == null) {
    - throw new IllegalArgumentException("can not have both null filename and inputstream"); //$NON-NLS-1$
    - }
    - IEncodedDocument structuredDocument = createNewStructuredDocument();
    - CodedReaderCreator codedReaderCreator = new CodedReaderCreator();
    - try {
    - codedReaderCreator.set(filename, inputStream);
    - fFullPreparedReader = codedReaderCreator.getCodedReader();
    - fEncodingMemento = codedReaderCreator.getEncodingMemento();
    - structuredDocument.setEncodingMemento(fEncodingMemento);
    - // the fact that file is null means this method/code path is no
    - // good for JSP fragments
    - EmbeddedTypeHandler embeddedType = getEmbeddedType((IFile) null);
    - fFullPreparedReader.reset();
    - if (embeddedType != null)
    - embeddedType.initializeParser((JSPCapableParser) ((IStructuredDocument) structuredDocument).getParser());
    - setDocumentContentsFromReader(structuredDocument, fFullPreparedReader);
    - }
    - catch (CoreException e) {
    - // impossible in this context
    - throw new Error(e);
    - }
    - finally {
    - if (fFullPreparedReader != null) {
    - fFullPreparedReader.close();
    - }
    - }
    - return structuredDocument;
    -
    - }
    -
    - /**
    - * Method getDefaultDocumentPartitioner.
    - *
    - * @return IDocumentPartitioner
    - */
    - public IDocumentPartitioner getDefaultDocumentPartitioner() {
    - return new StructuredTextPartitionerForJSP();
    - }
    -
    - /**
    - * Method getDefaultMimeType.
    - *
    - * @return String
    - */
    - private String getDefaultMimeType() {
    - return DEFAULT_MIME_TYPE;
    - }
    -
    -
    - public IDocumentCharsetDetector getDocumentEncodingDetector() {
    - if (fDocumentEncodingDetector == null) {
    - fDocumentEncodingDetector = new JSPDocumentHeadContentDetector();
    - }
    - return fDocumentEncodingDetector;
    - }
    -
    - /**
    - * Gets the embeddedContentTypeRegistry.
    - *
    - * @return Returns a EmbeddedContentTypeRegistry
    - */
    - private EmbeddedTypeRegistry getEmbeddedContentTypeRegistry() {
    - if (fEmbeddedContentTypeRegistry == null) {
    - fEmbeddedContentTypeRegistry = EmbeddedTypeRegistryImpl.getInstance();
    - }
    - return fEmbeddedContentTypeRegistry;
    - }
    -
    - /**
    - * Determine the MIME content type specified in a page directive. This
    - * should appear "as early as possible in the JSP page" according to the
    - * JSP v1.2 specification.
    - */
    - private EmbeddedTypeHandler getEmbeddedType(IFile file) throws UnsupportedEncodingException, CoreException, IOException {
    - EmbeddedTypeHandler handler = null;
    - if (fFullPreparedReader == null) {
    - handler = getJSPDefaultEmbeddedType();
    - }
    - else {
    - String mimeType = null;
    -
    - IDocumentCharsetDetector jspProvider = getDocumentEncodingDetector();
    - Reader fullPreparedReader = getFullPreparedReader();
    - BufferedLimitedReader limitedReader = new BufferedLimitedReader(fullPreparedReader, CodedIO.MAX_BUF_SIZE);
    - jspProvider.set(limitedReader);
    - if (jspProvider instanceof IJSPHeadContentDetector) {
    - mimeType = ((IJSPHeadContentDetector) jspProvider).getContentType();
    - fullPreparedReader.reset();
    - }
    -
    - EmbeddedTypeRegistry reg = getEmbeddedContentTypeRegistry();
    - if (mimeType == null || mimeType.length() == 0) {
    - handler = getJSPDefaultEmbeddedType();
    - }
    - else {
    - handler = reg.getTypeFor(mimeType);
    - }
    - }
    - return handler;
    - }
    -
    - /**
    - * For JSP files, text/html is the default content type. This may want
    - * this different for types like jsv (jsp for voice xml) For now, hard
    - * code to new instance. In future, should get instance from registry.
    - * Specification cites HTML as the default contentType.
    - */
    - private EmbeddedTypeHandler getJSPDefaultEmbeddedType() {
    - EmbeddedTypeRegistry reg = getEmbeddedContentTypeRegistry();
    - return reg.getTypeFor(getDefaultMimeType());
    - }
    -
    - public RegionParser getParser() {
    - // remember, the Loader
    - // will need to finish initialization of parser
    - // based on "embedded content"
    - JSPSourceParser parser = new JSPSourceParser();
    - // add default nestable tag list
    - addNestablePrefix(parser, JSP11Namespace.JSP_TAG_PREFIX);
    - return parser;
    - }
    -
    - protected String getPreferredNewLineDelimiter(IFile file) {
    - String delimiter = ContentTypeEncodingPreferences.getPreferredNewLineDelimiter(ContentTypeIdForJSP.ContentTypeID_JSP);
    - if (delimiter == null)
    - delimiter = super.getPreferredNewLineDelimiter(file);
    - return delimiter;
    - }
    -
    - /**
    - * Specification cites ISO-8859-1/Latin-1 as the default charset.
    - */
    - protected String getSpecDefaultEncoding() {
    - return SPEC_DEFAULT_ENCODING;
    - }
    -
    - /**
    - * This method must return a new instance of IStructuredDocument, that has
    - * been initialized with appropriate parser. For many loaders, the
    - * (default) parser used is known for any input. For others, the correct
    - * parser (and its initialization) is normall dependent on the content of
    - * the file. This no-argument method should assume "empty input" and would
    - * therefore return the default parser for the default contentType. If the
    - * parser is to handle tag libraries, it must have a TaglibSupport object
    - * with a valid URIResolver and this IStructuredDocument attached to it
    - * before the contents are set on the IStructuredDocument.
    - */
    - protected IEncodedDocument newEncodedDocument() {
    - IStructuredDocument structuredDocument = StructuredDocumentFactory.getNewStructuredDocumentInstance(getParser());
    - ((BasicStructuredDocument) structuredDocument).setReParser(new JSPReParser());
    - // structuredDocument.setDocumentPartitioner(new
    - // JSPJavaDocumentPartioner());
    - // even though this is an "empty model" ... we want it to have at
    - // least
    - // the
    - // default embeddeded content type handler
    - EmbeddedTypeHandler embeddedType = getJSPDefaultEmbeddedType();
    - embeddedType.initializeParser((JSPCapableParser) structuredDocument.getParser());
    - return structuredDocument;
    - }
    -
    - public IDocumentLoader newInstance() {
    - return new JSPDocumentLoader();
    - }
    -
    - protected void preLoadAdapt(IStructuredModel structuredModel) {
    - IDOMModel domModel = (IDOMModel) structuredModel;
    - //
    - // document must have already been set for this to
    - // work.
    - Document document = domModel.getDocument();
    - Assert.isNotNull(document, JSPCoreMessages.JSPDocumentLoader_1);
    - // if there is a model in the adapter, this will adapt it to
    - // first node. After that the PropagatingAdater spreads over the
    - // children being
    - // created. Each time that happends, a side effect is to
    - // also "spread" sprecific registered adapters,
    - // they two can propigate is needed.
    - // This 'get' causes first to be be attached.
    - PropagatingAdapter propagatingAdapter = (PropagatingAdapter) ((INodeNotifier) document).getAdapterFor(PropagatingAdapter.class);
    - // may make this easier to use in futue
    - propagatingAdapter.addAdaptOnCreateFactory(new PageDirectiveWatcherFactory());
    - // For JSPs, the ModelQueryAdapter must be "attached" to the document
    - // before content is set in the model, so taglib initization can
    - // take place.
    - ((INodeNotifier) document).getAdapterFor(ModelQueryAdapter.class);
    -
    - }
    -
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/ArrayMap.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/ArrayMap.java
    deleted file mode 100644
    index 507ec77525..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/ArrayMap.java
    +++ /dev/null
    @@ -1,103 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2008 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.jsp.core.internal.java;
    -
    -import java.util.ArrayList;
    -import java.util.Arrays;
    -import java.util.Collection;
    -import java.util.Hashtable;
    -import java.util.Iterator;
    -
    -/**
    - * This implementation of a hashtable maps keys to arrays
    - * to support multiple values being associated with a single
    - * key. To remove a specific entry, a key and inserted value must
    - * be provided. Removing just based on the key name will remove all
    - * values stored under that key
    - *
    - */
    -public class ArrayMap extends Hashtable {
    -
    - /**
    - *
    - */
    - private static final long serialVersionUID = 1L;
    -
    - public ArrayMap(int size) {
    - super(size);
    - }
    -
    - public synchronized Object put(Object key, Object value) {
    - Object[] values = (Object[]) super.get(key);
    - Object[] newValues = null;
    -
    - if (values == null || values.length == 0)
    - newValues = new Object[1];
    - else {
    - newValues = new Object[values.length + 1];
    - System.arraycopy(values, 0, newValues, 0, values.length);
    - }
    -
    - newValues[newValues.length - 1] = value;
    - return super.put(key, newValues);
    - }
    -
    - /**
    - * Removes the first occurrence of <code>value</code> from the list
    - * of values associated with <code>key</code>
    - *
    - * @param key the key that has <code>value</code>
    - * @param value the specific value to remove from the key
    - * @return The item removed from the list of values
    - */
    - public synchronized Object remove(Object key, Object value) {
    - Object[] values = (Object[]) super.get(key);
    - Object removed = null;
    - Object[] result = null;
    - if (values != null && value != null) {
    - for (int i = 0; i < values.length; i++) {
    - if (value.equals(values[i])) {
    - removed = values[i];
    - result = new Object[values.length - 1];
    -
    - if (result.length > 0) {
    - // Copy left of value
    - System.arraycopy(values, 0, result, 0, i);
    - // Copy right of value
    - if (i < (values.length - 1))
    - System.arraycopy(values, i+1, result, i, result.length - i);
    - }
    - else
    - super.remove(key);
    -
    - break;
    - }
    - }
    - }
    -
    - if(result != null && result.length > 0)
    - super.put(key, result);
    -
    - return removed;
    - }
    -
    - public Collection values() {
    - Collection valuemaps = super.values();
    - Collection values = new ArrayList();
    -
    - for(Iterator i = valuemaps.iterator(); i.hasNext();)
    - values.addAll(Arrays.asList((Object[]) i.next()));
    -
    - return values;
    - }
    -
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/CompilationUnitHelper.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/CompilationUnitHelper.java
    deleted file mode 100644
    index 7ace8d4799..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/CompilationUnitHelper.java
    +++ /dev/null
    @@ -1,56 +0,0 @@
    -package org.eclipse.jst.jsp.core.internal.java;
    -
    -import org.eclipse.jdt.core.ICompilationUnit;
    -import org.eclipse.jdt.core.IProblemRequestor;
    -import org.eclipse.jdt.core.WorkingCopyOwner;
    -
    -/**
    - * To ensure there is only one instance of ProblemRequestor and WorkingCopyOwner
    - * for JSP plugins. These were removed from JSPTranslation to ensure that the
    - * JSPTranslation was not held in memory by any type of JDT lists (caching
    - * search results, etc...)
    - *
    - * @author pavery
    - */
    -public class CompilationUnitHelper {
    -
    - private JSPProblemRequestor fProblemRequestor = null;
    - private WorkingCopyOwner fWorkingCopyOwner = null;
    - private static CompilationUnitHelper instance;
    -
    - private CompilationUnitHelper() {
    - // force use of instance
    - }
    -
    - public synchronized static final CompilationUnitHelper getInstance() {
    -
    - if (instance == null)
    - instance = new CompilationUnitHelper();
    - return instance;
    - }
    -
    - public JSPProblemRequestor getProblemRequestor() {
    -
    - if (fProblemRequestor == null)
    - fProblemRequestor = new JSPProblemRequestor();
    - return fProblemRequestor;
    - }
    -
    - public WorkingCopyOwner getWorkingCopyOwner() {
    -
    - if (fWorkingCopyOwner == null) {
    - fWorkingCopyOwner = new WorkingCopyOwner() {
    - /* (non-Javadoc)
    - * @see org.eclipse.jdt.core.WorkingCopyOwner#getProblemRequestor(org.eclipse.jdt.core.ICompilationUnit)
    - */
    - public IProblemRequestor getProblemRequestor(ICompilationUnit workingCopy) {
    - return CompilationUnitHelper.this.getProblemRequestor();
    - }
    - public String toString() {
    - return "JSP Working copy owner"; //$NON-NLS-1$
    - }
    - };
    - }
    - return fWorkingCopyOwner;
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/EscapedTextUtil.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/EscapedTextUtil.java
    deleted file mode 100644
    index 2d65350061..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/EscapedTextUtil.java
    +++ /dev/null
    @@ -1,87 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2006 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.jsp.core.internal.java;
    -
    -
    -
    -import java.util.Properties;
    -import com.ibm.icu.util.StringTokenizer;
    -
    -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
    -import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
    -
    -/**
    - * class to handle chunks of text/regions
    - * with escaped character data
    - * @author pavery
    - */
    -public class EscapedTextUtil {
    -
    - public static Properties fXMLtoJavaLookup = null;
    -
    - /**
    - * @return unescaped full text of that region, "" if there is no text
    - */
    - public static String getUnescapedText(IStructuredDocumentRegion parent, ITextRegion r) {
    - String test = (parent != r) ? parent.getFullText(r) : parent.getFullText();
    - return getUnescapedText(test);
    - }
    -
    - public static String getUnescapedText(String test) {
    - initLookup();
    - StringBuffer buffer = new StringBuffer();
    - if (test != null) {
    - StringTokenizer st = new StringTokenizer(test, "&;", true); //$NON-NLS-1$
    - String tok1, tok2, tok3, transString;
    - while (st.hasMoreTokens()) {
    - tok1 = tok2 = tok3 = transString = ""; //$NON-NLS-1$
    - tok1 = st.nextToken();
    - if (tok1.equals("&") && st.hasMoreTokens()) //$NON-NLS-1$
    - {
    - tok2 = st.nextToken();
    - if (st.hasMoreTokens()) {
    - tok3 = st.nextToken();
    - }
    - }
    - if (!(transString = fXMLtoJavaLookup.getProperty(tok1 + tok2 + tok3, "")).equals("")) //$NON-NLS-2$ //$NON-NLS-1$
    - {
    - buffer.append(transString);
    - }
    - else {
    - buffer.append(tok1 + tok2 + tok3);
    - }
    - }
    - return buffer.toString();
    - }
    - return ""; //$NON-NLS-1$
    - }
    -
    - /**
    - * initialize lookup tables
    - */
    - private static void initLookup() {
    - fXMLtoJavaLookup = new Properties();
    - fXMLtoJavaLookup.setProperty("&apos;", "'"); //$NON-NLS-2$ //$NON-NLS-1$
    - fXMLtoJavaLookup.setProperty("&quot;", "\""); //$NON-NLS-2$ //$NON-NLS-1$
    - fXMLtoJavaLookup.setProperty("&amp;", "&"); //$NON-NLS-2$ //$NON-NLS-1$
    - fXMLtoJavaLookup.setProperty("&lt;", "<"); //$NON-NLS-2$ //$NON-NLS-1$
    - fXMLtoJavaLookup.setProperty("&gt;", ">"); //$NON-NLS-2$ //$NON-NLS-1$
    - fXMLtoJavaLookup.setProperty("&nbsp;", " "); //$NON-NLS-2$ //$NON-NLS-1$
    - }
    -
    - /**
    - * Get the String representation of an entity reference.
    - */
    - public static String translateEntityReference(String entity) {
    - return fXMLtoJavaLookup.getProperty(entity, entity);
    - }
    -}
    -
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/IJSPProblem.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/IJSPProblem.java
    deleted file mode 100644
    index 4bd7140d13..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/IJSPProblem.java
    +++ /dev/null
    @@ -1,37 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2008, 2009 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.jsp.core.internal.java;
    -
    -import org.eclipse.jdt.core.compiler.IProblem;
    -
    -public interface IJSPProblem extends IProblem {
    -
    - int F_PROBLEM_ID_LITERAL = 0xA0000000;
    -
    - int TEIClassNotFound = F_PROBLEM_ID_LITERAL + 1;
    - int TEIValidationMessage = F_PROBLEM_ID_LITERAL + 2;
    - int TEIClassNotInstantiated = F_PROBLEM_ID_LITERAL + 3;
    - int TEIClassMisc = F_PROBLEM_ID_LITERAL + 4;
    - int TagClassNotFound = F_PROBLEM_ID_LITERAL + 5;
    - int UseBeanInvalidID = F_PROBLEM_ID_LITERAL + 6;
    - int UseBeanMissingTypeInfo = F_PROBLEM_ID_LITERAL + 7;
    - int UseBeanAmbiguousType = F_PROBLEM_ID_LITERAL + 8;
    - int StartCustomTagMissing = F_PROBLEM_ID_LITERAL + 9;
    - int EndCustomTagMissing = F_PROBLEM_ID_LITERAL + 10;
    - int UseBeanStartTagMissing = F_PROBLEM_ID_LITERAL + 11;
    - int UseBeanEndTagMissing = F_PROBLEM_ID_LITERAL + 12;
    -
    - /**
    - * @return the ID of this JSP problem
    - */
    - int getEID();
    -
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/IJSPTranslation.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/IJSPTranslation.java
    deleted file mode 100644
    index 17f641f395..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/IJSPTranslation.java
    +++ /dev/null
    @@ -1,90 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 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.jsp.core.internal.java;
    -
    -import java.util.List;
    -
    -import org.eclipse.jdt.core.ICompilationUnit;
    -import org.eclipse.jdt.core.IJavaElement;
    -
    -/**
    - * An object that holds a translated JSP String along with
    - * position mapping from Java to JSP, and JSP to Java.
    - *
    - * @author pavery
    - *
    - */
    -public interface IJSPTranslation {
    -
    - /**
    - * The string contents of the translated document.
    - * @return the string contents of the translated document.
    - */
    - public String getJavaText();
    -
    - /**
    - * The corresponding java offset in the translated document for a given jsp offset.
    - * @param jspPosition
    - * @return the java offset that maps to jspOffset, -1 if the position has no mapping.
    - */
    - public int getJavaOffset(int jspOffset);
    -
    - /**
    - * The corresponding jsp offset in the source document for a given jsp offset in the translated document.
    - * @param javaPosition
    - * @return the jsp offset that maps to javaOffset, -1 if the position has no mapping.
    - */
    - public int getJspOffset(int javaOffset);
    -
    - /**
    - * The corresponding CompilationUnit for the translated JSP document
    - * @return an ICompilationUnit of the translation
    - */
    - public ICompilationUnit getCompilationUnit();
    -
    - /**
    - * Returns the IJavaElements corresponding to the JSP range in the JSP StructuredDocument
    - *
    - * @param jspStart staring offset in the JSP document
    - * @param jspEnd ending offset in the JSP document
    - * @return IJavaElements corresponding to the JSP selection
    - */
    - public IJavaElement[] getElementsFromJspRange(int jspStart, int jspEnd);
    -
    - /**
    - * @param javaOffset
    - * @return whether the given offset within the translated Java source maps
    - * directly to a scripting region in the original JSP
    - */
    - public boolean isIndirect(int javaOffset);
    -
    - /**
    - * Must be set true in order for problems to be collected during reconcile.
    - * If set false, problems will be ignored during reconcile.
    - * @param collect
    - */
    - public void setProblemCollectingActive(boolean collect);
    -
    - /**
    - * Reconciles the compilation unit for this JSPTranslation
    - */
    - public void reconcileCompilationUnit();
    -
    - /**
    - * @return the List of problems collected during reconcile of the compilation unit
    - */
    - public List getProblems();
    -
    - // add these API once finalized
    - // getJspEdits(TextEdit javaEdit)
    - // getJavaRanges()
    - // getJavaDocument()
    -} \ No newline at end of file
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSP2ServletNameUtil.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSP2ServletNameUtil.java
    deleted file mode 100644
    index bd6e94ac59..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSP2ServletNameUtil.java
    +++ /dev/null
    @@ -1,134 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.java;
    -
    -import java.io.File;
    -
    -/**
    - * @author pavery
    - */
    -public class JSP2ServletNameUtil {
    -
    - /**
    - * WAS mangles Tom&Jerry as: _Tom_26_Jerry; this takes in the mangled name
    - * and returns the original name.
    - *
    - * Unmangles the qualified type name. If an underscore is found
    - * it is assumed to be a mangled representation of a non-alpha,
    - * non-digit character of the form _NN_, where NN are hex digits
    - * representing the encoded character. This routine converts it
    - * back to the original character.
    - */
    - public final static String unmangle(String qualifiedTypeName) {
    - if(qualifiedTypeName.charAt(0) != '_')
    - return qualifiedTypeName;
    -
    - StringBuffer buf = new StringBuffer();
    - String possible = ""; //$NON-NLS-1$
    -
    - // remove the .java extension if there is one
    - if(qualifiedTypeName.endsWith(".java"))//$NON-NLS-1$
    - qualifiedTypeName = qualifiedTypeName.substring(0, qualifiedTypeName.length() - 5);
    -
    - for(int i = 1; i < qualifiedTypeName.length(); i++) { // start at index 1 b/c 1st char is always '_'
    - char c = qualifiedTypeName.charAt(i);
    - if(c == '_') {
    - int endIndex = qualifiedTypeName.indexOf('_', i+1);
    - if(endIndex == -1)
    - buf.append(c);
    - else {
    - char unmangled;
    - try {
    - possible = qualifiedTypeName.substring(i+1, endIndex);
    - if(isValid(possible)) {
    - unmangled = (char)Integer.decode("0x" + possible).intValue();//$NON-NLS-1$
    - i = endIndex;
    - }
    - else {
    - unmangled = c;
    - }
    -
    - } catch(NumberFormatException e) {
    - unmangled = c;
    - }
    - buf.append(unmangled);
    - }
    - } else {
    - buf.append(c);
    - }
    - }
    - return buf.toString();
    - }
    -
    - /**
    - * Determine if given string is a valid Hex representation of an ASCII character (eg. 2F -> /)
    - * @param possible
    - * @return
    - */
    - private static boolean isValid(String possible) {
    - boolean result = false;
    - if(possible.length() == 2){
    - char c1 = possible.charAt(0);
    - char c2 = possible.charAt(1);
    - // 1st character must be a digit
    - if(Character.isDigit(c1)) {
    - // 2nd character must be digit or upper case letter A-F
    - if(Character.isDigit(c2)) {
    - result = true;
    - }
    - else if(Character.isUpperCase(c2) && (c2 == 'A' || c2 == 'B' || c2 == 'C'|| c2 == 'D'|| c2 == 'E'|| c2 == 'F')) {
    - result = true;
    - }
    - }
    - }
    - return result;
    - }
    -
    - /**
    - * Mangle string to WAS-like specifications
    - *
    - */
    - public final static String mangle(String name) {
    - StringBuffer modifiedName = new StringBuffer();
    -
    - // extension (.jsp, .jspf, .jspx, etc...) should already be encoded in name
    -
    - int length = name.length();
    - // in case name is forbidden (a number, class, for, etc...)
    - modifiedName.append('_');
    -
    - // ensure rest of characters are valid
    - for (int i=0; i< length; i++) {
    - char currentChar = name.charAt(i);
    - if (Character.isJavaIdentifierPart(currentChar) == true ) {
    - modifiedName.append(currentChar);
    - } else {
    - modifiedName.append(mangleChar(currentChar));
    - }
    - }
    - return modifiedName.toString();
    -
    - }
    -
    - /**
    - * take a character and return its hex equivalent
    - */
    - private final static String mangleChar(char ch) {
    - if ( ch == File.separatorChar ) {
    - ch = '/';
    - }
    -
    - if ( Character.isLetterOrDigit(ch) == true ) {
    - return "" + ch; //$NON-NLS-1$
    - }
    - return "_" + Integer.toHexString(ch).toUpperCase() + "_"; //$NON-NLS-1$ //$NON-NLS-2$
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPIncludeRegionHelper.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPIncludeRegionHelper.java
    deleted file mode 100644
    index f0115c8d52..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPIncludeRegionHelper.java
    +++ /dev/null
    @@ -1,94 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.java;
    -
    -import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
    -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
    -import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
    -import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
    -
    -
    -/**
    - * Extension of XMLJSPRegionHelper inteded to parse entire included JSP files.
    - * Basically it expands the rules for what tags are parsed as JSP.
    - *
    - * @author pavery
    - */
    -class JSPIncludeRegionHelper extends XMLJSPRegionHelper {
    - /**
    - * @param JSPTranslator
    - */
    - public JSPIncludeRegionHelper(JSPTranslator translator, boolean appendAsIndirectSource) {
    - super(translator, appendAsIndirectSource);
    - }
    -
    - // these methods determine what content gets added to the local scriplet, expression, declaration buffers
    - /*
    - * return true for elements whose contents we might want to add to the java file we are building
    - */
    - protected boolean isJSPStartRegion(IStructuredDocumentRegion sdRegion) {
    - String type = sdRegion.getFirstRegion().getType();
    - return type == DOMRegionContext.XML_TAG_OPEN || type == DOMJSPRegionContexts.JSP_DECLARATION_OPEN || type == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN || type == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN || type == DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN || type == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME;
    - }
    -
    - protected boolean isDeclaration(String tagName) {
    - return tagName.equalsIgnoreCase("jsp:declaration") //$NON-NLS-1$
    - || tagName.equalsIgnoreCase("<%!"); //$NON-NLS-1$
    - }
    -
    - protected boolean isExpression(String tagName) {
    - return tagName.equalsIgnoreCase("jsp:expression") //$NON-NLS-1$
    - || tagName.equalsIgnoreCase("<%="); //$NON-NLS-1$
    - }
    -
    - protected boolean isScriptlet(String tagName) {
    - return tagName.equalsIgnoreCase("jsp:scriptlet") //$NON-NLS-1$
    - || tagName.equalsIgnoreCase("<%"); //$NON-NLS-1$
    - }
    -
    - protected boolean isIncludeDirective(String tagName) {
    - return tagName.equalsIgnoreCase("jsp:directive.include") || //$NON-NLS-1$
    - tagName.equalsIgnoreCase("include"); //$NON-NLS-1$
    - }
    -
    - protected boolean isTaglibDirective(String tagName) {
    - return tagName.equalsIgnoreCase("jsp:directive.taglib") //$NON-NLS-1$
    - || tagName.equalsIgnoreCase("taglib"); //$NON-NLS-1$
    - }
    -
    - protected boolean isPageDirective(String tagName) {
    - return tagName.equalsIgnoreCase("jsp:directive.page") //$NON-NLS-1$
    - || tagName.equalsIgnoreCase("page"); //$NON-NLS-1$
    - }
    -
    - // different btwn XML-JSP and JSP tags
    - protected String getRegionName(IStructuredDocumentRegion sdRegion) {
    - ITextRegion nameRegion = null;
    - String nameStr = ""; //$NON-NLS-1$
    - int size = sdRegion.getRegions().size();
    - if (size > 1) {
    - // presumably XML-JSP <jsp:scriptlet> | <jsp:expression> | <jsp:declaration>
    - nameRegion = sdRegion.getRegions().get(1);
    - }
    - else if (size == 1) {
    - // presumably JSP open <% | <%= | <%!
    - nameRegion = sdRegion.getRegions().get(0);
    - }
    - if (nameRegion != null)
    - nameStr = fTextToParse.substring(sdRegion.getStartOffset(nameRegion), sdRegion.getTextEndOffset(nameRegion));
    - return nameStr.trim();
    - }
    -
    - protected void processOtherRegions(IStructuredDocumentRegion sdRegion) {
    - processIncludeDirective(sdRegion);
    - processPageDirective(sdRegion);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPProblemRequestor.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPProblemRequestor.java
    deleted file mode 100644
    index cf47682465..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPProblemRequestor.java
    +++ /dev/null
    @@ -1,88 +0,0 @@
    -package org.eclipse.jst.jsp.core.internal.java;
    -
    -/**
    - * @author pavery
    - */
    -
    -import java.util.ArrayList;
    -import java.util.List;
    -
    -import org.eclipse.jdt.core.IProblemRequestor;
    -import org.eclipse.jdt.core.compiler.IProblem;
    -
    -class JSPProblemRequestor implements IProblemRequestor {
    -
    - private boolean fIsActive = false;
    -
    - private boolean fIsRunning = false;
    -
    - private List fCollectedProblems;
    -
    - public void beginReporting() {
    -
    - fIsRunning = true;
    - fCollectedProblems = new ArrayList();
    - }
    -
    - public void acceptProblem(IProblem problem) {
    -
    - if (isActive())
    - fCollectedProblems.add(problem);
    - }
    -
    - public void endReporting() {
    -
    - fIsRunning = false;
    - }
    -
    - public boolean isActive() {
    -
    - return fIsActive && fCollectedProblems != null;
    - }
    -
    - /**
    - * Sets the active state of this problem requestor.
    - *
    - * @param isActive
    - * the state of this problem requestor
    - */
    - public void setIsActive(boolean isActive) {
    -
    - if (fIsActive != isActive) {
    - fIsActive = isActive;
    - if (fIsActive)
    - startCollectingProblems();
    - else
    - stopCollectingProblems();
    - }
    - }
    -
    - /**
    - * Tells this annotation model to collect temporary problems from now on.
    - */
    - private void startCollectingProblems() {
    -
    - fCollectedProblems = new ArrayList();
    - }
    -
    - /**
    - * Tells this annotation model to no longer collect temporary problems.
    - */
    - private void stopCollectingProblems() {
    -
    - // do nothing
    - }
    -
    - /**
    - * @return the list of collected problems
    - */
    - public List getCollectedProblems() {
    -
    - return fCollectedProblems;
    - }
    -
    - public boolean isRunning() {
    -
    - return fIsRunning;
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslation.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslation.java
    deleted file mode 100644
    index 94c4fe9e74..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslation.java
    +++ /dev/null
    @@ -1,657 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2008 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.jsp.core.internal.java;
    -
    -import java.util.ArrayList;
    -import java.util.Collection;
    -import java.util.HashMap;
    -import java.util.Iterator;
    -import java.util.List;
    -
    -import org.eclipse.core.resources.WorkspaceJob;
    -import org.eclipse.core.runtime.CoreException;
    -import org.eclipse.core.runtime.IProgressMonitor;
    -import org.eclipse.core.runtime.IStatus;
    -import org.eclipse.core.runtime.NullProgressMonitor;
    -import org.eclipse.core.runtime.Platform;
    -import org.eclipse.core.runtime.Status;
    -import org.eclipse.core.runtime.jobs.Job;
    -import org.eclipse.jdt.core.IBuffer;
    -import org.eclipse.jdt.core.ICompilationUnit;
    -import org.eclipse.jdt.core.IJavaElement;
    -import org.eclipse.jdt.core.IJavaProject;
    -import org.eclipse.jdt.core.IPackageFragment;
    -import org.eclipse.jdt.core.IPackageFragmentRoot;
    -import org.eclipse.jdt.core.JavaModelException;
    -import org.eclipse.jdt.core.WorkingCopyOwner;
    -import org.eclipse.jface.text.Position;
    -import org.eclipse.jst.jsp.core.internal.Logger;
    -
    -
    -/**
    - * <p>
    - * An implementation of IJSPTranslation.
    - * <br>
    - * This object that holds the java translation of
    - * a JSP file as well as a mapping of ranges from the translated Java to the JSP source,
    - * and mapping from JSP source back to the translated Java.
    - * </p>
    - *
    - * <p>
    - * You may also use JSPTranslation to do CompilationUnit-esque things such as:
    - * <ul>
    - * <li>code select (get java elements for jsp selection)</li>
    - * <li>reconcile</li>
    - * <li>get java regions for jsp selection</li>
    - * <li>get a JSP text edit based on a Java text edit</li>
    - * <li>determine if a java offset falls within a jsp:useBean range</li>
    - * <li>determine if a java offset falls within a jsp import statment</li>
    - * </ul>
    - * </p>
    - *
    - * @author pavery
    - */
    -public class JSPTranslation implements IJSPTranslation {
    -
    - // for debugging
    - private static final boolean DEBUG;
    - static {
    - String value= Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/jsptranslation"); //$NON-NLS-1$
    - DEBUG= value != null && value.equalsIgnoreCase("true"); //$NON-NLS-1$
    - }
    -
    - /** the name of the class (w/out extension) **/
    - private String fClassname = ""; //$NON-NLS-1$
    - private IJavaProject fJavaProject = null;
    - private HashMap fJava2JspMap = null;
    - private HashMap fJsp2JavaMap = null;
    - private HashMap fJava2JspImportsMap = null;
    - private HashMap fJava2JspUseBeanMap = null;
    - private HashMap fJava2JspIndirectMap = null;
    - private List fELProblems = null;
    -
    - // don't want to hold onto model (via translator)
    - // all relevant info is extracted in the constructor.
    - //private JSPTranslator fTranslator = null;
    - private String fJavaText = ""; //$NON-NLS-1$
    - private String fJspText = ""; //$NON-NLS-1$
    -
    - private ICompilationUnit fCompilationUnit = null;
    - private IProgressMonitor fProgressMonitor = null;
    - /** lock to synchronize access to the compilation unit **/
    - private byte[] fLock = null;
    - private String fMangledName;
    - private String fJspName;
    - private List fTranslationProblems;
    - private Collection fIncludedPaths;
    -
    - public JSPTranslation(IJavaProject javaProj, JSPTranslator translator) {
    -
    - fLock = new byte[0];
    - fJavaProject = javaProj;
    - //fTranslator = translator;
    -
    - // can be null if it's an empty document (w/ NullJSPTranslation)
    - if(translator != null) {
    - fJavaText = translator.getTranslation().toString();
    - fJspText = translator.getJspText();
    - fClassname = translator.getClassname();
    - fJava2JspMap = translator.getJava2JspRanges();
    - fJsp2JavaMap = translator.getJsp2JavaRanges();
    - fJava2JspImportsMap = translator.getJava2JspImportRanges();
    - fJava2JspUseBeanMap = translator.getJava2JspUseBeanRanges();
    - fJava2JspIndirectMap = translator.getJava2JspIndirectRanges();
    - fELProblems = translator.getELProblems();
    - fTranslationProblems = translator.getTranslationProblems();
    - fIncludedPaths = translator.getIncludedPaths();
    - }
    - }
    -
    - public IJavaProject getJavaProject() {
    - return fJavaProject;
    - }
    -
    - /* (non-Javadoc)
    - * @see org.eclipse.jst.jsp.core.internal.java.IJSPTranslation#getJavaText()
    - */
    - public String getJavaText() {
    - //return (fTranslator != null) ? fTranslator.getTranslation().toString() : ""; //$NON-NLS-1$
    - return fJavaText;
    - }
    -
    - public String getJspText() {
    - //return (fTranslator != null) ? fTranslator.getJspText() : ""; //$NON-NLS-1$
    - return fJspText;
    - }
    -
    - public String getJavaPath() {
    - // create if necessary
    - ICompilationUnit cu = getCompilationUnit();
    - return (cu != null) ? cu.getPath().toString() : ""; //$NON-NLS-1$
    - }
    -
    - /**
    - *
    - * @return the corresponding Java offset for a give JSP offset
    - */
    - public int getJavaOffset(int jspOffset) {
    - int result = -1;
    - int offsetInRange = 0;
    - Position jspPos, javaPos = null;
    -
    - // iterate all mapped jsp ranges
    - Iterator it = fJsp2JavaMap.keySet().iterator();
    - while (it.hasNext()) {
    - jspPos = (Position) it.next();
    - // need to count the last position as included
    - if (!jspPos.includes(jspOffset) && !(jspPos.offset+jspPos.length == jspOffset))
    - continue;
    -
    - offsetInRange = jspOffset - jspPos.offset;
    - javaPos = (Position) fJsp2JavaMap.get(jspPos);
    - if(javaPos != null)
    - result = javaPos.offset + offsetInRange;
    - else {
    -
    - Logger.log(Logger.ERROR, "JavaPosition was null!" + jspOffset); //$NON-NLS-1$
    - }
    - break;
    - }
    - return result;
    - }
    -
    - /**
    - *
    - * @return the corresponding JSP offset for a give Java offset
    - */
    - public int getJspOffset(int javaOffset) {
    - int result = -1;
    - int offsetInRange = 0;
    - Position jspPos, javaPos = null;
    -
    - // iterate all mapped java ranges
    - Iterator it = fJava2JspMap.keySet().iterator();
    - while (it.hasNext()) {
    - javaPos = (Position) it.next();
    - // need to count the last position as included
    - if (!javaPos.includes(javaOffset) && !(javaPos.offset+javaPos.length == javaOffset))
    - continue;
    -
    - offsetInRange = javaOffset - javaPos.offset;
    - jspPos = (Position) fJava2JspMap.get(javaPos);
    -
    - if(jspPos != null)
    - result = jspPos.offset + offsetInRange;
    - else {
    - Logger.log(Logger.ERROR, "jspPosition was null!" + javaOffset); //$NON-NLS-1$
    - }
    - break;
    - }
    -
    - return result;
    - }
    -
    - public Collection getIncludedPaths() {
    - return fIncludedPaths;
    - }
    -
    - /**
    - *
    - * @return a map of Positions in the Java document to corresponding Positions in the JSP document
    - */
    - public HashMap getJava2JspMap() {
    - return fJava2JspMap;
    - }
    -
    - /**
    - *
    - * @return a map of Positions in the JSP document to corresponding Positions in the Java document
    - */
    - public HashMap getJsp2JavaMap() {
    - return fJsp2JavaMap;
    - }
    -
    - /**
    - * Checks if the specified java range covers more than one partition in the JSP file.
    - *
    - * <p>
    - * ex.
    - * <code>
    - * <%
    - * if(submit)
    - * {
    - * %>
    - * <p> print this...</p>
    - *
    - * <%
    - * }
    - * else
    - * {
    - * %>
    - * <p> print that...</p>
    - * <%
    - * }
    - * %>
    - * </code>
    - * </p>
    - *
    - * the if else statement above spans 3 JSP partitions, so it would return true.
    - * @param offset
    - * @param length
    - * @return <code>true</code> if the java code spans multiple JSP partitions, otherwise false.
    - */
    - public boolean javaSpansMultipleJspPartitions(int javaOffset, int javaLength) {
    - HashMap java2jsp = getJava2JspMap();
    - int count = 0;
    - Iterator it = java2jsp.keySet().iterator();
    - Position javaRange = null;
    - while(it.hasNext()) {
    - javaRange = (Position)it.next();
    - if(javaRange.overlapsWith(javaOffset, javaLength))
    - count++;
    - if(count > 1)
    - return true;
    - }
    - return false;
    - }
    -
    - /**
    - * Returns the Java positions for the given range in the Java document.
    - *
    - * @param offset
    - * @param length
    - * @return
    - */
    - public Position[] getJavaRanges(int offset, int length) {
    -
    - List results = new ArrayList();
    - Iterator it = getJava2JspMap().keySet().iterator();
    - Position p = null;
    - while(it.hasNext()) {
    - p = (Position)it.next();
    - if(p.overlapsWith(offset, length))
    - results.add(p);
    - }
    - return (Position[])results.toArray(new Position[results.size()]);
    - }
    -
    - /**
    - * Indicates if the java Offset falls within the user import ranges
    - * @param javaOffset
    - * @return true if the java Offset falls within the user import ranges, otherwise false
    - */
    - public boolean isImport(int javaOffset) {
    - return isInRanges(javaOffset, fJava2JspImportsMap);
    - }
    -
    - /**
    - * Indicates if the java offset falls within the use bean ranges
    - * @param javaOffset
    - * @return true if the java offset falls within the user import ranges, otherwise false
    - */
    - public boolean isUseBean(int javaOffset) {
    - return isInRanges(javaOffset, fJava2JspUseBeanMap);
    - }
    -
    - /**
    - * @param javaPos
    - * @return
    - */
    - public boolean isIndirect(int javaOffset) {
    - return isInRanges(javaOffset, fJava2JspIndirectMap, false);
    - }
    -
    - private boolean isInRanges(int javaOffset, HashMap ranges) {
    - return isInRanges(javaOffset, ranges, true);
    - }
    - /**
    - * Tells you if the given offset is included in any of the ranges (Positions) passed in.
    - * includeEndOffset tells whether or not to include the end offset of each range in the test.
    - *
    - * @param javaOffset
    - * @param ranges
    - * @param includeEndOffset
    - * @return
    - */
    - private boolean isInRanges(int javaOffset, HashMap ranges, boolean includeEndOffset) {
    -
    - Iterator it = ranges.keySet().iterator();
    - while(it.hasNext()) {
    - Position javaPos = (Position)it.next();
    - // also include the start and end offset (only if requested)
    - // https://bugs.eclipse.org/bugs/show_bug.cgi?id=81687
    - if(javaPos.includes(javaOffset) || (includeEndOffset && javaPos.offset+javaPos.length == javaOffset))
    - return true;
    - }
    - return false;
    - }
    -
    - /**
    - * Return the Java CompilationUnit associated with this JSPTranslation (this particular model)
    - * When using methods on the CU, it's reccomended to synchronize on the CU for reliable
    - * results.
    - *
    - * The method is synchronized to ensure that <code>createComplilationUnit</code> doesn't
    - * get entered 2 or more times simultaneously. A side effect of that is 2 compilation units
    - * can be created in the JavaModelManager, but we only hold one reference to it in
    - * fCompilationUnit. This would lead to a leak since only one instance of the CU is
    - * discarded in the <code>release()</code> method.
    - *
    - * @return a CompilationUnit representation of this JSPTranslation
    - */
    - public ICompilationUnit getCompilationUnit() {
    - synchronized(fLock) {
    - try {
    - if (fCompilationUnit == null) {
    - fCompilationUnit = createCompilationUnit();
    - }
    - }
    - catch (JavaModelException jme) {
    - if(DEBUG)
    - Logger.logException("error creating JSP working copy... ", jme); //$NON-NLS-1$
    - }
    - }
    - return fCompilationUnit;
    - }
    -
    - private String getMangledName() {
    - return fMangledName;
    - }
    - private void setMangledName(String mangledName) {
    - fMangledName = mangledName;
    - }
    - private String getJspName() {
    - return fJspName;
    - }
    -
    - private void setJspName(String jspName) {
    - fJspName = jspName;
    - }
    -
    - /**
    - * Replaces mangled (servlet) name with jsp file name.
    - *
    - * @param displayString
    - * @return
    - */
    - public String fixupMangledName(String displayString) {
    -
    - if(displayString == null)
    - return null;
    -
    - if(getJspName() == null || getMangledName() == null) {
    - // names not set yet
    - initJspAndServletNames();
    - }
    - return displayString.replaceAll(getMangledName(), getJspName());
    - }
    -
    - private void initJspAndServletNames() {
    - ICompilationUnit cu = getCompilationUnit();
    - if(cu != null) {
    - String cuName = null;
    - synchronized(cu) {
    - // set some names for fixing up mangled name in proposals
    - // set mangled (servlet) name
    - cuName = cu.getPath().lastSegment();
    - }
    - if(cuName != null) {
    - setMangledName(cuName.substring(0, cuName.lastIndexOf('.')));
    - // set name of jsp file
    - String unmangled = JSP2ServletNameUtil.unmangle(cuName);
    - setJspName(unmangled.substring(unmangled.lastIndexOf('/') + 1, unmangled.lastIndexOf('.')));
    - }
    - }
    - }
    -
    -
    - /**
    - * Originally from ReconcileStepForJava. Creates an ICompilationUnit from the contents of the JSP document.
    - *
    - * @return an ICompilationUnit from the contents of the JSP document
    - */
    - private ICompilationUnit createCompilationUnit() throws JavaModelException {
    -
    - IPackageFragment packageFragment = null;
    - IJavaElement je = getJavaProject();
    -
    - if (je == null || !je.exists())
    - return null;
    -
    - switch (je.getElementType()) {
    - case IJavaElement.PACKAGE_FRAGMENT :
    - je = je.getParent();
    - // fall through
    -
    - case IJavaElement.PACKAGE_FRAGMENT_ROOT :
    - IPackageFragmentRoot packageFragmentRoot = (IPackageFragmentRoot) je;
    - packageFragment = packageFragmentRoot.getPackageFragment(IPackageFragmentRoot.DEFAULT_PACKAGEROOT_PATH);
    - break;
    -
    - case IJavaElement.JAVA_PROJECT :
    - IJavaProject jProject = (IJavaProject) je;
    -
    - if (!jProject.exists()) {
    - if(DEBUG) {
    - System.out.println("** Abort create working copy: cannot create working copy: JSP is not in a Java project"); //$NON-NLS-1$
    - }
    - return null;
    - }
    -
    - packageFragmentRoot = null;
    - IPackageFragmentRoot[] packageFragmentRoots = jProject.getPackageFragmentRoots();
    - int i = 0;
    - while (i < packageFragmentRoots.length) {
    - if (!packageFragmentRoots[i].isArchive() && !packageFragmentRoots[i].isExternal()) {
    - packageFragmentRoot = packageFragmentRoots[i];
    - break;
    - }
    - i++;
    - }
    - if (packageFragmentRoot == null) {
    - if(DEBUG) {
    - System.out.println("** Abort create working copy: cannot create working copy: JSP is not in a Java project with source package fragment root"); //$NON-NLS-1$
    - }
    - return null;
    - }
    - packageFragment = packageFragmentRoot.getPackageFragment(IPackageFragmentRoot.DEFAULT_PACKAGEROOT_PATH);
    - break;
    -
    - default :
    - return null;
    - }
    -
    - ICompilationUnit cu = packageFragment.getCompilationUnit(getClassname() + ".java").getWorkingCopy(getWorkingCopyOwner(), getProgressMonitor()); //$NON-NLS-1$
    - setContents(cu);
    -
    - if(DEBUG) {
    - System.out.println("+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"); //$NON-NLS-1$
    - System.out.println("(+) JSPTranslation ["+ this + "] finished creating CompilationUnit: " + cu); //$NON-NLS-1$ //$NON-NLS-2$
    - System.out.println("+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"); //$NON-NLS-1$
    - }
    -
    - return cu;
    - }
    -
    - /**
    - *
    - * @return the problem requestor for the CompilationUnit in this JSPTranslation
    - */
    - private JSPProblemRequestor getProblemRequestor() {
    - return CompilationUnitHelper.getInstance().getProblemRequestor();
    - }
    -
    - /**
    - *
    - * @return the IWorkingCopyOwner for this CompilationUnit in this JSPTranslation
    - */
    - public WorkingCopyOwner getWorkingCopyOwner() {
    - return CompilationUnitHelper.getInstance().getWorkingCopyOwner();
    - }
    -
    - /**
    - *
    - * @return the progress monitor used in long operations (reconcile, creating the CompilationUnit...) in this JSPTranslation
    - */
    - private IProgressMonitor getProgressMonitor() {
    - if (fProgressMonitor == null)
    - fProgressMonitor = new NullProgressMonitor();
    - return fProgressMonitor;
    - }
    -
    - /**
    - *
    - * @return the List of problems collected during reconcile of the compilation unit
    - */
    - public List getProblems() {
    - List problems = getProblemRequestor().getCollectedProblems();
    - if (problems != null) {
    - if (fTranslationProblems.isEmpty()) {
    - return problems;
    - }
    - List combinedProblems = new ArrayList(problems);
    - combinedProblems.addAll(fTranslationProblems);
    - return combinedProblems;
    - }
    - return fTranslationProblems;
    - }
    -
    - /**
    - *
    - * @return the List of problems collected during reconcile of the compilation unit
    - */
    - public List getELProblems() {
    - return fELProblems != null ? fELProblems : new ArrayList();
    - }
    -
    -
    - /**
    - * Must be set true in order for problems to be collected during reconcile.
    - * If set false, problems will be ignored during reconcile.
    - * @param collect
    - */
    - public void setProblemCollectingActive(boolean collect) {
    - ICompilationUnit cu = getCompilationUnit();
    - if(cu != null) {
    - getProblemRequestor().setIsActive(collect);
    - }
    - }
    -
    - /**
    - * Reconciles the compilation unit for this JSPTranslation
    - */
    - public void reconcileCompilationUnit() {
    - ICompilationUnit cu = getCompilationUnit();
    - if (cu != null) {
    - try {
    - synchronized(cu) {
    - cu.makeConsistent(getProgressMonitor());
    - cu.reconcile(ICompilationUnit.NO_AST, true, getWorkingCopyOwner(), getProgressMonitor());
    - }
    - }
    - catch (JavaModelException e) {
    - Logger.logException(e);
    - }
    - }
    - }
    -
    - /**
    - * Set contents of the compilation unit to the translated jsp text.
    - * @param the ICompilationUnit on which to set the buffer contents
    - */
    - private void setContents(ICompilationUnit cu) {
    - if (cu == null)
    - return;
    -
    - synchronized (cu) {
    - IBuffer buffer;
    - try {
    -
    - buffer = cu.getBuffer();
    - }
    - catch (JavaModelException e) {
    - e.printStackTrace();
    - buffer = null;
    - }
    -
    - if (buffer != null)
    - buffer.setContents(getJavaText());
    - }
    - }
    -
    - /**
    - * Returns the IJavaElements corresponding to the JSP range in the JSP StructuredDocument
    - *
    - * @param jspStart staring offset in the JSP document
    - * @param jspEnd ending offset in the JSP document
    - * @return IJavaElements corresponding to the JSP selection
    - */
    - public IJavaElement[] getElementsFromJspRange(int jspStart, int jspEnd) {
    -
    - int javaPositionStart = getJavaOffset(jspStart);
    - int javaPositionEnd = getJavaOffset(jspEnd);
    -
    - IJavaElement[] EMTPY_RESULT_SET = new IJavaElement[0];
    - IJavaElement[] result = EMTPY_RESULT_SET;
    - try {
    - ICompilationUnit cu = getCompilationUnit();
    - if (cu != null) {
    - synchronized (cu) {
    - int cuDocLength = cu.getBuffer().getLength();
    - int javaLength = javaPositionEnd - javaPositionStart;
    - if (cuDocLength > 0 && javaPositionStart >= 0 && javaLength >= 0 && javaPositionEnd < cuDocLength) {
    - result = cu.codeSelect(javaPositionStart, javaLength);
    - }
    - }
    - }
    -
    - if (result == null || result.length == 0)
    - return EMTPY_RESULT_SET;
    - }
    - catch (JavaModelException x) {
    - Logger.logException(x);
    - }
    -
    - return result;
    - }
    -
    - public String getClassname() {
    - return fClassname;
    - }
    -
    - /**
    - * Must discard compilation unit, or else they can leak in the JavaModelManager
    - */
    - public void release() {
    -
    - synchronized (fLock) {
    - if (fCompilationUnit != null) {
    - Job discarder = new WorkspaceJob(fClassname) {
    - public IStatus runInWorkspace(IProgressMonitor monitor) throws CoreException {
    - try {
    - if (DEBUG) {
    - System.out.println("------------------------------------------------------------------"); //$NON-NLS-1$
    - System.out.println("(-) JSPTranslation [" + this + "] discarding CompilationUnit: " + fCompilationUnit); //$NON-NLS-1$ //$NON-NLS-2$
    - System.out.println("------------------------------------------------------------------"); //$NON-NLS-1$
    - }
    - fCompilationUnit.discardWorkingCopy();
    - }
    - catch (JavaModelException e) {
    - // we're done w/ it anyway
    - }
    - return Status.OK_STATUS;
    - }
    - };
    - discarder.schedule();
    - }
    - }
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationAdapter.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationAdapter.java
    deleted file mode 100644
    index 5db6c87c68..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationAdapter.java
    +++ /dev/null
    @@ -1,230 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2006 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.jsp.core.internal.java;
    -
    -import org.eclipse.core.resources.IProject;
    -import org.eclipse.core.resources.IWorkspaceRoot;
    -import org.eclipse.core.resources.ResourcesPlugin;
    -import org.eclipse.core.runtime.IPath;
    -import org.eclipse.core.runtime.NullProgressMonitor;
    -import org.eclipse.core.runtime.Path;
    -import org.eclipse.core.runtime.Platform;
    -import org.eclipse.jdt.core.IJavaProject;
    -import org.eclipse.jdt.core.JavaCore;
    -import org.eclipse.jface.text.Document;
    -import org.eclipse.jface.text.DocumentEvent;
    -import org.eclipse.jface.text.IDocument;
    -import org.eclipse.jface.text.IDocumentListener;
    -import org.eclipse.jst.jsp.core.internal.Logger;
    -import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
    -import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
    -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
    -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
    -
    -/**
    - * An adapter for getting a JSPTranslation of the document.
    - *
    - * @author pavery
    - */
    -public class JSPTranslationAdapter implements INodeAdapter, IDocumentListener {
    -
    - // for debugging
    - private static final boolean DEBUG = "true".equalsIgnoreCase(Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/jsptranslation")); //$NON-NLS-1$ //$NON-NLS-2$
    -
    - private IDocument fJspDocument = null;
    - private IDocument fJavaDocument = null;
    - private JSPTranslationExtension fJSPTranslation = null;
    - private boolean fDocumentIsDirty = true;
    - private IDOMModel fXMLModel;
    - private JSPTranslator fTranslator = null;
    - private NullProgressMonitor fTranslationMonitor = null;
    -
    - public JSPTranslationAdapter(IDOMModel xmlModel) {
    - setXMLModel(xmlModel);
    - initializeJavaPlugins();
    - }
    -
    - /**
    - * Initialize the required Java Plugins
    - */
    - protected void initializeJavaPlugins() {
    - JavaCore.getPlugin();
    - }
    -
    - public boolean isAdapterForType(Object type) {
    - return type.equals(IJSPTranslation.class);
    - }
    -
    - public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
    - // nothing to do
    - }
    -
    - /**
    - * Automatically set through the setXMLModel(XMLModel)
    - *
    - * @param doc
    - */
    - private void setDocument(IDocument doc) {
    - if (fJspDocument != null)
    - fJspDocument.removeDocumentListener(this);
    - if (doc != null) {
    - doc.addDocumentListener(this);
    - fJspDocument = doc;
    - }
    - }
    -
    - /**
    - * @see org.eclipse.jface.text.IDocumentListener#documentAboutToBeChanged(org.eclipse.jface.text.DocumentEvent)
    - */
    - public void documentAboutToBeChanged(DocumentEvent event) {
    - // do nothing
    - }
    -
    - /**
    - * @see org.eclipse.jface.text.IDocumentListener#documentChanged(org.eclipse.jface.text.DocumentEvent)
    - */
    - public void documentChanged(DocumentEvent event) {
    - // mark translation for rebuilding
    - fDocumentIsDirty = true;
    - }
    -
    - public void release() {
    -
    - if (fJspDocument != null)
    - fJspDocument.removeDocumentListener(this);
    -
    - if (fTranslationMonitor != null)
    - fTranslationMonitor.setCanceled(true);
    -
    - if (fJSPTranslation != null) {
    -
    - if (DEBUG)
    - System.out.println("JSPTranslationAdapter releasing:" + fJSPTranslation); //$NON-NLS-1$
    -
    - fJSPTranslation.release();
    - }
    - }
    -
    - /**
    - * Returns the JSPTranslation for this adapter.
    - *
    - * @return a JSPTranslationExtension
    - */
    - public synchronized JSPTranslationExtension getJSPTranslation() {
    -
    - if (fJSPTranslation == null || fDocumentIsDirty) {
    - JSPTranslator translator = null;
    - if (getXMLModel() != null && getXMLModel().getIndexedRegion(0) != null) {
    - translator = getTranslator((IDOMNode) getXMLModel().getIndexedRegion(0));
    - translator.translate();
    - StringBuffer javaContents = translator.getTranslation();
    - fJavaDocument = new Document(javaContents.toString());
    - }
    - else {
    - // empty document case
    - translator = createTranslator();
    - StringBuffer emptyContents = translator.getEmptyTranslation();
    - fJavaDocument = new Document(emptyContents.toString());
    - }
    - // it's going to be rebuilt, so we release it here
    - if (fJSPTranslation != null) {
    - if (DEBUG)
    - System.out.println("JSPTranslationAdapter releasing:" + fJSPTranslation); //$NON-NLS-1$
    - fJSPTranslation.release();
    - }
    - fJSPTranslation = new JSPTranslationExtension(getXMLModel().getStructuredDocument(), fJavaDocument, getJavaProject(), translator);
    - fDocumentIsDirty = false;
    - }
    - return fJSPTranslation;
    - }
    -
    - JSPTranslator createTranslator() {
    - return new JSPTranslator();
    - }
    -
    - /**
    - * Returns the JSPTranslator for this adapter. If it's null, a new
    - * translator is created with the xmlNode. Otherwise the
    - * translator.reset(xmlNode) is called to reset the current local
    - * translator.
    - *
    - * @param xmlNode
    - * the first node of the JSP document to be translated
    - * @return the JSPTranslator for this adapter (creates if null)
    - */
    - private JSPTranslator getTranslator(IDOMNode xmlNode) {
    - if (fTranslator == null) {
    - fTranslationMonitor = new NullProgressMonitor();
    - fTranslator = createTranslator();
    - fTranslator.reset(xmlNode, fTranslationMonitor);
    - }
    - else
    - fTranslator.reset(xmlNode, fTranslationMonitor);
    - return fTranslator;
    - }
    -
    - /**
    - * set the XMLModel for this adapter. Must be called.
    - *
    - * @param xmlModel
    - */
    - public void setXMLModel(IDOMModel xmlModel) {
    - fXMLModel = xmlModel;
    - setDocument(fXMLModel.getStructuredDocument());
    - }
    -
    - /**
    - * @return the XMLModel for this adapter.
    - */
    - private IDOMModel getXMLModel() {
    - return fXMLModel;
    - }
    -
    - /**
    - * Gets (or creates via JavaCore) a JavaProject based on the location of
    - * this adapter's XMLModel. Returns null for non IFile based models.
    - *
    - * @return the java project where
    - */
    - public IJavaProject getJavaProject() {
    -
    - IJavaProject javaProject = null;
    - try {
    - String baseLocation = getXMLModel().getBaseLocation();
    - // 20041129 (pa) the base location changed for XML model
    - // because of FileBuffers, so this code had to be updated
    - // https://bugs.eclipse.org/bugs/show_bug.cgi?id=79686
    - IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
    - IPath filePath = new Path(baseLocation);
    - IProject project = null;
    - if (filePath.segmentCount() > 0) {
    - project = root.getProject(filePath.segment(0));
    - }
    -// IFile[] files = ResourcesPlugin.getWorkspace().getRoot().findFilesForLocation(new Path(baseLocation));
    -// for (int i = 0; project == null && i < files.length; i++) {
    -// if (files[i].getType() != IResource.PROJECT) {
    -// project = files[i].getProject();
    -// break;
    -// }
    -// }
    - if (project != null) {
    - javaProject = JavaCore.create(project);
    - }
    - }
    - catch (Exception ex) {
    - if (getXMLModel() != null)
    - Logger.logException("(JSPTranslationAdapter) problem getting java project from the XMLModel's baseLocation > " + getXMLModel().getBaseLocation(), ex); //$NON-NLS-1$
    - else
    - Logger.logException("(JSPTranslationAdapter) problem getting java project", ex); //$NON-NLS-1$
    - }
    - return javaProject;
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationAdapterFactory.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationAdapterFactory.java
    deleted file mode 100644
    index dbe0b4eba0..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationAdapterFactory.java
    +++ /dev/null
    @@ -1,61 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.java;
    -
    -import org.eclipse.core.runtime.Platform;
    -import org.eclipse.wst.sse.core.internal.provisional.AbstractAdapterFactory;
    -import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
    -import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
    -import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
    -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
    -
    -/**
    - * Factory for JSPTranslationAdapters.
    - *
    - * @author pavery
    - *
    - */
    -public class JSPTranslationAdapterFactory extends AbstractAdapterFactory {
    -
    - private JSPTranslationAdapter fAdapter = null;
    -
    - // for debugging
    - static final boolean DEBUG = Boolean.valueOf(Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/jsptranslation")).booleanValue(); //$NON-NLS-1$;
    -
    - public JSPTranslationAdapterFactory() {
    - super(IJSPTranslation.class, true);
    - }
    -
    - public INodeAdapterFactory copy() {
    - return new JSPTranslationAdapterFactory();
    - }
    -
    - protected INodeAdapter createAdapter(INodeNotifier target) {
    - if (target instanceof IDOMNode && fAdapter == null) {
    - fAdapter = new JSPTranslationAdapter(((IDOMNode) target).getModel());
    - if(DEBUG) {
    - System.out.println("(+) JSPTranslationAdapterFactory [" + this + "] created adapter: " + fAdapter); //$NON-NLS-1$ //$NON-NLS-2$
    - }
    - }
    - return fAdapter;
    - }
    -
    -
    - public void release() {
    - if (fAdapter != null) {
    - if(DEBUG) {
    - System.out.println("(-) JSPTranslationAdapterFactory [" + this + "] releasing adapter: " + fAdapter); //$NON-NLS-1$ //$NON-NLS-2$
    - }
    - fAdapter.release();
    - }
    - super.release();
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationExtension.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationExtension.java
    deleted file mode 100644
    index 72ed408932..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationExtension.java
    +++ /dev/null
    @@ -1,463 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 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.jsp.core.internal.java;
    -
    -import java.util.ArrayList;
    -import java.util.Arrays;
    -import java.util.HashMap;
    -import java.util.Iterator;
    -import java.util.List;
    -
    -import org.eclipse.core.runtime.Platform;
    -import org.eclipse.jdt.core.IJavaProject;
    -import org.eclipse.jdt.core.ToolFactory;
    -import org.eclipse.jdt.core.formatter.CodeFormatter;
    -import org.eclipse.jface.text.BadLocationException;
    -import org.eclipse.jface.text.IDocument;
    -import org.eclipse.jface.text.IRegion;
    -import org.eclipse.jface.text.Position;
    -import org.eclipse.jface.text.TextUtilities;
    -import org.eclipse.jst.jsp.core.internal.Logger;
    -import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
    -import org.eclipse.text.edits.DeleteEdit;
    -import org.eclipse.text.edits.InsertEdit;
    -import org.eclipse.text.edits.MalformedTreeException;
    -import org.eclipse.text.edits.MultiTextEdit;
    -import org.eclipse.text.edits.ReplaceEdit;
    -import org.eclipse.text.edits.TextEdit;
    -import org.eclipse.text.edits.UndoEdit;
    -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
    -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
    -import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
    -
    -import com.ibm.icu.util.StringTokenizer;
    -
    -
    -/**
    - * Adds the notion of IDocuments (jsp Document and java Document) Used for
    - * TextEdit translation
    - *
    - * @author pavery
    - */
    -public class JSPTranslationExtension extends JSPTranslation {
    -
    - // for debugging
    - private static final boolean DEBUG;
    - static {
    - String value = Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/jsptranslation"); //$NON-NLS-1$
    - DEBUG = value != null && value.equalsIgnoreCase("true"); //$NON-NLS-1$
    - }
    -
    - // just a convenience data structure
    - // to keep track of java position deltas
    - private class PositionDelta {
    -
    - public boolean isDeleted = false;
    - public int preOffset = 0;
    - public int preLength = 0;
    - public int postOffset = 0;
    - public int postLength = 0;
    -
    - public PositionDelta(int preOffset, int preLength) {
    - this.preOffset = preOffset;
    - this.preLength = preLength;
    - }
    -
    - public void setPostEditData(int postOffset, int postLength, boolean isDeleted) {
    - this.postOffset = postOffset;
    - this.postLength = postLength;
    - this.isDeleted = isDeleted;
    - }
    - }
    -
    - private IDocument fJspDocument = null;
    - private IDocument fJavaDocument = null;
    - private CodeFormatter fCodeFormatter = null;
    -
    - public JSPTranslationExtension(IDocument jspDocument, IDocument javaDocument, IJavaProject javaProj, JSPTranslator translator) {
    - super(javaProj, translator);
    - fJspDocument = jspDocument;
    - fJavaDocument = javaDocument;
    -
    - // make sure positions are added to Java and JSP documents
    - // this is necessary for text edits
    - addPositionsToDocuments();
    - }
    -
    - public IDocument getJspDocument() {
    - return fJspDocument;
    - }
    -
    - public IDocument getJavaDocument() {
    - return fJavaDocument;
    - }
    -
    - public String getJavaText() {
    - return getJavaDocument() != null ? getJavaDocument().get() : ""; //$NON-NLS-1$
    - }
    -
    - /**
    - * Returns a corresponding TextEdit for the JSP file given a TextEdit for
    - * a Java file.
    - *
    - * @param javaEdit
    - * @return the corresponding JSP edits (not applied to the document yet)
    - */
    - public TextEdit getJspEdit(TextEdit javaEdit) {
    -
    - if (javaEdit == null)
    - return null;
    -
    - List jspEdits = new ArrayList();
    -
    - int offset = javaEdit.getOffset();
    - int length = javaEdit.getLength();
    -
    - if (javaEdit instanceof MultiTextEdit && javaEdit.getChildren().length > 0) {
    -
    - IRegion r = TextEdit.getCoverage(getAllEdits(javaEdit));
    - offset = r.getOffset();
    - length = r.getLength();
    - }
    -
    - // get java ranges that will be affected by the edit
    - Position[] javaPositions = getJavaRanges(offset, length);
    -
    - // record position data before the change
    - Position[] jspPositions = new Position[javaPositions.length];
    - PositionDelta[] deltas = new PositionDelta[javaPositions.length];
    - for (int i = 0; i < javaPositions.length; i++) {
    - deltas[i] = new PositionDelta(javaPositions[i].offset, javaPositions[i].length);
    - // isIndirect means the position doesn't actually exist as exact
    - // text
    - // mapping from java <-> jsp (eg. an import statement)
    - if (!isIndirect(javaPositions[i].offset))
    - jspPositions[i] = (Position) getJava2JspMap().get(javaPositions[i]);
    - }
    -
    - if (DEBUG) {
    - System.out.println("================================================"); //$NON-NLS-1$
    - System.out.println("deltas:"); //$NON-NLS-1$
    - String javaText = getJavaText();
    - for (int i = 0; i < deltas.length; i++)
    - System.out.println("pos[" + deltas[i].preOffset + ":" + deltas[i].preLength + "]" + javaText.substring(deltas[i].preOffset, deltas[i].preOffset + deltas[i].preLength)); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
    - System.out.println("==============================================="); //$NON-NLS-1$
    - }
    - UndoEdit undo = null;
    - // apply the edit to the java document
    - try {
    - undo = javaEdit.apply(getJavaDocument());
    - }
    - catch (MalformedTreeException e) {
    - Logger.logException(e);
    - }
    - catch (BadLocationException e) {
    - Logger.logException(e);
    - }
    - // now at this point Java positions are unreliable since they were
    - // updated after applying java edit.
    -
    - String newJavaText = getJavaDocument().get();
    - if (DEBUG)
    - System.out.println("java post format text:\n" + newJavaText); //$NON-NLS-1$
    -
    - // record post edit data
    - for (int i = 0; i < javaPositions.length; i++)
    - deltas[i].setPostEditData(javaPositions[i].offset, javaPositions[i].length, javaPositions[i].isDeleted);
    -
    - // create appropriate text edits for deltas
    - Position jspPos = null;
    - String replaceText = ""; //$NON-NLS-1$
    - for (int i = 0; i < deltas.length; i++) {
    - jspPos = jspPositions[i];
    - // can be null if it's an indirect mapping position
    - // or if something was added into java that was not originally in
    - // JSP (like a new import...)
    -
    - if (jspPos != null) {
    - if (deltas[i].isDeleted) {
    - jspEdits.add(new DeleteEdit(jspPos.offset, jspPos.length));
    - }
    - else {
    - replaceText = newJavaText.substring(deltas[i].postOffset, deltas[i].postOffset + deltas[i].postLength);
    -
    - // get rid of pre and post white space or fine tuned
    - // adjustment later.
    - // fix text here...
    - replaceText = fixJspReplaceText(replaceText, jspPos.offset);
    -
    - jspEdits.add(new ReplaceEdit(jspPos.offset, jspPos.length, replaceText));
    - }
    - if (DEBUG)
    - debugReplace(deltas, jspPos, replaceText, i);
    - }
    - else {
    - // the new Java text has no corresponding JSP position
    - // possible new import?
    - if (isImport(javaPositions[i].getOffset()) && replaceText.lastIndexOf("import ") != -1) { //$NON-NLS-1$
    - replaceText = newJavaText.substring(deltas[i].postOffset, deltas[i].postOffset + deltas[i].postLength);
    - String importText = replaceText.substring(replaceText.lastIndexOf("import "), replaceText.indexOf(";")); //$NON-NLS-1$ //$NON-NLS-2$
    - // evenutally need to check if it's XML-JSP
    - importText = "<%@page import=\"" + importText + "\" %>\n"; //$NON-NLS-1$ //$NON-NLS-2$
    - jspEdits.add(new InsertEdit(0, importText));
    - }
    - }
    - }
    - TextEdit allJspEdits = createMultiTextEdit((TextEdit[]) jspEdits.toArray(new TextEdit[jspEdits.size()]));
    -
    - // https://bugs.eclipse.org/bugs/show_bug.cgi?id=105632
    - // undo the java edit
    - // (so the underlying Java document still represents what's in the
    - // editor)
    - if (undo != null) {
    - try {
    - undo.apply(getJavaDocument());
    - }
    - catch (MalformedTreeException e) {
    - Logger.logException(e);
    - }
    - catch (BadLocationException e) {
    - Logger.logException(e);
    - }
    - }
    -
    - return allJspEdits;
    - }
    -
    - private String fixJspReplaceText(String replaceText, int jspOffset) {
    -
    - // result is the text inbetween the delimiters
    - // eg.
    - //
    - // <% result
    - // %>
    - String result = replaceText.trim();
    - String preDelimiterWhitespace = ""; //$NON-NLS-1$
    -
    - IDocument jspDoc = getJspDocument();
    - if (jspDoc instanceof IStructuredDocument) {
    - IStructuredDocument sDoc = (IStructuredDocument) jspDoc;
    - IStructuredDocumentRegion[] regions = sDoc.getStructuredDocumentRegions(0, jspOffset);
    - IStructuredDocumentRegion lastRegion = regions[regions.length - 1];
    -
    - // only specifically modify scriptlets
    - if (lastRegion != null && lastRegion.getType() == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN) {
    - for (int i = regions.length - 1; i >= 0; i--) {
    - IStructuredDocumentRegion region = regions[i];
    -
    - // is there a better way to check whitespace?
    - if (region.getType() == DOMRegionContext.XML_CONTENT && region.getFullText().trim().equals("")) { //$NON-NLS-1$
    -
    - preDelimiterWhitespace = region.getFullText();
    - preDelimiterWhitespace = preDelimiterWhitespace.replaceAll("\r", ""); //$NON-NLS-1$ //$NON-NLS-2$
    - preDelimiterWhitespace = preDelimiterWhitespace.replaceAll("\n", ""); //$NON-NLS-1$ //$NON-NLS-2$
    -
    - // need to determine indent for that first line...
    - String initialIndent = getInitialIndent(result);
    -
    - // fix the first line of java code
    - result = TextUtilities.getDefaultLineDelimiter(sDoc) + initialIndent + result;
    -
    - result = adjustIndent(result, preDelimiterWhitespace, TextUtilities.getDefaultLineDelimiter(sDoc));
    -
    - // add whitespace before last delimiter to match
    - // it w/ the opening delimiter
    - result = result + TextUtilities.getDefaultLineDelimiter(sDoc) + preDelimiterWhitespace;
    - break;
    - }
    - }
    - }
    - }
    - return result;
    - }
    -
    - private String adjustIndent(String textBefore, String indent, String delim) {
    -
    - // first replace multiple indent with single indent
    - // the triple indent occurs because the scriptlet code
    - // actually occurs under:
    - //
    - // class
    - // method
    - // code
    - //
    - // in the translated java document
    - // BUG188636 - just get indent info from code formatter
    - String level1 = getCodeFormatter().createIndentationString(1);
    - String level3 = getCodeFormatter().createIndentationString(3);
    - String theOld = "\n" + level3; //$NON-NLS-1$
    - String theNew = "\n" + level1; //$NON-NLS-1$
    - textBefore = textBefore.replaceAll(theOld, theNew);
    -
    - // get indent after 2nd line break
    - StringBuffer textAfter = new StringBuffer();
    - // will this work on mac?
    - textBefore = textBefore.replaceAll("\r", ""); //$NON-NLS-1$ //$NON-NLS-2$
    - StringTokenizer st = new StringTokenizer(textBefore, "\n", true); //$NON-NLS-1$
    - while (st.hasMoreTokens()) {
    - String tok = st.nextToken();
    - if (tok.equals("\n")) { //$NON-NLS-1$
    - textAfter.append(delim);
    - }
    - else {
    - // prepend each line w/ specified indent
    - textAfter.append(indent);
    - textAfter.append(tok);
    - }
    - }
    - return textAfter.toString();
    -
    - }
    -
    - private String getInitialIndent(String result) {
    - // BUG188636 - just get initial indent from code formatter
    - String indent = getCodeFormatter().createIndentationString(1);
    - // // get indent after 2nd line break
    - // String indent = ""; //$NON-NLS-1$
    - // StringTokenizer st = new StringTokenizer(result, "\r\n", false);
    - // //$NON-NLS-1$
    - // if (st.countTokens() > 1) {
    - // String tok = st.nextToken();
    - // tok = st.nextToken();
    - // int index = 0;
    - // if (tok != null) {
    - // while (tok.charAt(index) == ' ' || tok.charAt(index) == '\t') {
    - // indent += tok.charAt(index);
    - // index++;
    - // }
    - // }
    - // }
    - return indent;
    - }
    -
    - private CodeFormatter getCodeFormatter() {
    - if (fCodeFormatter == null)
    - fCodeFormatter = ToolFactory.createCodeFormatter(null);
    - return fCodeFormatter;
    - }
    -
    -
    - /**
    - * Combines an array of edits into one MultiTextEdit (with the appropriate
    - * coverage region)
    - *
    - * @param edits
    - * @return
    - */
    - private TextEdit createMultiTextEdit(TextEdit[] edits) {
    -
    - if (edits.length == 0)
    - return new MultiTextEdit();
    -
    - IRegion region = TextEdit.getCoverage(edits);
    - MultiTextEdit multiEdit = new MultiTextEdit(region.getOffset(), region.getLength());
    - for (int i = 0; i < edits.length; i++) {
    - addToMultiEdit(edits[i], multiEdit);
    - }
    - return multiEdit;
    - }
    -
    -
    - private void addToMultiEdit(TextEdit edit, MultiTextEdit multiEdit) {
    -
    - // check for overlap here
    - // discard overlapping edits..
    - // possible exponential performance hit... need a better way...
    - TextEdit[] children = multiEdit.getChildren();
    - for (int i = 0; i < children.length; i++) {
    - if (children[i].covers(edit))
    - // don't add
    - return;
    - }
    - multiEdit.addChild(edit);
    - }
    -
    -
    - /**
    - * @param translation
    - */
    - private void addPositionsToDocuments() {
    -
    - // can be null if it's a NullJSPTranslation
    - if (getJavaDocument() != null && getJspDocument() != null) {
    -
    - HashMap java2jsp = getJava2JspMap();
    - Iterator it = java2jsp.keySet().iterator();
    - Position javaPos = null;
    - while (it.hasNext()) {
    - javaPos = (Position) it.next();
    - try {
    -
    - fJavaDocument.addPosition(javaPos);
    -
    - }
    - catch (BadLocationException e) {
    - if (DEBUG) {
    - System.out.println("tyring to add Java Position:[" + javaPos.offset + ":" + javaPos.length + "] to " + getJavaPath()); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
    - // System.out.println("substring :[" +
    - // fJavaDocument.get().substring(javaPos.offset) +
    - // "]"); //$NON-NLS-1$ //$NON-NLS-2$
    - Logger.logException(e);
    - }
    - }
    -
    - try {
    -
    - fJspDocument.addPosition((Position) java2jsp.get(javaPos));
    -
    - }
    - catch (BadLocationException e) {
    - if (DEBUG) {
    - System.out.println("tyring to add JSP Position:[" + ((Position) java2jsp.get(javaPos)).offset + ":" + ((Position) java2jsp.get(javaPos)).length + "] to " + getJavaPath()); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
    - Logger.logException(e);
    - }
    - }
    - }
    - }
    - }
    -
    - /**
    - * Recursively gets all child edits
    - *
    - * @param javaEdit
    - * @return all child edits
    - */
    - private TextEdit[] getAllEdits(TextEdit javaEdit) {
    -
    - List result = new ArrayList();
    - if (javaEdit instanceof MultiTextEdit) {
    - TextEdit[] children = javaEdit.getChildren();
    - for (int i = 0; i < children.length; i++)
    - result.addAll(Arrays.asList(getAllEdits(children[i])));
    - }
    - else
    - result.add(javaEdit);
    - return (TextEdit[]) result.toArray(new TextEdit[result.size()]);
    - }
    -
    - /**
    - * @param deltas
    - * @param jspPos
    - * @param replaceText
    - * @param jspText
    - * @param i
    - */
    - private void debugReplace(PositionDelta[] deltas, Position jspPos, String replaceText, int i) {
    - String jspChunk;
    - jspChunk = getJspDocument().get().substring(jspPos.offset, jspPos.offset + jspPos.length);
    - if (!deltas[i].isDeleted) {
    - System.out.println("replacing:"); //$NON-NLS-1$
    - System.out.println("jsp:[" + jspChunk + "]"); //$NON-NLS-1$ //$NON-NLS-2$
    - System.out.println("w/ :[" + replaceText + "]"); //$NON-NLS-1$ //$NON-NLS-2$
    - System.out.println("--------------------------------"); //$NON-NLS-1$
    - }
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationUtil.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationUtil.java
    deleted file mode 100644
    index 2d72c36a21..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationUtil.java
    +++ /dev/null
    @@ -1,125 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 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.jsp.core.internal.java;
    -
    -import org.eclipse.jdt.core.ICompilationUnit;
    -import org.eclipse.jface.text.IDocument;
    -import org.eclipse.jst.jsp.core.internal.modelhandler.ModelHandlerForJSP;
    -import org.eclipse.text.edits.CopySourceEdit;
    -import org.eclipse.text.edits.CopyTargetEdit;
    -import org.eclipse.text.edits.DeleteEdit;
    -import org.eclipse.text.edits.InsertEdit;
    -import org.eclipse.text.edits.MoveSourceEdit;
    -import org.eclipse.text.edits.MoveTargetEdit;
    -import org.eclipse.text.edits.MultiTextEdit;
    -import org.eclipse.text.edits.ReplaceEdit;
    -import org.eclipse.text.edits.TextEdit;
    -import org.eclipse.wst.sse.core.StructuredModelManager;
    -import org.eclipse.wst.sse.core.internal.provisional.IModelManager;
    -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
    -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
    -
    -public class JSPTranslationUtil {
    - protected IDocument fDocument = null;
    - protected JSPTranslationExtension fTranslation = null;
    -
    - public JSPTranslationUtil(IDocument document) {
    - fDocument = document;
    - }
    -
    - public TextEdit translateTextEdit(TextEdit textEdit) {
    - TextEdit translatedTextEdit = null;
    -
    - int javaOffset = textEdit.getOffset();
    - int jspOffset = getTranslation().getJspOffset(textEdit.getOffset());
    - int length = textEdit.getLength();
    -
    - if (textEdit instanceof MultiTextEdit) {
    - translatedTextEdit = new MultiTextEdit();
    - TextEdit[] children = ((MultiTextEdit) textEdit).getChildren();
    - for (int i = 0; i < children.length; i++) {
    - TextEdit translatedChildTextEdit = translateTextEdit(children[i]);
    - if (translatedChildTextEdit != null)
    - ((MultiTextEdit) translatedTextEdit).addChild(translatedChildTextEdit);
    - }
    - }
    - else if (textEdit instanceof ReplaceEdit) {
    - if (jspOffset == -1)
    - return null;
    -
    - if (!getTranslation().javaSpansMultipleJspPartitions(javaOffset, length))
    - translatedTextEdit = new ReplaceEdit(jspOffset, length, ((ReplaceEdit) textEdit).getText());
    - }
    - else if (textEdit instanceof InsertEdit) {
    - translatedTextEdit = new InsertEdit(jspOffset, ((InsertEdit) textEdit).getText());
    - }
    - else if (textEdit instanceof DeleteEdit) {
    - translatedTextEdit = new DeleteEdit(jspOffset, length);
    - TextEdit[] children = ((DeleteEdit) textEdit).getChildren();
    - for (int i = 0; i < children.length; i++) {
    - TextEdit translatedChildTextEdit = translateTextEdit(children[i]);
    - if (translatedChildTextEdit != null)
    - ((DeleteEdit) translatedTextEdit).addChild(translatedChildTextEdit);
    - }
    - }
    - else if (textEdit instanceof CopySourceEdit) {
    - translatedTextEdit = new CopySourceEdit(jspOffset, length);
    - ((CopySourceEdit) translatedTextEdit).setTargetEdit(((CopySourceEdit) textEdit).getTargetEdit());
    - ((CopySourceEdit) translatedTextEdit).setSourceModifier(((CopySourceEdit) textEdit).getSourceModifier());
    - }
    - else if (textEdit instanceof CopyTargetEdit) {
    - translatedTextEdit = new CopyTargetEdit(jspOffset);
    - ((CopyTargetEdit) textEdit).getSourceEdit().setTargetEdit((CopyTargetEdit) translatedTextEdit);
    - }
    - else if (textEdit instanceof MoveSourceEdit) {
    - translatedTextEdit = new MoveSourceEdit(jspOffset, length);
    - ((MoveSourceEdit) translatedTextEdit).setTargetEdit(((MoveSourceEdit) textEdit).getTargetEdit());
    - }
    - else if (textEdit instanceof MoveTargetEdit) {
    - translatedTextEdit = new MoveTargetEdit(jspOffset);
    - ((MoveTargetEdit) textEdit).getSourceEdit().setTargetEdit((MoveTargetEdit) translatedTextEdit);
    - }
    - else {
    - System.out.println("Need to translate " + textEdit); //$NON-NLS-1$
    - }
    -
    - return translatedTextEdit;
    - }
    -
    - public JSPTranslationExtension getTranslation() {
    - if (fTranslation == null) {
    - IDOMModel xmlModel = (IDOMModel) getModelManager().getExistingModelForRead(fDocument);
    - ModelHandlerForJSP.ensureTranslationAdapterFactory(xmlModel);
    - try {
    - IDOMDocument xmlDoc = xmlModel.getDocument();
    -
    - JSPTranslationAdapter translationAdapter = (JSPTranslationAdapter) xmlDoc.getAdapterFor(IJSPTranslation.class);
    - if (translationAdapter != null)
    - fTranslation = translationAdapter.getJSPTranslation();
    - }
    - finally {
    - if (xmlModel != null) {
    - xmlModel.releaseFromRead();
    - }
    - }
    - }
    -
    - return fTranslation;
    - }
    -
    - public ICompilationUnit getCompilationUnit() {
    - return getTranslation().getCompilationUnit();
    - }
    -
    - protected IModelManager getModelManager() {
    - return StructuredModelManager.getModelManager();
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslator.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslator.java
    deleted file mode 100644
    index fe854a6d55..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslator.java
    +++ /dev/null
    @@ -1,2943 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2009 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
    - * Frits Jalvingh - contributions for bug 150794
    - *******************************************************************************/
    -package org.eclipse.jst.jsp.core.internal.java;
    -
    -import java.io.BufferedInputStream;
    -import java.io.BufferedReader;
    -import java.io.IOException;
    -import java.io.InputStream;
    -import java.io.InputStreamReader;
    -import java.io.Reader;
    -import java.util.ArrayList;
    -import java.util.Collection;
    -import java.util.HashMap;
    -import java.util.HashSet;
    -import java.util.Iterator;
    -import java.util.List;
    -import java.util.NoSuchElementException;
    -import java.util.Set;
    -import java.util.Stack;
    -
    -import javax.servlet.jsp.tagext.VariableInfo;
    -
    -import org.eclipse.core.resources.IFile;
    -import org.eclipse.core.resources.IProject;
    -import org.eclipse.core.resources.IResource;
    -import org.eclipse.core.resources.IWorkspaceRoot;
    -import org.eclipse.core.resources.ResourcesPlugin;
    -import org.eclipse.core.runtime.CoreException;
    -import org.eclipse.core.runtime.IConfigurationElement;
    -import org.eclipse.core.runtime.IExtension;
    -import org.eclipse.core.runtime.IExtensionPoint;
    -import org.eclipse.core.runtime.IPath;
    -import org.eclipse.core.runtime.IProgressMonitor;
    -import org.eclipse.core.runtime.Path;
    -import org.eclipse.core.runtime.Platform;
    -import org.eclipse.core.runtime.QualifiedName;
    -import org.eclipse.jdt.core.IJavaProject;
    -import org.eclipse.jdt.core.IType;
    -import org.eclipse.jdt.core.JavaCore;
    -import org.eclipse.jdt.core.JavaModelException;
    -import org.eclipse.jdt.core.compiler.IProblem;
    -import org.eclipse.jface.text.IDocument;
    -import org.eclipse.jface.text.Position;
    -import org.eclipse.jst.jsp.core.internal.JSPCoreMessages;
    -import org.eclipse.jst.jsp.core.internal.Logger;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.TaglibController;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.TLDCMDocumentManager;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.JSP12TLDNames;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDElementDeclaration;
    -import org.eclipse.jst.jsp.core.internal.contenttype.DeploymentDescriptorPropertyCache;
    -import org.eclipse.jst.jsp.core.internal.contenttype.DeploymentDescriptorPropertyCache.PropertyGroup;
    -import org.eclipse.jst.jsp.core.internal.provisional.JSP11Namespace;
    -import org.eclipse.jst.jsp.core.internal.provisional.JSP12Namespace;
    -import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
    -import org.eclipse.jst.jsp.core.internal.taglib.TaglibHelper;
    -import org.eclipse.jst.jsp.core.internal.taglib.TaglibHelperManager;
    -import org.eclipse.jst.jsp.core.internal.taglib.TaglibVariable;
    -import org.eclipse.jst.jsp.core.internal.util.FacetModuleCoreSupport;
    -import org.eclipse.jst.jsp.core.internal.util.ZeroStructuredDocumentRegion;
    -import org.eclipse.jst.jsp.core.jspel.IJSPELTranslator;
    -import org.eclipse.osgi.util.NLS;
    -import org.eclipse.wst.html.core.internal.contentmodel.JSP20Namespace;
    -import org.eclipse.wst.sse.core.StructuredModelManager;
    -import org.eclipse.wst.sse.core.internal.ltk.parser.BlockMarker;
    -import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
    -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
    -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
    -import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
    -import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionCollection;
    -import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionContainer;
    -import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
    -import org.eclipse.wst.sse.core.utils.StringUtils;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
    -import org.eclipse.wst.xml.core.internal.parser.ContextRegionContainer;
    -import org.eclipse.wst.xml.core.internal.provisional.contentmodel.CMDocumentTracker;
    -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
    -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
    -import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
    -
    -import com.ibm.icu.text.MessageFormat;
    -import com.ibm.icu.util.StringTokenizer;
    -
    -/**
    - * Translates a JSP document into a HttpServlet subclass. Keeps two way mapping from
    - * Java translation to the original JSP source, which can be obtained through
    - * getJava2JspRanges() and getJsp2JavaRanges().
    - */
    -public class JSPTranslator {
    - // the name of the element in the extension point
    - private static final String EL_TRANSLATOR_EXTENSION_NAME = "elTranslator"; //$NON-NLS-1$
    - private static final String ELTRANSLATOR_PROP_NAME = "ELTranslator"; //$NON-NLS-1$
    -
    - // Default EL Translator extension ID
    - private static final String DEFAULT_JSP_EL_TRANSLATOR_ID = "org.eclipse.jst.jsp.defaultJSP20"; //$NON-NLS-1$
    -
    - // handy plugin ID constant
    - private static final String JSP_CORE_PLUGIN_ID = "org.eclipse.jst.jsp.core"; //$NON-NLS-1$
    -
    - // for debugging
    - private static final boolean DEBUG = "true".equalsIgnoreCase(Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/jspjavamapping")); //$NON-NLS-1$ //$NON-NLS-2$
    -
    - private IJSPELTranslator fELTranslator = null;
    -
    - public static final String ENDL = "\n"; //$NON-NLS-1$
    -
    - String fClassHeader = null;
    - String fClassname = null;
    -
    - String fImplicitImports = null;
    -
    - String fServiceHeader = null;
    -
    - private String fSessionVariableDeclaration = "javax.servlet.http.HttpSession session = null;" + ENDL; //$NON-NLS-1$
    - private String fFooter = "}}"; //$NON-NLS-1$
    - private String fException = "Throwable exception = null;"; //$NON-NLS-1$
    - public static final String EXPRESSION_PREFIX = "out.print(\"\"+"; //$NON-NLS-1$
    - public static final String EXPRESSION_SUFFIX = ");"; //$NON-NLS-1$
    - String fSuperclass = null;
    -
    - private String fTryCatchStart = ENDL + "try {" + ENDL; //$NON-NLS-1$
    - static final String JSP_PREFIX = "jsp:"; //$NON-NLS-1$
    - private List fTranslationProblems = new ArrayList();
    - private String fTryCatchEnd = " } catch (java.lang.Exception e) {} " + ENDL; //$NON-NLS-1$
    -
    - /** fSourcePosition = position in JSP source */
    - private int fSourcePosition = -1;
    - /** fRelativeOffest = offset in the buffer there the cursor is */
    - private int fRelativeOffset = -1;
    - /** fCursorPosition = offset in the translated java document */
    - private int fCursorPosition = -1;
    -
    - /** some page directive attributes */
    - private boolean fIsErrorPage, fCursorInExpression = false;
    - private boolean fIsInASession = true;
    -
    - /** user java code in body of the service method */
    - private StringBuffer fUserCode = new StringBuffer();
    - /** user EL Expression */
    - private StringBuffer fUserELExpressions = new StringBuffer();
    - /** user defined vars declared in the beginning of the class */
    - private StringBuffer fUserDeclarations = new StringBuffer();
    -
    - /** user defined imports */
    - private StringBuffer fUserImports = new StringBuffer();
    -
    - /**
    - * A map of tag names to tag library variable information; used to store
    - * the ones needed for AT_END variable support.
    - */
    - private StackMap fTagToVariableMap = null;
    - private Stack fUseBeansStack = new Stack();
    -
    - private StringBuffer fResult; // the final traslated java document
    - // string buffer
    - private StringBuffer fCursorOwner = null; // the buffer where the cursor
    - // is
    -
    - private IDOMModel fStructuredModel = null;
    - private IStructuredDocument fStructuredDocument = null;
    - private IStructuredDocumentRegion fCurrentNode;
    - private boolean fInCodeRegion = false; // flag for if cursor is in the
    - // current region being translated
    -
    - /**
    - * these constants are to keep track of whether the code in question is
    - * embedded (JSP as an attribute or within comment tags) or is just
    - * standard JSP code, or identifies if it's an expression
    - */
    - protected final static int STANDARD_JSP = 0;
    - protected final static int EMBEDDED_JSP = 1;
    - protected final static int DECLARATION = 2;
    - protected final static int EXPRESSION = 4;
    - protected final static int SCRIPTLET = 8;
    -
    - /** used to avoid infinite looping include files */
    - private Stack fIncludes = null;
    - private Set fIncludedPaths = new HashSet(2);
    - private boolean fProcessIncludes = true;
    - /** mostly for helper classes, so they parse correctly */
    - private ArrayList fBlockMarkers = null;
    - /**
    - * for keeping track of offset in user buffers while document is being
    - * built
    - */
    - private int fOffsetInUserImports = 0;
    - private int fOffsetInUserDeclarations = 0;
    - private int fOffsetInUserCode = 0;
    -
    - /** correlates ranges (positions) in java to ranges in jsp */
    - private HashMap fJava2JspRanges = new HashMap();
    -
    - /**
    - * map of ranges in fUserImports (relative to the start of the buffer) to
    - * ranges in source JSP buffer.
    - */
    - private HashMap fImportRanges = new HashMap();
    - /**
    - * map of ranges in fUserCode (relative to the start of the buffer) to
    - * ranges in source JSP buffer.
    - */
    - private HashMap fCodeRanges = new HashMap();
    - /**
    - * map of ranges in fUserDeclarations (relative to the start of the
    - * buffer) to ranges in source JSP buffer.
    - */
    - private HashMap fDeclarationRanges = new HashMap();
    -
    - private HashMap fUseBeanRanges = new HashMap();
    -
    - private HashMap fUserELRanges = new HashMap();
    -
    - /**
    - * ranges that don't directly map from java code to JSP code (eg.
    - * <%@include file="included.jsp"%>
    - */
    - private HashMap fIndirectRanges = new HashMap();
    -
    - private IProgressMonitor fProgressMonitor = null;
    -
    - /**
    - * save JSP document text for later use may just want to read this from
    - * the file or strucdtured document depending what is available
    - */
    - private StringBuffer fJspTextBuffer = new StringBuffer();
    -
    -
    - /**
    - * List of EL problems to be translated
    - */
    - private ArrayList fELProblems = new ArrayList();
    -
    - /**
    - * EL Translator ID (pluggable)
    - */
    - private String fELTranslatorID;
    -
    - /**
    - * A structure for holding a region collection marker and list of variable
    - * information. The region can be used later for positioning validation
    - * messages.
    - */
    - static class RegionTaglibVariables {
    - ITextRegionCollection region;
    - TaglibVariable[] variables;
    -
    - RegionTaglibVariables(ITextRegionCollection region, TaglibVariable[] variables) {
    - this.region = region;
    - this.variables = variables;
    - }
    - }
    -
    - public JSPTranslator() {
    - super();
    - init();
    - }
    -
    - /**
    - * configure using an XMLNode
    - *
    - * @param node
    - * @param monitor
    - */
    - private void configure(IDOMNode node, IProgressMonitor monitor) {
    -
    - fProgressMonitor = monitor;
    - fStructuredModel = node.getModel();
    - String baseLocation = fStructuredModel.getBaseLocation();
    -
    - fELTranslatorID = getELTranslatorProperty(baseLocation);
    -
    - fStructuredDocument = fStructuredModel.getStructuredDocument();
    -
    - String className = createClassname(node);
    - if (className.length() > 0) {
    - setClassname(className);
    - fClassHeader = "public class " + className + " extends "; //$NON-NLS-1$ //$NON-NLS-2$
    - }
    -
    - }
    -
    - /**
    - * memory saving configure (no StructuredDocument in memory) currently
    - * doesn't handle included files
    - *
    - * @param jspFile
    - * @param monitor
    - */
    - private void configure(IFile jspFile, IProgressMonitor monitor) {
    - // when configured on a file
    - // fStructuredModel, fPositionNode, fModelQuery, fStructuredDocument
    - // are all null
    - fProgressMonitor = monitor;
    -
    - fELTranslatorID = getELTranslatorProperty(jspFile);
    -
    - String className = createClassname(jspFile);
    - if (className.length() > 0) {
    - setClassname(className);
    - fClassHeader = "public class " + className + " extends "; //$NON-NLS-1$ //$NON-NLS-2$
    - }
    - }
    -
    - /**
    - * Set the jsp text from an IFile
    - *
    - * @param jspFile
    - */
    - private void setJspText(IFile jspFile) {
    - try {
    - BufferedInputStream in = new BufferedInputStream(jspFile.getContents());
    - BufferedReader reader = new BufferedReader(new InputStreamReader(in));
    - String line = null;
    - while ((line = reader.readLine()) != null) {
    - fJspTextBuffer.append(line);
    - fJspTextBuffer.append(ENDL);
    - }
    - reader.close();
    - }
    - catch (CoreException e) {
    - Logger.logException(e);
    - }
    - catch (IOException e) {
    - Logger.logException(e);
    - }
    - }
    -
    - /**
    - * Get the value of the ELTranslator property from a workspace relative
    - * path string
    - *
    - * @param baseLocation
    - * Workspace-relative string path
    - * @return Value of the ELTranslator property associated with the project.
    - */
    - private String getELTranslatorProperty(String baseLocation) {
    - IWorkspaceRoot workspaceRoot = ResourcesPlugin.getWorkspace().getRoot();
    - String elTranslatorValue = null;
    - IFile file = workspaceRoot.getFile(new Path(baseLocation));
    - if (file != null) {
    - elTranslatorValue = getELTranslatorProperty(file);
    - }
    - return elTranslatorValue;
    - }
    -
    - /**
    - * Get the value of the ELTranslator property from an IFile
    - *
    - * @param file
    - * IFile
    - * @return Value of the ELTranslator property associated with the project.
    - */
    - private String getELTranslatorProperty(IFile file) {
    - String elTranslatorValue = null;
    - if (file != null) {
    - if (file.exists()) {
    - try {
    - elTranslatorValue = file.getPersistentProperty(new QualifiedName(JSP_CORE_PLUGIN_ID, ELTRANSLATOR_PROP_NAME));
    - if (null == elTranslatorValue) {
    -
    - elTranslatorValue = file.getProject().getPersistentProperty(new QualifiedName(JSP_CORE_PLUGIN_ID, ELTRANSLATOR_PROP_NAME));
    - }
    - }
    - catch (CoreException e) {
    - // ISSUE: why do we log this here? Instead of allowing to
    - // throwup?
    - Logger.logException(e);
    - }
    -
    - }
    - }
    - return elTranslatorValue;
    - }
    -
    - /**
    - * @param node
    - * @return the simple class name, not fully qualified
    - */
    - private String createClassname(IDOMNode node) {
    - String classname = ""; //$NON-NLS-1$
    - if (node != null) {
    - String base = node.getModel().getBaseLocation();
    - classname = JSP2ServletNameUtil.mangle(base);
    - }
    - return classname;
    - }
    -
    - /**
    - * @param jspFile
    - * @return
    - */
    - private String createClassname(IFile jspFile) {
    -
    - String classname = ""; //$NON-NLS-1$
    - if (jspFile != null) {
    - classname = JSP2ServletNameUtil.mangle(jspFile.getFullPath().toString());
    - }
    - return classname;
    - }
    -
    - private IJSPProblem createJSPProblem(final int problemEID, final int problemID, final String message, final int start, final int end) {
    - final int line = fStructuredDocument.getLineOfOffset(start);
    - final char[] classname = fClassname.toCharArray();
    -
    - /*
    - * Note: these problems would result in translation errors on the
    - * server, so the severity is not meant to be controllable
    - */
    - return new IJSPProblem() {
    - public void setSourceStart(int sourceStart) {
    - }
    -
    - public void setSourceLineNumber(int lineNumber) {
    - }
    -
    - public void setSourceEnd(int sourceEnd) {
    - }
    -
    - public boolean isWarning() {
    - return false;
    - }
    -
    - public boolean isError() {
    - return true;
    - }
    -
    - public int getSourceStart() {
    - return start;
    - }
    -
    - public int getSourceLineNumber() {
    - return line;
    - }
    -
    - public int getSourceEnd() {
    - return end;
    - }
    -
    - public char[] getOriginatingFileName() {
    - return classname;
    - }
    -
    - public String getMessage() {
    - return message;
    - }
    -
    - public int getID() {
    - return problemID;
    - }
    -
    - public String[] getArguments() {
    - return new String[0];
    - }
    -
    - public int getEID() {
    - return problemEID;
    - }
    - };
    - }
    -
    - public void setClassname(String classname) {
    - this.fClassname = classname;
    - }
    -
    - public String getClassname() {
    - return this.fClassname != null ? this.fClassname : "GenericJspServlet"; //$NON-NLS-1$
    - }
    -
    - /**
    - * So that the JSPTranslator can be reused.
    - */
    - public void reset(IDOMNode node, IProgressMonitor progress) {
    -
    - // initialize some things on node
    - configure(node, progress);
    - reset();
    - // set the jsp text buffer
    - fJspTextBuffer.append(fStructuredDocument.get());
    - }
    -
    - /**
    - * conservative version (no StructuredDocument/Model)
    - *
    - * @param jspFile
    - * @param progress
    - */
    - public void reset(IFile jspFile, IProgressMonitor progress) {
    -
    - // initialize some things on node
    - configure(jspFile, progress);
    - reset();
    - // set the jsp text buffer
    - setJspText(jspFile);
    - }
    -
    - /**
    - * Reinitialize some fields
    - */
    - private void reset() {
    -
    - // reset progress monitor
    - if (fProgressMonitor != null)
    - fProgressMonitor.setCanceled(false);
    -
    - // reinit fields
    - fSourcePosition = -1;
    - fRelativeOffset = -1;
    - fCursorPosition = -1;
    -
    - fIsErrorPage = fCursorInExpression = false;
    -
    - fUserCode = new StringBuffer();
    - fUserDeclarations = new StringBuffer();
    - fUserImports = new StringBuffer();
    - fUserELExpressions = new StringBuffer();
    -
    - fResult = null;
    - fCursorOwner = null; // the buffer where the cursor is
    -
    - fCurrentNode = null;
    - fInCodeRegion = false; // flag for if cursor is in the current region
    - // being translated
    -
    - if (fIncludes != null)
    - fIncludes.clear();
    -
    - fBlockMarkers = null;
    -
    - fOffsetInUserImports = 0;
    - fOffsetInUserDeclarations = 0;
    - fOffsetInUserCode = 0;
    -
    - fJava2JspRanges.clear();
    - fImportRanges.clear();
    - fCodeRanges.clear();
    - fUseBeanRanges.clear();
    - fDeclarationRanges.clear();
    - fUserELRanges.clear();
    - fIndirectRanges.clear();
    - fIncludedPaths.clear();
    -
    - fJspTextBuffer = new StringBuffer();
    -
    - fELProblems = new ArrayList();
    -
    - }
    -
    - /**
    - * @return just the "shell" of a servlet, nothing contributed from the JSP
    - * doc
    - */
    - public final StringBuffer getEmptyTranslation() {
    - reset();
    - buildResult();
    - return getTranslation();
    - }
    -
    - /**
    - * put the final java document together
    - */
    - private final void buildResult() {
    - // to build the java document this is the order:
    - //
    - // + default imports
    - // + user imports
    - // + class header
    - // [+ error page]
    - // + user declarations
    - // + service method header
    - // + try/catch start
    - // + user code
    - // + try/catch end
    - // + service method footer
    - fResult = new StringBuffer(fImplicitImports.length() + fUserImports.length() + fClassHeader.length() + fUserDeclarations.length() + fServiceHeader.length() + fTryCatchStart.length() // try/catch
    - // start
    - + fUserCode.length() + fTryCatchEnd.length() // try/catch
    - // end
    - + fFooter.length());
    -
    - int javaOffset = 0;
    -
    - fResult.append(fImplicitImports);
    - javaOffset += fImplicitImports.length();
    -
    - // updateRanges(fIndirectImports, javaOffset);
    - updateRanges(fImportRanges, javaOffset);
    - // user imports
    - append(fUserImports);
    - javaOffset += fUserImports.length();
    -
    - // class header
    - fResult.append(fClassHeader); //$NON-NLS-1$
    - javaOffset += fClassHeader.length();
    - fResult.append(fSuperclass + "{" + ENDL); //$NON-NLS-1$
    - javaOffset += fSuperclass.length() + 2;
    -
    - updateRanges(fDeclarationRanges, javaOffset);
    - // user declarations
    - append(fUserDeclarations);
    - javaOffset += fUserDeclarations.length();
    -
    - updateRanges(fUserELRanges, javaOffset);
    - append(fUserELExpressions);
    - javaOffset += fUserELExpressions.length();
    -
    - fResult.append(fServiceHeader);
    - javaOffset += fServiceHeader.length();
    - // session participant
    - if (fIsInASession) {
    - fResult.append(fSessionVariableDeclaration);
    - javaOffset += fSessionVariableDeclaration.length();
    - }
    - // error page
    - if (fIsErrorPage) {
    - fResult.append(fException);
    - javaOffset += fException.length();
    - }
    -
    -
    - fResult.append(fTryCatchStart);
    - javaOffset += fTryCatchStart.length();
    -
    - updateRanges(fCodeRanges, javaOffset);
    -
    - // user code
    - append(fUserCode);
    - javaOffset += fUserCode.length();
    -
    -
    - fResult.append(fTryCatchEnd);
    - javaOffset += fTryCatchEnd.length();
    -
    - // footer
    - fResult.append(fFooter);
    - javaOffset += fFooter.length();
    -
    - fJava2JspRanges.putAll(fImportRanges);
    - fJava2JspRanges.putAll(fDeclarationRanges);
    - fJava2JspRanges.putAll(fCodeRanges);
    - fJava2JspRanges.putAll(fUserELRanges);
    -
    - }
    -
    - /**
    - * @param javaRanges
    - * @param offsetInJava
    - */
    - private void updateRanges(HashMap rangeMap, int offsetInJava) {
    - // just need to update java ranges w/ the offset we now know
    - Iterator it = rangeMap.keySet().iterator();
    - while (it.hasNext())
    - ((Position) it.next()).offset += offsetInJava;
    - }
    -
    - /**
    - * map of ranges (positions) in java document to ranges in jsp document
    - *
    - * @return a map of java positions to jsp positions.
    - */
    - public HashMap getJava2JspRanges() {
    - return fJava2JspRanges;
    - }
    -
    - /**
    - * map of ranges in jsp document to ranges in java document.
    - *
    - * @return a map of jsp positions to java positions, or null if no
    - * translation has occured yet (the map hasn't been built).
    - */
    - public HashMap getJsp2JavaRanges() {
    - if (fJava2JspRanges == null)
    - return null;
    - HashMap flipFlopped = new HashMap();
    - Iterator keys = fJava2JspRanges.keySet().iterator();
    - Object range = null;
    - while (keys.hasNext()) {
    - range = keys.next();
    - flipFlopped.put(fJava2JspRanges.get(range), range);
    - }
    - return flipFlopped;
    - }
    -
    - public HashMap getJava2JspImportRanges() {
    - return fImportRanges;
    - }
    -
    - public HashMap getJava2JspUseBeanRanges() {
    - return fUseBeanRanges;
    - }
    -
    - public HashMap getJava2JspIndirectRanges() {
    - return fIndirectRanges;
    - }
    -
    - /**
    - * Adds to the jsp<->java map by default
    - *
    - * @param value
    - * a comma delimited list of imports
    - */
    - protected void addImports(String value) {
    - addImports(value, true);
    - }
    -
    - /**
    - * Pass in a comma delimited list of import values, appends each to the
    - * final result buffer
    - *
    - * @param value
    - * a comma delimited list of imports
    - */
    - protected void addImports(String value, boolean addToMap) {
    - // https://bugs.eclipse.org/bugs/show_bug.cgi?id=81687
    - // added the "addToMap" parameter to exclude imports originating
    - // from included JSP files to be added to the jsp<->java mapping
    - StringTokenizer st = new StringTokenizer(value, ",", false); //$NON-NLS-1$
    - String tok = ""; //$NON-NLS-1$
    - // String appendage = ""; //$NON-NLS-1$
    - while (st.hasMoreTokens()) {
    - tok = st.nextToken();
    - appendImportToBuffer(tok, fCurrentNode, addToMap);
    - }
    - }
    -
    - /**
    - * /* keep track of cursor position inside the buffer /* appends buffer to
    - * the final result buffer
    - */
    - protected void append(StringBuffer buf) {
    - if (getCursorOwner() == buf) {
    - fCursorPosition = fResult.length() + getRelativeOffset();
    - }
    - fResult.append(buf.toString());
    - }
    -
    - /**
    - * Only valid after a configure(...), translate(...) or
    - * translateFromFile(...) call
    - *
    - * @return the current result (java translation) buffer
    - */
    - public final StringBuffer getTranslation() {
    -
    - if (DEBUG) {
    - StringBuffer debugString = new StringBuffer();
    - try {
    - Iterator it = fJava2JspRanges.keySet().iterator();
    - while (it.hasNext()) {
    - debugString.append("--------------------------------------------------------------\n"); //$NON-NLS-1$
    - Position java = (Position) it.next();
    - debugString.append("Java range:[" + java.offset + ":" + java.length + "]\n"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
    - debugString.append("[" + fResult.toString().substring(java.offset, java.offset + java.length) + "]\n"); //$NON-NLS-1$ //$NON-NLS-2$
    - debugString.append("--------------------------------------------------------------\n"); //$NON-NLS-1$
    - debugString.append("|maps to...|\n"); //$NON-NLS-1$
    - debugString.append("==============================================================\n"); //$NON-NLS-1$
    - Position jsp = (Position) fJava2JspRanges.get(java);
    - debugString.append("JSP range:[" + jsp.offset + ":" + jsp.length + "]\n"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
    - debugString.append("[" + fJspTextBuffer.toString().substring(jsp.offset, jsp.offset + jsp.length) + "]\n"); //$NON-NLS-1$ //$NON-NLS-2$
    - debugString.append("==============================================================\n"); //$NON-NLS-1$
    - debugString.append("\n"); //$NON-NLS-1$
    - debugString.append("\n"); //$NON-NLS-1$
    - }
    - }
    - catch (Exception e) {
    - Logger.logException("JSPTranslation error", e); //$NON-NLS-1$
    - }
    - Logger.log(Logger.INFO_DEBUG, debugString.toString());
    - }
    -
    - return fResult;
    - }
    -
    - public List getTranslationProblems() {
    - return fTranslationProblems;
    - }
    -
    - /**
    - * Only valid after a configure(...), translate(...) or
    - * translateFromFile(...) call
    - *
    - * @return the text in the JSP file
    - */
    - public final String getJspText() {
    - return fJspTextBuffer.toString();
    - }
    -
    - /**
    - * Add the server-side scripting variables used by this tag, along with
    - * any scoping.
    - *
    - * @param tagToAdd
    - * @param customTag
    - */
    - protected void addTaglibVariables(String tagToAdd, ITextRegionCollection customTag) {
    - IFile f = getFile();
    -
    - if (f == null || !f.exists())
    - return;
    -
    - TaglibHelper helper = TaglibHelperManager.getInstance().getTaglibHelper(f);
    - String decl = ""; //$NON-NLS-1$
    - if (customTag.getFirstRegion().getType().equals(DOMRegionContext.XML_TAG_OPEN)) {
    - /*
    - * Start tag
    - */
    - TaglibVariable[] taglibVars = helper.getTaglibVariables(tagToAdd, getStructuredDocument(), customTag);
    - fTranslationProblems.addAll(helper.getProblems(f.getFullPath()));
    - /*
    - * Add AT_BEGIN variables
    - */
    - for (int i = 0; i < taglibVars.length; i++) {
    - if (taglibVars[i].getScope() == VariableInfo.AT_BEGIN) {
    - decl = taglibVars[i].getDeclarationString();
    - appendToBuffer(decl, fUserCode, false, customTag);
    - }
    - }
    - /*
    - * Add a single { to limit the scope of NESTED variables
    - */
    - StringBuffer text = new StringBuffer();
    - text.append("{ // <"); //$NON-NLS-1$
    - text.append(tagToAdd);
    - if (customTag.getLastRegion().getType().equals(DOMRegionContext.XML_EMPTY_TAG_CLOSE)) {
    - text.append("/>\n"); //$NON-NLS-1$
    - }
    - else {
    - text.append(">\n"); //$NON-NLS-1$
    - }
    - appendToBuffer(text.toString(), fUserCode, false, customTag); //$NON-NLS-1$
    -
    - for (int i = 0; i < taglibVars.length; i++) {
    - if (taglibVars[i].getScope() == VariableInfo.NESTED) {
    - decl = taglibVars[i].getDeclarationString();
    - appendToBuffer(decl, fUserCode, false, customTag);
    - }
    - }
    - /*
    - * For empty tags, add the corresponding } and AT_END variables immediately.
    - */
    - if (customTag.getLastRegion().getType().equals(DOMRegionContext.XML_EMPTY_TAG_CLOSE)) {
    - text = new StringBuffer();
    - text.append("} // <"); //$NON-NLS-1$
    - text.append(tagToAdd);
    - if (customTag.getLastRegion().getType().equals(DOMRegionContext.XML_EMPTY_TAG_CLOSE)) {
    - text.append("/>\n"); //$NON-NLS-1$
    - }
    - else {
    - text.append(">\n"); //$NON-NLS-1$
    - }
    - appendToBuffer(text.toString(), fUserCode, false, customTag); //$NON-NLS-1$
    - /* Treat this as the end for empty tags */
    - for (int i = 0; i < taglibVars.length; i++) {
    - if (taglibVars[i].getScope() == VariableInfo.AT_END) {
    - decl = taglibVars[i].getDeclarationString();
    - appendToBuffer(decl, fUserCode, false, customTag);
    - }
    - }
    - }
    - else {
    - /*
    - * For non-empty tags, remember the variable information
    - */
    - fTagToVariableMap.push(tagToAdd, new RegionTaglibVariables(customTag, taglibVars));
    - }
    - }
    - else if (customTag.getFirstRegion().getType().equals(DOMRegionContext.XML_END_TAG_OPEN)) {
    - /*
    - * End tag
    - */
    - RegionTaglibVariables regionAndTaglibVars = (RegionTaglibVariables) fTagToVariableMap.pop(tagToAdd);
    - if (regionAndTaglibVars != null) {
    - /*
    - * Even an empty array of variables will indicate a need for a
    - * closing brace, so add one. If "regionAndTaglibVars" is
    - * null, that means there was no start tag for use with this
    - * end tag. Adding a '}' even then would cause a Java
    - * translation fault, but that's not particularly helpful to a
    - * user who may only know how to use custom tags. Ultimately
    - * unbalanced custom tags should just be reported as
    - * unbalanced tags.
    - */
    - TaglibVariable[] taglibVars = regionAndTaglibVars.variables;
    - StringBuffer text = new StringBuffer();
    - text.append("} // </"); //$NON-NLS-1$
    - text.append(tagToAdd);
    - if (customTag.getLastRegion().getType().equals(DOMRegionContext.XML_EMPTY_TAG_CLOSE)) {
    - text.append("/>\n"); //$NON-NLS-1$
    - }
    - else {
    - text.append(">\n"); //$NON-NLS-1$
    - }
    - appendToBuffer(text.toString(), fUserCode, false, customTag); //$NON-NLS-1$
    - for (int i = 0; i < taglibVars.length; i++) {
    - if (taglibVars[i].getScope() == VariableInfo.AT_END) {
    - decl = taglibVars[i].getDeclarationString();
    - appendToBuffer(decl, fUserCode, false, customTag);
    - }
    - }
    - }
    - else {
    - /*
    - * Since something should have been in the map because of a
    - * start tag, its absence now means an unbalanced end tag.
    - * Extras will be checked later to flag unbalanced start tags.
    - */
    - IJSPProblem missingStartTag = createJSPProblem(IJSPProblem.StartCustomTagMissing, IJSPProblem.F_PROBLEM_ID_LITERAL, "No start tag for " + tagToAdd, customTag.getStartOffset(), customTag.getEndOffset());
    - fTranslationProblems.add(missingStartTag);
    - }
    - }
    - }
    -
    - /**
    - * @return the workspace file for this model, null otherwise
    - */
    - private IFile getFile() {
    - IFile f = null;
    - IStructuredModel sModel = StructuredModelManager.getModelManager().getExistingModelForRead(getStructuredDocument());
    - try {
    - if (sModel != null) {
    - Path path = new Path(sModel.getBaseLocation());
    - if (path.segmentCount() > 1) {
    - f = ResourcesPlugin.getWorkspace().getRoot().getFile(path);
    - }
    - if (f != null && f.isAccessible()) {
    - return f;
    - }
    - }
    - return null;
    - }
    - finally {
    - if (sModel != null)
    - sModel.releaseFromRead();
    - }
    - }
    -
    - /*
    - * used by inner helper class (XMLJSPRegionHelper, JSPIncludeRegionHelper)
    - */
    - public List getBlockMarkers() {
    - if (fBlockMarkers == null)
    - fBlockMarkers = new ArrayList();
    - return fBlockMarkers;
    - }
    -
    - /**
    - * /* the main control loop for translating the document, driven by the
    - * structuredDocument nodes
    - */
    - public void translate() {
    - if (fTagToVariableMap == null) {
    - fTagToVariableMap = new StackMap();
    - }
    - fTranslationProblems.clear();
    -
    - setCurrentNode(new ZeroStructuredDocumentRegion(fStructuredDocument, 0));
    - translatePreludes();
    -
    - setCurrentNode(fStructuredDocument.getFirstStructuredDocumentRegion());
    -
    - while (getCurrentNode() != null && !isCanceled()) {
    -
    - // intercept HTML comment flat node
    - // also handles UNDEFINED (which is what CDATA comes in as)
    - // basically this part will handle any "embedded" JSP containers
    - if (getCurrentNode().getType() == DOMRegionContext.XML_COMMENT_TEXT || getCurrentNode().getType() == DOMRegionContext.XML_CDATA_TEXT || getCurrentNode().getType() == DOMRegionContext.UNDEFINED) {
    - translateXMLCommentNode(getCurrentNode());
    - }
    - else {
    - // iterate through each region in the flat node
    - translateRegionContainer(getCurrentNode(), STANDARD_JSP);
    - }
    - if (getCurrentNode() != null)
    - advanceNextNode();
    - }
    -
    - setCurrentNode(new ZeroStructuredDocumentRegion(fStructuredDocument, fStructuredDocument.getLength()));
    - translateCodas();
    -
    - /*
    - * Any contents left in the map indicate start tags that never had end
    - * tags. While the '{' that is present without the matching '}' should
    - * cause a Java translation fault, that's not particularly helpful to
    - * a user who may only know how to use custom tags as tags. Ultimately
    - * unbalanced custom tags should just be reported as unbalanced tags,
    - * and unbalanced '{'/'}' only reported when the user actually
    - * unbalanced them with scriptlets.
    - */
    - Iterator regionAndTaglibVariables = fTagToVariableMap.values().iterator();
    - while (regionAndTaglibVariables.hasNext()) {
    - ITextRegionCollection extraStartRegion = ((RegionTaglibVariables) regionAndTaglibVariables.next()).region;
    - IJSPProblem missingEndTag = createJSPProblem(IJSPProblem.EndCustomTagMissing, IJSPProblem.F_PROBLEM_ID_LITERAL, "", extraStartRegion.getStartOffset(), extraStartRegion.getEndOffset());
    - fTranslationProblems.add(missingEndTag);
    -
    - appendToBuffer("}", fUserCode, false, fStructuredDocument.getLastStructuredDocumentRegion());
    - }
    - fTagToVariableMap.clear();
    -
    - /*
    - * Now do the same for jsp:useBean tags, whose contents get their own
    - * { & }
    - */
    - while (!fUseBeansStack.isEmpty()) {
    - appendToBuffer("}", fUserCode, false, fStructuredDocument.getLastStructuredDocumentRegion());
    - ITextRegionCollection extraStartRegion = (ITextRegionCollection) fUseBeansStack.pop();
    - IJSPProblem missingEndTag = createJSPProblem(IJSPProblem.UseBeanEndTagMissing, IJSPProblem.F_PROBLEM_ID_LITERAL, "", extraStartRegion.getStartOffset(), extraStartRegion.getEndOffset());
    - fTranslationProblems.add(missingEndTag);
    - }
    -
    - buildResult();
    - }
    -
    - /**
    - * Translates a region container (and XML JSP container, or <% JSP
    - * container). This method should only be called in this class and for
    - * containers in the primary structured document as all buffer appends
    - * will be direct.
    - */
    - protected void setDocumentContent(IDocument document, InputStream contentStream, String charset) {
    - Reader in = null;
    - try {
    - in = new BufferedReader(new InputStreamReader(contentStream, charset), 2048);
    - StringBuffer buffer = new StringBuffer(2048);
    - char[] readBuffer = new char[2048];
    - int n = in.read(readBuffer);
    - while (n > 0) {
    - buffer.append(readBuffer, 0, n);
    - n = in.read(readBuffer);
    - }
    - document.set(buffer.toString());
    - }
    - catch (IOException x) {
    - // ignore
    - }
    - finally {
    - if (in != null) {
    - try {
    - in.close();
    - }
    - catch (IOException x) {
    - // ignore
    - }
    - }
    - }
    - }
    -
    - protected void init() {
    - fClassHeader = "public class _JSPServlet extends "; //$NON-NLS-1$
    - fClassname = "_JSPServlet"; //$NON-NLS-1$
    -
    - fImplicitImports = "import javax.servlet.*;" + ENDL + //$NON-NLS-1$
    - "import javax.servlet.http.*;" + ENDL + //$NON-NLS-1$
    - "import javax.servlet.jsp.*;" + ENDL + ENDL; //$NON-NLS-1$
    -
    - fServiceHeader = "public void _jspService(javax.servlet.http.HttpServletRequest request," + //$NON-NLS-1$
    - " javax.servlet.http.HttpServletResponse response)" + ENDL + //$NON-NLS-1$
    - "\t\tthrows java.io.IOException, javax.servlet.ServletException {" + ENDL + //$NON-NLS-1$
    - "javax.servlet.jsp.PageContext pageContext = null;" + ENDL + //$NON-NLS-1$
    - "javax.servlet.ServletContext application = null;" + ENDL + //$NON-NLS-1$
    - "javax.servlet.ServletConfig config = null;" + ENDL + //$NON-NLS-1$
    - "javax.servlet.jsp.JspWriter out = null;" + ENDL + //$NON-NLS-1$
    - "Object page = null;" + ENDL; //$NON-NLS-1$
    - fSuperclass = "javax.servlet.http.HttpServlet"; //$NON-NLS-1$
    - }
    -
    - /**
    - *
    - * @return the status of the translator's progrss monitor, false if the
    - * monitor is null
    - */
    - private boolean isCanceled() {
    - return (fProgressMonitor == null) ? false : fProgressMonitor.isCanceled();
    - }
    -
    - private void advanceNextNode() {
    - setCurrentNode(getCurrentNode().getNext());
    - if (getCurrentNode() != null)
    - setSourceReferencePoint();
    - }
    -
    - private void setSourceReferencePoint() {
    - if (isJSP(getCurrentNode().getFirstRegion().getType())) {
    - Iterator it = getCurrentNode().getRegions().iterator();
    - ITextRegion r = null;
    - while (it.hasNext()) {
    - r = (ITextRegion) it.next();
    - if (r.getType() == DOMJSPRegionContexts.JSP_CONTENT || r.getType() == DOMRegionContext.XML_CONTENT)
    - break;
    - else if (r.getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME)
    - break;
    - else if (r.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE && getCurrentNode().getFullText(r).trim().equals("import")) //$NON-NLS-1$
    - break;
    - }
    - }
    - }
    -
    - /**
    - * translates a region container (and XML JSP container, or <% JSP
    - * container)
    - *
    - * This method should only be called in this class and for containers in
    - * the primary structured document as all buffer appends will be direct
    - */
    - protected void translateRegionContainer(ITextRegionCollection container, int JSPType) {
    -
    - ITextRegionCollection containerRegion = container;
    -
    - Iterator regions = containerRegion.getRegions().iterator();
    - ITextRegion region = null;
    - while (regions.hasNext()) {
    -
    - region = (ITextRegion) regions.next();
    -
    - String type = region.getType();
    -
    - // content assist was not showing up in JSP inside a javascript
    - // region
    - if (DOMRegionContext.BLOCK_TEXT.equals(type)) {
    - // check if it's nested jsp in a script tag...
    - if (region instanceof ITextRegionContainer) {
    - // pass in block text's container & iterator
    - Iterator regionIterator = ((ITextRegionCollection) region).getRegions().iterator();
    - translateJSPNode(region, regionIterator, type, EMBEDDED_JSP);
    - }
    - else {
    - /**
    - * LIMITATION - Normally the script content within a
    - * script tag is a single document region with a single
    - * BLOCK_TEXT text region within it. Any JSP scripting
    - * will be within its own region container (for the sake
    - * of keeping the scripting open/content/end as a group)
    - * also of BLOCK_TEXT. That ignores custom tags that might
    - * be in there, though, as they require proper scoping and
    - * variable declaration to be performed even though
    - * they're not proper nodes in the DOM. The only way to
    - * really do this is to treat the entire script content as
    - * JSP content on its own, akin to an included segment.
    - * Further complicating this solution is that tagdependent
    - * custom tags have their comment marked as BLOCK_TEXT as
    - * well, so there's no clear way to tell the two cases
    - * apart.
    - */
    -
    - // ////////////////////////////////////////////////////////////////////////////////
    - // THIS EMBEDDED JSP TEXT WILL COME OUT LATER WHEN
    - // PARTITIONING HAS
    - // SUPPORT FOR NESTED XML-JSP
    - // CMVC 241882
    - decodeScriptBlock(containerRegion.getFullText(region), containerRegion.getStartOffset());
    - // ////////////////////////////////////////////////////////////////////////////////
    - }
    - }
    - // if (region instanceof ITextRegionCollection &&
    - // ((ITextRegionCollection) region).getNumberOfRegions() > 0) {
    - // translateRegionContainer((ITextRegionCollection) region,
    - // EMBEDDED_JSP);
    - // }
    - if (type != null && isJSP(type)) // <%, <%=, <%!, <%@
    - {
    - // translateJSPNode(region, regions, type, JSPType);
    - translateJSPNode(containerRegion, regions, type, JSPType);
    - }
    - else if (type != null && (type == DOMRegionContext.XML_TAG_OPEN || type == DOMRegionContext.XML_END_TAG_OPEN)) {
    - translateXMLNode(containerRegion, regions);
    - }
    - }
    - // }
    - }
    -
    - /*
    - * ////////////////////////////////////////////////////////////////////////////////// **
    - * TEMP WORKAROUND FOR CMVC 241882 Takes a String and blocks out
    - * jsp:scriptlet, jsp:expression, and jsp:declaration @param blockText
    - * @return
    - */
    - void decodeScriptBlock(String blockText, int startOfBlock) {
    - XMLJSPRegionHelper helper = new XMLJSPRegionHelper(this, false);
    - helper.addBlockMarker(new BlockMarker("jsp:scriptlet", null, DOMJSPRegionContexts.JSP_CONTENT, false)); //$NON-NLS-1$
    - helper.addBlockMarker(new BlockMarker("jsp:expression", null, DOMJSPRegionContexts.JSP_CONTENT, false)); //$NON-NLS-1$
    - helper.addBlockMarker(new BlockMarker("jsp:declaration", null, DOMJSPRegionContexts.JSP_CONTENT, false)); //$NON-NLS-1$
    - helper.addBlockMarker(new BlockMarker("jsp:directive.include", null, DOMJSPRegionContexts.JSP_CONTENT, false)); //$NON-NLS-1$
    - helper.addBlockMarker(new BlockMarker("jsp:directive.taglib", null, DOMJSPRegionContexts.JSP_CONTENT, false)); //$NON-NLS-1$
    - helper.reset(blockText, startOfBlock);
    - // force parse
    - helper.forceParse();
    - }
    -
    - /*
    - * returns string minus CDATA open and close text
    - */
    - final public String stripCDATA(String text) {
    - String resultText = ""; //$NON-NLS-1$
    - String CDATA_OPEN = "<![CDATA["; //$NON-NLS-1$
    - String CDATA_CLOSE = "]]>"; //$NON-NLS-1$
    - int start = 0;
    - int end = text.length();
    - while (start < text.length()) {
    - if (text.indexOf(CDATA_OPEN, start) > -1) {
    - end = text.indexOf(CDATA_OPEN, start);
    - resultText += text.substring(start, end);
    - start = end + CDATA_OPEN.length();
    - }
    - else if (text.indexOf(CDATA_CLOSE, start) > -1) {
    - end = text.indexOf(CDATA_CLOSE, start);
    - resultText += text.substring(start, end);
    - start = end + CDATA_CLOSE.length();
    - }
    - else {
    - end = text.length();
    - resultText += text.substring(start, end);
    - break;
    - }
    - }
    - return resultText;
    - }
    -
    - // END OF WORKAROUND CODE...
    - // /////////////////////////////////////////////////////////////////////////////////////
    - /**
    - * determines if the type is a pure JSP type (not XML)
    - */
    - protected boolean isJSP(String type) {
    - return ((type == DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN || type == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN || type == DOMJSPRegionContexts.JSP_DECLARATION_OPEN || type == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN || type == DOMJSPRegionContexts.JSP_CONTENT || type == DOMJSPRegionContexts.JSP_EL_OPEN) && type != DOMRegionContext.XML_TAG_OPEN);
    - // checking XML_TAG_OPEN so <jsp:directive.xxx/> gets treated like
    - // other XML jsp tags
    - }
    -
    - /**
    - * translates the various XMLJSP type nodes
    - *
    - * @param regions
    - * the regions of the XMLNode
    - */
    - protected void translateXMLNode(ITextRegionCollection container, Iterator regions) {
    - // contents must be valid XHTML, translate escaped CDATA into what it
    - // really is...
    - ITextRegion r = null;
    - if (regions.hasNext()) {
    - r = (ITextRegion) regions.next();
    - // <jsp:directive.xxx > comes in as this
    - if (r.getType() == DOMRegionContext.XML_TAG_NAME || r.getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME)
    -
    - {
    - String fullTagName = container.getText(r);
    - if (fullTagName.indexOf(':') > -1 && !fullTagName.startsWith(JSP_PREFIX)) {
    - addTaglibVariables(fullTagName, container); // it
    - // may
    - // be a
    - // custom
    - // tag
    - }
    - StringTokenizer st = new StringTokenizer(fullTagName, ":.", false); //$NON-NLS-1$
    - if (st.hasMoreTokens() && st.nextToken().equals("jsp")) //$NON-NLS-1$
    - {
    - if (st.hasMoreTokens()) {
    - String jspTagName = st.nextToken();
    -
    - if (jspTagName.equals("scriptlet")) //$NON-NLS-1$
    - {
    - translateXMLJSPContent(SCRIPTLET);
    - }
    - else if (jspTagName.equals("expression")) //$NON-NLS-1$
    - {
    - translateXMLJSPContent(EXPRESSION);
    - }
    - else if (jspTagName.equals("declaration")) //$NON-NLS-1$
    - {
    - translateXMLJSPContent(DECLARATION);
    - }
    - else if (jspTagName.equals("directive")) //$NON-NLS-1$
    - {
    - if (st.hasMoreTokens()) {
    - String directiveName = st.nextToken();
    - if (directiveName.equals("taglib")) { //$NON-NLS-1$
    - while (r != null && regions.hasNext() && !r.getType().equals(DOMRegionContext.XML_TAG_ATTRIBUTE_NAME)) {
    - r = (ITextRegion) regions.next();
    - if (container.getText(r).equals(JSP11Namespace.ATTR_NAME_PREFIX)) {
    - String prefix = getAttributeValue(r, regions);
    - if (prefix != null) {
    - handleTaglib(prefix);
    - }
    - }
    - }
    - return;
    - }
    - else if (directiveName.equals("include")) { //$NON-NLS-1$
    -
    - String fileLocation = ""; //$NON-NLS-1$
    -
    - // skip to required "file" attribute,
    - // should be safe because
    - // "file" is the only attribute for the
    - // include directive
    - while (r != null && regions.hasNext() && !r.getType().equals(DOMRegionContext.XML_TAG_ATTRIBUTE_NAME)) {
    - r = (ITextRegion) regions.next();
    - }
    - fileLocation = getAttributeValue(r, regions);
    - if (fileLocation != null)
    - handleIncludeFile(fileLocation);
    - }
    - else if (directiveName.equals("page")) { //$NON-NLS-1$
    -
    - // bad if currentNode is referenced after
    - // here w/ the current list
    - // see:
    - // https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=3035
    - // setCurrentNode(getCurrentNode().getNext());
    - if (getCurrentNode() != null) {
    - // 'regions' contain the attrs
    - translatePageDirectiveAttributes(regions, getCurrentNode());
    - }
    - }
    - else if (directiveName.equals("tag")) { //$NON-NLS-1$
    - translatePageDirectiveAttributes(regions, getCurrentNode());
    - }
    - else if (directiveName.equals("variable")) { //$NON-NLS-1$
    - translateVariableDirectiveAttributes(regions);
    - }
    - }
    - }
    - else if (jspTagName.equals("include")) { //$NON-NLS-1$
    - // <jsp:include page="filename") />
    - checkAttributeValueContainer(regions, "page"); //$NON-NLS-1$
    - }
    - else if (jspTagName.equals("forward")) { //$NON-NLS-1$
    - checkAttributeValueContainer(regions, "page"); //$NON-NLS-1$
    - }
    - else if (jspTagName.equals("param")) { //$NON-NLS-1$
    - checkAttributeValueContainer(regions, "value"); //$NON-NLS-1$
    - }
    - else if (jspTagName.equals("setProperty")) { //$NON-NLS-1$
    - checkAttributeValueContainer(regions, "value"); //$NON-NLS-1$
    - }
    - else if (jspTagName.equals("useBean")) //$NON-NLS-1$
    - {
    - checkAttributeValueContainer(regions, "name"); //$NON-NLS-1$
    - // https://bugs.eclipse.org/bugs/show_bug.cgi?id=103004
    - // advanceNextNode(); // get the content
    - if (getCurrentNode() != null) {
    - translateUseBean(container); // 'regions'
    - }
    - }
    -
    - }
    - }
    - else {
    - checkAllAttributeValueContainers(regions);
    - }
    - }
    - }
    - }
    -
    - /**
    - * translates embedded containers for ALL attribute values
    - *
    - * @param regions
    - */
    - private void checkAllAttributeValueContainers(Iterator regions) {
    - // tag name is not jsp
    - // handle embedded jsp attributes...
    - ITextRegion embedded = null;
    - // Iterator attrRegions = null;
    - // ITextRegion attrChunk = null;
    - while (regions.hasNext()) {
    - embedded = (ITextRegion) regions.next();
    - if (embedded instanceof ITextRegionContainer) {
    - // parse out container
    -
    - // https://bugs.eclipse.org/bugs/show_bug.cgi?id=130606
    - // fix exponential iteration problem w/ embedded expressions
    - translateEmbeddedJSPInAttribute((ITextRegionContainer) embedded);
    - // attrRegions = ((ITextRegionContainer)
    - // embedded).getRegions().iterator();
    - // while (attrRegions.hasNext()) {
    - // attrChunk = (ITextRegion) attrRegions.next();
    - // String type = attrChunk.getType();
    - // // embedded JSP in attribute support only want to
    - // // translate one time per
    - // // embedded region so we only translate on the JSP open
    - // // tags (not content)
    - // if (type == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN ||
    - // type ==
    - // DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN || type ==
    - // DOMJSPRegionContexts.JSP_DECLARATION_OPEN || type ==
    - // DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN || type ==
    - // DOMJSPRegionContexts.JSP_EL_OPEN) {
    - // // now call jsptranslate
    - // translateEmbeddedJSPInAttribute((ITextRegionContainer)
    - // embedded);
    - // break;
    - // }
    - // }
    - }
    - }
    - }
    -
    - /**
    - * translates embedded container for specified attribute
    - *
    - * @param regions
    - * @param attrName
    - */
    - private void checkAttributeValueContainer(Iterator regions, String attrName) {
    - ITextRegion r = null;
    - while (regions.hasNext()) {
    - r = (ITextRegion) regions.next();
    - if (r.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME && getCurrentNode().getText(r).equals(attrName)) { //$NON-NLS-1$
    - // skip to attribute value
    - while (regions.hasNext() && (r = (ITextRegion) regions.next()) != null) {
    - if (r.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE)
    - break;
    - }
    - // forces embedded region to be translated
    - if (r instanceof ContextRegionContainer) {
    - translateEmbeddedJSPInAttribute((ContextRegionContainer) r);
    - }
    - break;
    - }
    - }
    - }
    -
    - /*
    - * example:
    - *
    - * <jsp:scriptlet>scriptlet jsp-java content <![CDATA[ more jsp java ]]>
    - * jsp-java content... <![CDATA[ more jsp java ]]> </jsp:scriptlet>
    - *
    - * https://bugs.eclipse.org/bugs/show_bug.cgi?id=93366
    - * https://bugs.eclipse.org/bugs/show_bug.cgi?id=88590 translate
    - * everything inbetween <scriptlet> tags, which may be more than one
    - * region (esp. CDATA)
    - *
    - */
    - private void translateXMLJSPContent(int type) {
    -
    - IStructuredDocumentRegion sdr = getCurrentNode().getNext();
    - int start = sdr.getStartOffset();
    - int end = sdr.getEndOffset();
    - String sdrText = ""; //$NON-NLS-1$
    -
    - // read structured document regions until
    - // </jsp:scriptlet> or EOF
    - while (sdr != null && sdr.getType() != DOMRegionContext.XML_TAG_NAME) {
    -
    - // setup for next region
    - start = sdr.getStartOffset();
    - sdrText = sdr.getText();
    -
    - if (sdr.getType() == DOMRegionContext.XML_CDATA_TEXT) {
    -
    - // just to be safe, make sure CDATA start & end are there
    - if (sdrText.startsWith("<![CDATA[") && sdrText.endsWith("]]>")) { //$NON-NLS-1$ //$NON-NLS-2$
    -
    - start = sdr.getStartOffset() + 9; // <![CDATA[
    - end = sdr.getEndOffset() - 3; // ]]>
    - sdrText = sdrText.substring(9, sdrText.length() - 3);
    - writeToBuffer(type, sdrText, start, end);
    - }
    - }
    - else {
    -
    - // handle entity references
    - sdrText = EscapedTextUtil.getUnescapedText(sdrText);
    - end = sdr.getEndOffset();
    - writeToBuffer(type, sdrText, start, end);
    - }
    - sdr = sdr.getNext();
    - }
    - setCurrentNode(sdr);
    - setSourceReferencePoint();
    - }
    -
    - private void writeToBuffer(int type, String content, int jspStart, int jspEnd) {
    - switch (type) {
    - case SCRIPTLET :
    - translateScriptletString(content, getCurrentNode(), jspStart, jspEnd - jspStart, false);
    - break;
    - case EXPRESSION :
    - translateExpressionString(content, getCurrentNode(), jspStart, jspEnd - jspStart, false);
    - break;
    - case DECLARATION :
    - translateDeclarationString(content, getCurrentNode(), jspStart, jspEnd - jspStart, false);
    - break;
    - }
    - }
    -
    - /**
    - * goes through comment regions, checks if any are an embedded JSP
    - * container if it finds one, it's sends the container into the
    - * translation routine
    - */
    - protected void translateXMLCommentNode(IStructuredDocumentRegion node) {
    - Iterator it = node.getRegions().iterator();
    - ITextRegion commentRegion = null;
    - while (it != null && it.hasNext()) {
    - commentRegion = (ITextRegion) it.next();
    - if (commentRegion instanceof ITextRegionContainer) {
    - translateRegionContainer((ITextRegionContainer) commentRegion, EMBEDDED_JSP); // it's
    - // embedded
    - // jsp...iterate
    - // regions...
    - }
    - else if (DOMRegionContext.XML_COMMENT_TEXT.equals(commentRegion.getType())) {
    - // https://bugs.eclipse.org/bugs/show_bug.cgi?id=222215
    - // support custom tags hidden in a comment region
    - decodeScriptBlock(node.getFullText(commentRegion), node.getStartOffset(commentRegion));
    - }
    - }
    - }
    -
    - /**
    - * determines which type of JSP node to translate
    - */
    - protected void translateJSPNode(ITextRegion region, Iterator regions, String type, int JSPType) {
    - if (type == DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN && regions != null) {
    - translateDirective(regions);
    - }
    - else {
    - ITextRegionCollection contentRegion = null;
    - if (JSPType == STANDARD_JSP && (setCurrentNode(getCurrentNode().getNext())) != null) {
    - contentRegion = getCurrentNode();
    - }
    - else if (JSPType == EMBEDDED_JSP && region instanceof ITextRegionCollection) {
    - translateEmbeddedJSPInBlock((ITextRegionCollection) region, regions);
    - // ensure the rest of this method won't be called
    - }
    - if (contentRegion != null) {
    - if (type == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN) {
    - translateExpression(contentRegion);
    - }
    - else if (type == DOMJSPRegionContexts.JSP_DECLARATION_OPEN) {
    - translateDeclaration(contentRegion);
    - }
    - else if (type == DOMJSPRegionContexts.JSP_CONTENT || type == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN) {
    - translateScriptlet(contentRegion);
    - }
    - }
    - else {
    - // this is the case of an attribute w/ no region <p
    - // align="<%%>">
    - setCursorOwner(getJSPTypeForRegion(region));
    - }
    - }
    - }
    -
    -
    - private void translateEL(String elText, String delim, IStructuredDocumentRegion currentNode, int contentStart, int contentLength) {
    - IJSPELTranslator translator = getELTranslator();
    - if (null != translator) {
    - translator.translateEL(elText, delim, currentNode, contentStart, contentLength, fUserELExpressions, fUserELRanges, fStructuredDocument);
    - }
    - }
    -
    - /**
    - * Discover and instantiate an EL translator.
    - */
    - public IJSPELTranslator getELTranslator() {
    - if (fELTranslator == null) {
    -
    - /*
    - * name of plugin that exposes this extension point
    - */
    - IExtensionPoint extensionPoint = Platform.getExtensionRegistry().getExtensionPoint(JSP_CORE_PLUGIN_ID, EL_TRANSLATOR_EXTENSION_NAME); // -
    - // extension
    - // id
    -
    - // Iterate over all declared extensions of this extension point.
    - // A single plugin may extend the extension point more than once,
    - // although it's not recommended.
    - IConfigurationElement bestTranslator = null;
    - IExtension[] extensions = extensionPoint.getExtensions();
    - for (int curExtension = 0; curExtension < extensions.length; curExtension++) {
    - IExtension extension = extensions[curExtension];
    -
    - IConfigurationElement[] translators = extension.getConfigurationElements();
    - for (int curTranslator = 0; curTranslator < translators.length; curTranslator++) {
    -
    - IConfigurationElement elTranslator = translators[curTranslator];
    -
    - if (!EL_TRANSLATOR_EXTENSION_NAME.equals(elTranslator.getName())) { // -
    - // name
    - // of
    - // configElement
    - continue;
    - }
    -
    - String idString = elTranslator.getAttribute("id"); //$NON-NLS-1$
    - if (null != idString && idString.equals(fELTranslatorID) || (null == bestTranslator && DEFAULT_JSP_EL_TRANSLATOR_ID.equals(idString))) {
    - bestTranslator = elTranslator;
    - }
    - }
    - }
    -
    - if (null != bestTranslator) {
    - try {
    - Object execExt = bestTranslator.createExecutableExtension("class"); //$NON-NLS-1$
    - if (execExt instanceof IJSPELTranslator) {
    - return fELTranslator = (IJSPELTranslator) execExt;
    - }
    - }
    - catch (CoreException e) {
    - Logger.logException(e);
    - }
    - }
    - }
    - return fELTranslator;
    - }
    -
    - /**
    - * Pass the ITextRegionCollection which is the embedded region
    - *
    - * @param regions
    - * iterator for collection
    - */
    - private void translateEmbeddedJSPInBlock(ITextRegionCollection collection, Iterator regions) {
    - ITextRegion region = null;
    - while (regions.hasNext()) {
    - region = (ITextRegion) regions.next();
    - if (isJSP(region.getType()))
    - break;
    - region = null;
    - }
    - if (region != null) {
    - translateEmbeddedJSPInAttribute(collection);
    - // https://bugs.eclipse.org/bugs/show_bug.cgi?id=126377
    - // all of collection was translated so just finish off iterator
    - while (regions.hasNext())
    - regions.next();
    - }
    - }
    -
    - /*
    - * Translates all embedded jsp regions in embeddedContainer for example:
    - * <a href="index.jsp?p=<%=abc%>b=<%=xyz%>">abc</a>
    - */
    - private void translateEmbeddedJSPInAttribute(ITextRegionCollection embeddedContainer) {
    - // THIS METHOD IS A FIX FOR
    - // jsp embedded in attribute regions
    - // loop all regions
    - ITextRegionList embeddedRegions = embeddedContainer.getRegions();
    - ITextRegion delim = null;
    - ITextRegion content = null;
    - String type = null;
    - String quotetype = null;
    - for (int i = 0; i < embeddedRegions.size(); i++) {
    -
    - // possible delimiter, check later
    - delim = embeddedRegions.get(i);
    - type = delim.getType();
    - if(type == DOMJSPRegionContexts.XML_TAG_ATTRIBUTE_VALUE_DQUOTE || type == DOMJSPRegionContexts.XML_TAG_ATTRIBUTE_VALUE_SQUOTE
    - || type == DOMJSPRegionContexts.JSP_TAG_ATTRIBUTE_VALUE_DQUOTE || type == DOMJSPRegionContexts.JSP_TAG_ATTRIBUTE_VALUE_SQUOTE)
    - quotetype = type;
    -
    - // check next region to see if it's content
    - if (i + 1 < embeddedRegions.size()) {
    - String regionType = embeddedRegions.get(i + 1).getType();
    - if (regionType == DOMJSPRegionContexts.JSP_CONTENT || regionType == DOMJSPRegionContexts.JSP_EL_CONTENT)
    - content = embeddedRegions.get(i + 1);
    - }
    -
    - if (content != null) {
    - int contentStart = embeddedContainer.getStartOffset(content);
    - int rStart = fCurrentNode.getStartOffset() + contentStart;
    - int rEnd = fCurrentNode.getStartOffset() + embeddedContainer.getEndOffset(content);
    -
    - boolean inThisRegion = rStart <= fSourcePosition && rEnd >= fSourcePosition;
    - // int jspPositionStart = fCurrentNode.getStartOffset() +
    - // contentStart;
    -
    - if (type == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN) {
    - fLastJSPType = EXPRESSION;
    - // translateExpressionString(embeddedContainer.getText(content),
    - // fCurrentNode, contentStart, content.getLength());
    - translateExpressionString(embeddedContainer.getText(content), embeddedContainer, contentStart, content.getLength(), quotetype);
    - }
    - else if (type == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN) {
    - fLastJSPType = SCRIPTLET;
    - // translateScriptletString(embeddedContainer.getText(content),
    - // fCurrentNode, contentStart, content.getLength());
    - translateScriptletString(embeddedContainer.getText(content), embeddedContainer, contentStart, content.getLength(), false);
    - }
    - else if (type == DOMJSPRegionContexts.JSP_DECLARATION_OPEN) {
    - fLastJSPType = DECLARATION;
    - // translateDeclarationString(embeddedContainer.getText(content),
    - // fCurrentNode, contentStart, content.getLength());
    - translateDeclarationString(embeddedContainer.getText(content), embeddedContainer, contentStart, content.getLength(), false);
    - }
    - else if (type == DOMJSPRegionContexts.JSP_EL_OPEN) {
    - fLastJSPType = EXPRESSION;
    - translateEL(embeddedContainer.getText(content), embeddedContainer.getText(delim), fCurrentNode, contentStart, content.getLength());
    - }
    -
    - // calculate relative offset in buffer
    - if (inThisRegion) {
    - setCursorOwner(fLastJSPType);
    - int currentBufferLength = getCursorOwner().length();
    - setRelativeOffset((fSourcePosition - contentStart) + currentBufferLength);
    - if (fLastJSPType == EXPRESSION) {
    - // if an expression, add then length of the enclosing
    - // paren..
    - setCursorInExpression(true);
    - setRelativeOffset(getRelativeOffset() + EXPRESSION_PREFIX.length());
    - }
    - }
    - }
    - else {
    - type = null;
    - }
    - }
    - }
    -
    - private int fLastJSPType = SCRIPTLET;
    -
    - /**
    - * JSPType is only used internally in this class to describe tye type of
    - * region to be translated
    - *
    - * @param region
    - * @return int
    - */
    - private int getJSPTypeForRegion(ITextRegion region) {
    - String regionType = region.getType();
    - int type = SCRIPTLET;
    - if (regionType == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN)
    - type = SCRIPTLET;
    - else if (regionType == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN)
    - type = EXPRESSION;
    - else if (regionType == DOMJSPRegionContexts.JSP_DECLARATION_OPEN)
    - type = DECLARATION;
    - else if (regionType == DOMJSPRegionContexts.JSP_CONTENT)
    - type = fLastJSPType;
    - // remember the last type, in case the next type that comes in is
    - // JSP_CONTENT
    - fLastJSPType = type;
    - return type;
    - }
    -
    - /**
    - * /* <%@ %> /* need to pass in the directive tag region
    - */
    - protected void translateDirective(Iterator regions) {
    - ITextRegion r = null;
    - String regionText, attrValue = ""; //$NON-NLS-1$
    - while (regions.hasNext() && (r = (ITextRegion) regions.next()) != null && r.getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME) { // could
    - // be
    - // XML_CONTENT
    - // =
    - // "",
    - // skips
    - // attrs?
    - regionText = getCurrentNode().getText(r);
    - if (regionText.equals("taglib")) { //$NON-NLS-1$
    - // add custom tag block markers here
    - handleTaglib();
    - return;
    - }
    - else if (regionText.equals("include")) { //$NON-NLS-1$
    - String fileLocation = ""; //$NON-NLS-1$
    - // CMVC 258311
    - // PMR 18368, B663
    - // skip to required "file" attribute, should be safe because
    - // "file" is the only attribute for the include directive
    - while (r != null && regions.hasNext() && !r.getType().equals(DOMRegionContext.XML_TAG_ATTRIBUTE_NAME)) {
    - r = (ITextRegion) regions.next();
    - }
    - fileLocation = getAttributeValue(r, regions);
    - if (attrValue != null)
    - handleIncludeFile(fileLocation);
    - }
    - else if (regionText.equals("page")) { //$NON-NLS-1$
    - translatePageDirectiveAttributes(regions, getCurrentNode());
    - }
    - else if (regionText.equals("tag")) { //$NON-NLS-1$
    - // some attributes overlap, so both are handled in this method
    - translatePageDirectiveAttributes(regions, getCurrentNode());
    - }
    - else if (regionText.equals("variable")) { //$NON-NLS-1$
    - translateVariableDirectiveAttributes(regions);
    - }
    - else if (regionText.equals("attribute")) { //$NON-NLS-1$
    - translateAttributeDirectiveAttributes(regions);
    - }
    - }
    - }
    -
    - private void translateAttributeDirectiveAttributes(Iterator regions) {
    - ITextRegion r = null;
    - String attrName, attrValue;
    -
    - String varType = "java.lang.String"; //$NON-NLS-1$ // the default class...
    - String varName = null;
    - String description = "";//$NON-NLS-1$
    - boolean isFragment = false;
    -
    - // iterate all attributes
    - while (regions.hasNext() && (r = (ITextRegion) regions.next()) != null && r.getType() != DOMJSPRegionContexts.JSP_CLOSE) {
    - attrName = attrValue = null;
    - if (r.getType().equals(DOMRegionContext.XML_TAG_ATTRIBUTE_NAME)) {
    - attrName = getCurrentNode().getText(r).trim();
    - if (attrName.length() > 0) {
    - if (regions.hasNext() && (r = (ITextRegion) regions.next()) != null && r.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_EQUALS) {
    - if (regions.hasNext() && (r = (ITextRegion) regions.next()) != null && r.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
    - attrValue = StringUtils.strip(getCurrentNode().getText(r));
    - }
    - // has equals, but no value?
    - }
    - if (attrName.equals(JSP11Namespace.ATTR_NAME_TYPE)) {
    - varType = attrValue;
    - }
    - else if (attrName.equals(JSP20Namespace.ATTR_NAME_FRAGMENT)) {
    - isFragment = Boolean.valueOf(attrValue).booleanValue();
    - }
    - else if (attrName.equals(JSP11Namespace.ATTR_NAME_NAME)) {
    - varName = attrValue;
    - }
    - else if (attrName.equals(JSP20Namespace.ATTR_NAME_DESCRIPTION)) {
    - description = attrValue;
    - }
    - }
    - }
    - }
    - if (varName != null) {
    - if (isFragment) {
    - // 2.0:JSP.8.5.2
    - varType = "javax.servlet.jsp.tagext.JspFragment";
    - }
    - String declaration = new TaglibVariable(varType, varName, "", description).getDeclarationString(true, TaglibVariable.M_PRIVATE);
    - appendToBuffer(declaration, fUserDeclarations, false, fCurrentNode);
    - }
    - }
    -
    - private void translateVariableDirectiveAttributes(Iterator regions) {
    - /*
    - * Shouldn't create a scripting variable in *this* tag file's
    - * translation, only in JSP files that use it -
    - * https://bugs.eclipse.org/bugs/show_bug.cgi?id=188780
    - */
    - }
    -
    - /*
    - * This method should ideally only be called once per run through
    - * JSPTranslator This is intended for use by inner helper classes that
    - * need to add block markers to their own parsers. This method only adds
    - * markers that came from <@taglib> directives, (not <@include>), since
    - * include file taglibs are handled on the fly when they are encountered. *
    - * @param regions
    - *
    - * @deprecated - does not properly handle prefixes
    - */
    - protected void handleTaglib() {
    - // get/create TLDCMDocument
    - TLDCMDocumentManager mgr = TaglibController.getTLDCMDocumentManager(fStructuredDocument);
    - if (mgr != null) {
    - List trackers = mgr.getCMDocumentTrackers(getCurrentNode().getEnd());
    - Iterator it = trackers.iterator();
    - CMDocumentTracker tracker = null;
    - Iterator taglibRegions = null;
    - IStructuredDocumentRegion sdRegion = null;
    - ITextRegion r = null;
    - while (it.hasNext()) {
    - tracker = (CMDocumentTracker) it.next();
    - sdRegion = tracker.getStructuredDocumentRegion();
    - // since may be call from another thread (like a background
    - // job)
    - // this check is to be safer
    - if (sdRegion != null && !sdRegion.isDeleted()) {
    - taglibRegions = sdRegion.getRegions().iterator();
    - while (!sdRegion.isDeleted() && taglibRegions.hasNext()) {
    - r = (ITextRegion) taglibRegions.next();
    - if (r.getType().equals(DOMJSPRegionContexts.JSP_DIRECTIVE_NAME)) {
    - String text = sdRegion.getText(r);
    - if (JSP12TLDNames.TAGLIB.equals(text) || JSP12Namespace.ElementName.DIRECTIVE_TAGLIB.equals(text)) {
    - addBlockMarkers(tracker.getDocument());
    - }
    - }
    - }
    - }
    - }
    - }
    - }
    -
    - /*
    - * This method should ideally only be called once per run through
    - * JSPTranslator This is intended for use by inner helper classes that
    - * need to add block markers to their own parsers. This method only adds
    - * markers that came from <@taglib> directives, (not <@include>), since
    - * include file taglibs are handled on the fly when they are encountered. *
    - * @param regions
    - */
    - private void handleTaglib(String prefix) {
    - // get/create TLDCMDocument
    - TLDCMDocumentManager mgr = TaglibController.getTLDCMDocumentManager(fStructuredDocument);
    - if (mgr != null) {
    - // get trackers for the CMDocuments enabled at this offset
    - List trackers = mgr.getCMDocumentTrackers(getCurrentNode().getEnd());
    - Iterator it = trackers.iterator();
    - CMDocumentTracker tracker = null;
    - while (it.hasNext()) {
    - tracker = (CMDocumentTracker) it.next();
    - addBlockMarkers(prefix + ":", tracker.getDocument());
    - }
    - }
    - }
    -
    - /*
    - * adds block markers to JSPTranslator's block marker list for all
    - * elements in doc @param doc
    - */
    - protected void addBlockMarkers(CMDocument doc) {
    - if (doc.getElements().getLength() > 0) {
    - Iterator elements = doc.getElements().iterator();
    - CMNode node = null;
    - while (elements.hasNext()) {
    - node = (CMNode) elements.next();
    - getBlockMarkers().add(new BlockMarker(node.getNodeName(), null, DOMJSPRegionContexts.JSP_CONTENT, true));
    - }
    - }
    - }
    -
    - /*
    - * adds block markers to JSPTranslator's block marker list for all
    - * elements in doc @param doc
    - */
    - protected void addBlockMarkers(String prefix, CMDocument doc) {
    - if (doc.getElements().getLength() > 0) {
    - Iterator elements = doc.getElements().iterator();
    - CMNode node = null;
    - while (elements.hasNext()) {
    - node = (CMNode) elements.next();
    - if (node instanceof TLDElementDeclaration && ((TLDElementDeclaration) node).getBodycontent().equals(JSP12TLDNames.CONTENT_TAGDEPENDENT))
    - getBlockMarkers().add(new BlockMarker(prefix + node.getNodeName(), null, DOMRegionContext.BLOCK_TEXT, true));
    - else
    - getBlockMarkers().add(new BlockMarker(prefix + node.getNodeName(), null, DOMJSPRegionContexts.JSP_CONTENT, true));
    - }
    - }
    - }
    -
    - /**
    - * If r is an attribute name region, this method will safely return the
    - * value for that attribute.
    - *
    - * @param r
    - * @param remainingRegions
    - * @return the value for the attribute name (r), or null if isn't one
    - */
    - protected String getAttributeValue(ITextRegion r, Iterator remainingRegions) {
    - if (r.getType().equals(DOMRegionContext.XML_TAG_ATTRIBUTE_NAME)) {
    - if (remainingRegions.hasNext() && (r = (ITextRegion) remainingRegions.next()) != null && r.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_EQUALS) {
    - if (remainingRegions.hasNext() && (r = (ITextRegion) remainingRegions.next()) != null && r.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
    - return StringUtils.stripQuotes(getCurrentNode().getText(r));
    - }
    - }
    - }
    - return null;
    - }
    -
    - /**
    - * takes an iterator of the attributes of a page directive and the
    - * directive itself. The iterator is used in case it can be optimized, but
    - * the documentRegion is still required to ensure that the values are
    - * extracted from the correct text.
    - */
    - protected void translatePageDirectiveAttributes(Iterator regions, IStructuredDocumentRegion documentRegion) {
    - ITextRegion r = null;
    - String attrName, attrValue;
    - // iterate all attributes
    - while (regions.hasNext() && (r = (ITextRegion) regions.next()) != null && r.getType() != DOMJSPRegionContexts.JSP_CLOSE) {
    - attrName = attrValue = null;
    - if (r.getType().equals(DOMRegionContext.XML_TAG_ATTRIBUTE_NAME)) {
    -
    - attrName = documentRegion.getText(r).trim();
    - if (attrName.length() > 0) {
    - if (regions.hasNext() && (r = (ITextRegion) regions.next()) != null && r.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_EQUALS) {
    - if (regions.hasNext() && (r = (ITextRegion) regions.next()) != null && r.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
    -
    - attrValue = StringUtils.strip(documentRegion.getText(r));
    - }
    - // has equals, but no value?
    - }
    - setDirectiveAttribute(attrName, attrValue);
    - }
    - }
    - }
    - }
    -
    - /**
    - * sets the appropriate page/tag directive attribute
    - */
    - protected void setDirectiveAttribute(String attrName, String attrValue) {
    - if (attrValue == null)
    - return; // uses default (if there was one)
    - if (attrName.equals("extends")) //$NON-NLS-1$
    - {
    - fSuperclass = attrValue;
    - }
    - else if (attrName.equals("import")) //$NON-NLS-1$
    - {
    - addImports(attrValue);
    - }
    - else if (attrName.equals("session")) //$NON-NLS-1$
    - {
    - fIsInASession = "true".equalsIgnoreCase(attrValue);
    - }
    - else if (attrName.equals("buffer")) //$NON-NLS-1$
    - {
    - // ignore for now
    - }
    - else if (attrName.equals("autoFlush")) //$NON-NLS-1$
    - {
    - // ignore for now
    - }
    - else if (attrName.equals("isThreadSafe")) //$NON-NLS-1$
    - {
    - // fThreadSafe = "true".equalsIgnoreCase(attrValue); //$NON-NLS-1$
    - }
    - else if (attrName.equals("isErrorPage")) //$NON-NLS-1$
    - {
    - fIsErrorPage = "true".equalsIgnoreCase(attrValue);
    - }
    - }
    -
    - protected void handleIncludeFile(String filename) {
    - if (filename != null && fProcessIncludes) {
    - IPath modelPath = getModelPath();
    - IPath basePath = modelPath;
    - if (basePath != null) {
    - /*
    - * https://bugs.eclipse.org/bugs/show_bug.cgi?id=227576
    - *
    - * The resolution of the included fragment should use the file
    - * containing the directive as the base reference, not always
    - * the main JSP being invoked. Verified behavior with Apache
    - * Tomcat 5.5.20.
    - */
    - if (!getIncludes().isEmpty()) {
    - basePath = new Path((String) getIncludes().peek());
    - }
    - String filePathString = FacetModuleCoreSupport.resolve(basePath, filename).toString();
    - fIncludedPaths.add(filePathString);
    -
    - if (!getIncludes().contains(filePathString) && !filePathString.equals(modelPath.toString())) {
    - getIncludes().push(filePathString);
    - JSPIncludeRegionHelper helper = new JSPIncludeRegionHelper(this, true);
    - // Should we consider preludes on this segment?
    - helper.parse(filePathString);
    - getIncludes().pop();
    - }
    - }
    - }
    - }
    -
    - private Stack getIncludes() {
    - if (fIncludes == null)
    - fIncludes = new Stack();
    - return fIncludes;
    - }
    -
    - public Collection getIncludedPaths() {
    - return fIncludedPaths;
    - }
    -
    - protected void translateExpressionString(String newText, ITextRegionCollection embeddedContainer, int jspPositionStart, int jspPositionLength, boolean isIndirect) {
    - appendToBuffer(EXPRESSION_PREFIX, fUserCode, false, embeddedContainer);
    - appendToBuffer(newText, fUserCode, true, embeddedContainer, jspPositionStart, jspPositionLength, isIndirect);
    - appendToBuffer(EXPRESSION_SUFFIX, fUserCode, false, embeddedContainer);
    - }
    -
    - protected void translateExpressionString(String newText, ITextRegionCollection embeddedContainer, int jspPositionStart, int jspPositionLength, String quotetype) {
    - if(quotetype == null || quotetype == DOMJSPRegionContexts.XML_TAG_ATTRIBUTE_VALUE_DQUOTE ||quotetype == DOMJSPRegionContexts.XML_TAG_ATTRIBUTE_VALUE_SQUOTE ) {
    - translateExpressionString(newText, embeddedContainer, jspPositionStart, jspPositionLength, false);
    - return;
    - }
    -
    - //-- This is a quoted attribute. We need to unquote as per the JSP spec: JSP 2.0 page 1-36
    - appendToBuffer(EXPRESSION_PREFIX, fUserCode, false, embeddedContainer);
    -
    - int length = newText.length();
    - int runStart = 0;
    - int i = 0;
    - for ( ; i < length; i++) {
    - //-- collect a new run
    - char c = newText.charAt(i);
    - if (c == '\\') {
    - //-- Escaped value. Add the run, then unescape
    - int runLength = i-runStart;
    - if (runLength > 0) {
    - appendToBuffer(newText.substring(runStart, i), fUserCode, true, embeddedContainer, jspPositionStart, runLength, true, true);
    - jspPositionStart += runLength + 1;
    - jspPositionLength -= runLength + 1;
    - }
    - runStart = ++i;
    - if (i >= length) { // Escape but no data follows?!
    - //- error.
    - break;
    - }
    - c = newText.charAt(i); // The escaped character, copied verbatim
    - }
    - }
    - //-- Copy last-run
    - int runLength = i - runStart;
    - if (runLength > 0)
    - appendToBuffer(newText.substring(runStart, i), fUserCode, true, embeddedContainer, jspPositionStart, runLength, true, false);
    - appendToBuffer(EXPRESSION_SUFFIX, fUserCode, false, embeddedContainer);
    - }
    -
    - protected void translateDeclarationString(String newText, ITextRegionCollection embeddedContainer, int jspPositionStart, int jspPositionLength, boolean isIndirect) {
    - appendToBuffer(newText, fUserDeclarations, true, embeddedContainer, jspPositionStart, jspPositionLength, isIndirect);
    - appendToBuffer(ENDL, fUserDeclarations, false, embeddedContainer);
    - }
    -
    - /**
    - * used by XMLJSPRegionHelper for included JSP files
    - *
    - * @param newText
    - * @param embeddedContainer
    - * @param jspPositionStart
    - * @param jspPositionLength
    - */
    - protected void translateScriptletString(String newText, ITextRegionCollection embeddedContainer, int jspPositionStart, int jspPositionLength, boolean isIndirect) {
    - appendToBuffer(newText, fUserCode, true, embeddedContainer, jspPositionStart, jspPositionLength, isIndirect);
    - }
    -
    - // the following 3 methods determine the cursor position
    - // <%= %>
    - protected void translateExpression(ITextRegionCollection region) {
    - String newText = getUnescapedRegionText(region, EXPRESSION);
    - appendToBuffer(EXPRESSION_PREFIX, fUserCode, false, region);
    - appendToBuffer(newText, fUserCode, true, region);
    - appendToBuffer(EXPRESSION_SUFFIX, fUserCode, false, region);
    - }
    -
    - //
    - // <%! %>
    - protected void translateDeclaration(ITextRegionCollection region) {
    - String newText = getUnescapedRegionText(region, DECLARATION);
    - appendToBuffer(newText, fUserDeclarations, true, region);
    - appendToBuffer(ENDL, fUserDeclarations, false, region);
    - }
    -
    - //
    - // <% %>
    - protected void translateScriptlet(ITextRegionCollection region) {
    - String newText = getUnescapedRegionText(region, SCRIPTLET);
    - appendToBuffer(newText, fUserCode, true, region);
    - }
    -
    - /**
    - * Append using a region, probably indirect mapping (eg. <%@page
    - * include=""%>)
    - *
    - * @param newText
    - * @param buffer
    - * @param addToMap
    - * @param jspReferenceRegion
    - */
    - private void appendToBuffer(String newText, StringBuffer buffer, boolean addToMap, ITextRegionCollection jspReferenceRegion) {
    - int start = 0, length = 0;
    - if (jspReferenceRegion != null) {
    - start = jspReferenceRegion.getStartOffset();
    - length = jspReferenceRegion.getLength();
    - }
    - appendToBuffer(newText, buffer, addToMap, jspReferenceRegion, start, length, false);
    - }
    -
    - private void appendToBuffer(String newText, StringBuffer buffer, boolean addToMap, ITextRegionCollection jspReferenceRegion, int jspPositionStart, int jspPositionLength, boolean isIndirect) {
    - appendToBuffer(newText, buffer, addToMap, jspReferenceRegion, jspPositionStart, jspPositionLength, isIndirect, false);
    - }
    -
    -
    - /**
    - * Adds newText to the buffer passed in, and adds to translation mapping
    - * as specified by the addToMap flag. some special cases to consider (that
    - * may be affected by changes to this method): included files scriplets in
    - * an attribute value refactoring
    - *
    - * @param newText
    - * @param buffer
    - * @param addToMap
    - */
    - private void appendToBuffer(String newText, StringBuffer buffer, boolean addToMap, ITextRegionCollection jspReferenceRegion, int jspPositionStart, int jspPositionLength, boolean isIndirect, boolean nonl) {
    -
    - int origNewTextLength = newText.length();
    -
    - // nothing to append
    - if (jspReferenceRegion == null)
    - return;
    -
    - // add a newline so translation looks cleaner
    - if (! nonl && !newText.endsWith(ENDL))
    - newText += ENDL;
    -
    - if (buffer == fUserCode) {
    - buffer.append(newText);
    - if (addToMap) {
    - if (isUsebeanTag(jspReferenceRegion)) {
    - try {
    - // requires special mapping
    - appendUseBeanToBuffer(newText, jspReferenceRegion, isIndirect);
    - }
    - catch (Exception e) {
    - // still working out kinks
    - Logger.logException(e);
    - }
    - }
    - else {
    - // all other cases
    - Position javaRange = new Position(fOffsetInUserCode, origNewTextLength);
    - Position jspRange = new Position(jspPositionStart, jspPositionLength);
    -
    - fCodeRanges.put(javaRange, jspRange);
    - if (isIndirect)
    - fIndirectRanges.put(javaRange, jspRange);
    - }
    - }
    - fOffsetInUserCode += newText.length();
    - }
    - else if (buffer == fUserDeclarations) {
    - buffer.append(newText);
    - if (addToMap) {
    - Position javaRange = new Position(fOffsetInUserDeclarations, newText.length());
    - Position jspRange = new Position(jspPositionStart, jspPositionLength);
    -
    - fDeclarationRanges.put(javaRange, jspRange);
    - if (isIndirect)
    - fIndirectRanges.put(javaRange, jspRange);
    - }
    - fOffsetInUserDeclarations += newText.length();
    - }
    - }
    -
    - /**
    - *
    - * @param jspReferenceRegion
    - * @return
    - */
    - private boolean isUsebeanTag(ITextRegionCollection jspReferenceRegion) {
    - ITextRegionList regions = jspReferenceRegion.getRegions();
    - ITextRegion r = null;
    - boolean isUseBean = false;
    - for (int i = 0; i < regions.size(); i++) {
    - r = regions.get(i);
    - // https://bugs.eclipse.org/bugs/show_bug.cgi?id=128490
    - // length of 11 is the length of jsp:useBean
    - // and saves the expensive getText.equals call
    - if (r.getType() == DOMRegionContext.XML_TAG_NAME) {
    - if (r.getTextLength() == 11 && jspReferenceRegion.getText(r).equals("jsp:useBean")) { //$NON-NLS-1$
    - isUseBean = true;
    - }
    - // break no matter what if you hit tagname
    - break;
    - }
    - }
    - return isUseBean;
    - }
    -
    - /**
    - * @param importName
    - * should be just the package plus the type eg. java.util.List
    - * or java.util.*
    - * @param jspReferenceRegion
    - * should be the <%@ page import = "java.util.List"%> region
    - * @param addToMap
    - */
    - private void appendImportToBuffer(String importName, ITextRegionCollection jspReferenceRegion, boolean addToMap) {
    - String javaImportString = "import " + importName + ";" + ENDL; //$NON-NLS-1$ //$NON-NLS-2$
    - fUserImports.append(javaImportString);
    - if (addToMap) {
    - addImportToMap(importName, jspReferenceRegion);
    - }
    - fOffsetInUserImports += javaImportString.length();
    - }
    -
    - /**
    - * new text can be something like: "import java.lang.Object;\n"
    - *
    - * but the reference region could have been something like: <%@page
    - * import="java.lang.Object, java.io.*, java.util.List"%>
    - *
    - * so the exact mapping has to be calculated carefully.
    - *
    - * isIndirect means that the import came from an included file (if true)
    - *
    - * @param importName
    - * @param jspReferenceRegion
    - */
    - private void addImportToMap(String importName, ITextRegionCollection jspReferenceRegion) {
    -
    - // massage text
    - // String jspText = importName.substring(importName.indexOf("import ")
    - // + 7, importName.indexOf(';'));
    - // String jspText = importName.trim();
    -
    - // these positions will be updated below
    - Position javaRange = new Position(fOffsetInUserImports + 7, 1);
    - Position jspRange = new Position(jspReferenceRegion.getStart(), jspReferenceRegion.getLength());
    -
    - // calculate JSP range by finding "import" attribute
    - ITextRegionList regions = jspReferenceRegion.getRegions();
    - int size = regions.size();
    -
    - int start = -1;
    - int length = -1;
    -
    - ITextRegion r = null;
    - for (int i = 0; i < size; i++) {
    - r = regions.get(i);
    - if (r.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME)
    - if (jspReferenceRegion.getText(r).trim().equals("import")) { //$NON-NLS-1$
    - // get the attr value region
    - if (size > i + 2) {
    - r = regions.get(i + 2);
    - if (r.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
    -
    - String jspImportText = jspReferenceRegion.getText(r);
    -
    - // the position in question (in the JSP) is what
    - // is bracketed below
    - // includes whitespace
    - // <%@page import="java.lang.Object,[ java.io.* ],
    - // java.util.List"%>
    -
    - // in the java file
    - // import [ java.io.* ];
    -
    - start = jspImportText.indexOf(importName);
    - length = importName.length();
    -
    - // safety, don't add to map if bad positioning
    - if (start == -1 || length < 1)
    - break;
    -
    - // update jsp range
    - jspRange.setOffset(jspReferenceRegion.getStartOffset(r) + start);
    - jspRange.setLength(length);
    -
    - // update java range
    - javaRange.setLength(length);
    -
    - break;
    - }
    - }
    - }
    - }
    -
    - // safety for bad ranges
    - if (start != -1 && length > 1) {
    - // put ranges in java -> jsp range map
    - fImportRanges.put(javaRange, jspRange);
    - }
    - }
    -
    - /**
    - * temp fix for 282295 until better mapping is in place
    - *
    - * @param newText
    - * @param jspReferenceRegion
    - */
    - private void appendUseBeanToBuffer(String newText, ITextRegionCollection jspReferenceRegion, boolean isIndirect) throws Exception {
    - // java string looks like this (tokenized)
    - // Type id = new Classname();\n
    - // 0 1 2 3 4
    - // or
    - // Type id = null;\n // if there is no classname
    - // 0 1 2 3
    -
    - // ----------------------
    - // calculate java ranges
    - // ----------------------
    - StringTokenizer st = new StringTokenizer(newText, " ", false); //$NON-NLS-1$
    - int i = 0;
    - String[] parsedJava = new String[st.countTokens()];
    - while (st.hasMoreTokens())
    - parsedJava[i++] = st.nextToken();
    -
    - String type = parsedJava[0] != null ? parsedJava[0] : ""; //$NON-NLS-1$
    - String id = parsedJava[1] != null ? parsedJava[1] : ""; //$NON-NLS-1$
    - String className = parsedJava.length > 4 ? parsedJava[4] : ""; //$NON-NLS-1$
    -
    - Position javaTypeRange = new Position(fOffsetInUserCode, type.length());
    - Position javaIdRange = new Position(fOffsetInUserCode + type.length() + 1, id.length());
    - Position javaClassRange = new Position(fOffsetInUserCode + type.length() + 1 + id.length() + 7, 0);
    - /*
    - * https://bugs.eclipse.org/bugs/show_bug.cgi?id=212242 - Check for
    - * the existence of '(' first.
    - */
    - int parenPos = -1;
    - if (className.length() >= 4 && (parenPos = className.indexOf('(')) >= 0) {
    - // https://bugs.eclipse.org/bugs/show_bug.cgi?id=86132
    - int classNameLength = className.substring(0, parenPos).length();
    - javaClassRange = new Position(fOffsetInUserCode + type.length() + 1 + id.length() + 7, classNameLength);
    - }
    -
    - // ---------------------
    - // calculate jsp ranges
    - // ---------------------
    - ITextRegionList regions = jspReferenceRegion.getRegions();
    - ITextRegion r = null;
    - String attrName = "", attrValue = ""; //$NON-NLS-1$ //$NON-NLS-2$
    - int quoteOffset = 0;
    - Position jspTypeRange = null;
    - Position jspIdRange = null;
    - Position jspClassRange = null;
    -
    - for (int j = 0; j < regions.size(); j++) {
    - r = regions.get(j);
    - if (r.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME) {
    - attrName = jspReferenceRegion.getText(r);
    - if (regions.size() > j + 2 && regions.get(j + 2).getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
    - // get attr value
    - r = regions.get(j + 2);
    - attrValue = jspReferenceRegion.getText(r);
    -
    - // may have quotes
    - quoteOffset = (attrValue.startsWith("\"") || attrValue.startsWith("'")) ? 1 : 0; //$NON-NLS-1$ //$NON-NLS-2$
    -
    - if (attrName.equals("type")) //$NON-NLS-1$
    - jspTypeRange = new Position(jspReferenceRegion.getStartOffset(r) + quoteOffset, StringUtils.stripQuotesLeaveInsideSpace(attrValue).length());
    - else if (attrName.equals("id")) //$NON-NLS-1$
    - jspIdRange = new Position(jspReferenceRegion.getStartOffset(r) + quoteOffset, StringUtils.stripQuotesLeaveInsideSpace(attrValue).length());
    - else if (attrName.equals("class")) //$NON-NLS-1$
    - jspClassRange = new Position(jspReferenceRegion.getStartOffset(r) + quoteOffset, StringUtils.stripQuotesLeaveInsideSpace(attrValue).length());
    - }
    - }
    - }
    -
    - // put ranges in java -> jsp range map
    - if (!type.equals("") && jspTypeRange != null) { //$NON-NLS-1$
    - fCodeRanges.put(javaTypeRange, jspTypeRange);
    - // note: don't update offsets for this map when result is built
    - // they'll be updated when code ranges offsets are updated
    - fUseBeanRanges.put(javaTypeRange, jspTypeRange);
    - if (isIndirect)
    - fIndirectRanges.put(javaTypeRange, jspTypeRange);
    - }
    - if (!id.equals("") && jspIdRange != null) { //$NON-NLS-1$
    - fCodeRanges.put(javaIdRange, jspIdRange);
    - // note: don't update offsets for this map when result is built
    - // they'll be updated when code ranges offsets are updated
    - fUseBeanRanges.put(javaIdRange, jspTypeRange);
    - if (isIndirect)
    - fIndirectRanges.put(javaIdRange, jspTypeRange);
    - }
    - if (!className.equals("") && jspClassRange != null) { //$NON-NLS-1$
    - fCodeRanges.put(javaClassRange, jspClassRange);
    - // note: don't update offsets for this map when result is built
    - // they'll be updated when code ranges offsets are updated
    - fUseBeanRanges.put(javaClassRange, jspTypeRange);
    - if (isIndirect)
    - fIndirectRanges.put(javaClassRange, jspTypeRange);
    - }
    - }
    -
    - /**
    - * Set the buffer to the current JSPType: STANDARD_JSP, EMBEDDED_JSP,
    - * DECLARATION, EXPRESSION, SCRIPTLET (for keepting track of cursor
    - * position when the final document is built)
    - *
    - * @param JSPType
    - * the JSP type that the cursor is in
    - */
    - protected void setCursorOwner(int JSPType) {
    - switch (JSPType) {
    - case DECLARATION :
    - setCursorOwner(fUserDeclarations);
    - break;
    - case EXPRESSION :
    - case SCRIPTLET :
    - setCursorOwner(fUserCode);
    - break;
    - default :
    - setCursorOwner(fUserCode);
    - }
    - }
    -
    - /**
    - * this piece of code iterates through fCurrentNodes and clumps them
    - * together in a big text string - unescaping characters if they are not
    - * CDATA - simply appending if they are CDATA it stops iteration when it
    - * hits a node that is an XML_TAG_NAME (which should be the region closing
    - * tag)
    - */
    - protected String getUnescapedRegionText(ITextRegionCollection stRegion, int JSPType) {
    - StringBuffer buffer = new StringBuffer();
    - int start = stRegion.getStartOffset();
    - int end = stRegion.getEndOffset();
    - // adjustment necessary for embedded region containers
    - if (stRegion instanceof ITextRegionContainer && stRegion.getType() == DOMRegionContext.BLOCK_TEXT) {
    - if (stRegion.getRegions() != null && stRegion.getRegions().size() > 1) {
    - ITextRegion jspContent = stRegion.getRegions().get(1); // should
    - // be
    - // jspContent
    - // region
    - start = stRegion.getStartOffset(jspContent);
    - end = stRegion.getEndOffset(jspContent);
    - }
    - }
    - int CDATAOffset = 0; // number of characters lost in conversion
    - int bufferSize = 0;
    - if (stRegion.getType() == DOMJSPRegionContexts.JSP_CONTENT || stRegion.getType() == DOMRegionContext.BLOCK_TEXT // need
    - // this
    - // for
    - // embedded
    - // JSP
    - // regions
    - || stRegion.getType() == DOMRegionContext.XML_TAG_NAME) // need
    - // this
    - // in
    - // case
    - // there's
    - // no
    - // region...
    - {
    - fInCodeRegion = (start <= fSourcePosition && fSourcePosition <= end);
    - if (fInCodeRegion) {
    - setCursorOwner(JSPType);
    - setRelativeOffset((fSourcePosition - start) + getCursorOwner().length());
    - if (JSPType == EXPRESSION) {
    - // if an expression, add then length of the enclosing
    - // paren..
    - setCursorInExpression(true);
    - setRelativeOffset(getRelativeOffset() + EXPRESSION_PREFIX.length());
    - }
    - }
    - ITextRegion jspContent = null;
    - if (stRegion.getRegions() != null && stRegion.getRegions().size() > 1)
    - jspContent = stRegion.getRegions().get(1);
    - return (jspContent != null) ? stRegion.getFullText(jspContent) : stRegion.getFullText(); // don't
    - // unescape
    - // if
    - // it's
    - // not
    - // an
    - // XMLJSP
    - // tag
    - }
    - else if (stRegion.getType() == DOMJSPRegionContexts.JSP_CLOSE) {
    - // need to determine cursor owner so that the fCurosorPosition
    - // will be
    - // correct even if there is no region after the cursor in the JSP
    - // file
    - setCursorOwner(JSPType);
    - }
    - // iterate XMLCONTENT and CDATA regions
    - // loop fCurrentNode until you hit </jsp:scriptlet> (or other closing
    - // tag name)
    - while (getCurrentNode() != null && getCurrentNode().getType() != DOMRegionContext.XML_TAG_NAME) // need
    - // to
    - // stop
    - // on
    - // the
    - // ending
    - // tag
    - // name...
    - {
    - start = getCurrentNode().getStartOffset();
    - end = getCurrentNode().getEndOffset();
    - bufferSize = buffer.length();
    - CDATAOffset = unescapeRegion(getCurrentNode(), buffer);
    - fInCodeRegion = (start <= fSourcePosition && fSourcePosition <= end);
    - if (fInCodeRegion) {
    - setCursorOwner(JSPType);
    - // this offset is sort of complicated...
    - // it's composed of:
    - // 1. the length of the start of the current region up till
    - // where the cursor is
    - // 2. minus the number of characters lost in CDATA translation
    - // 3. plus the length of the escaped buffer before the current
    - // region, but
    - // is still within the jsp tag
    - setRelativeOffset((fSourcePosition - getCurrentNode().getStartOffset()) + getCursorOwner().length() - CDATAOffset + bufferSize);
    - if (JSPType == EXPRESSION) {
    - setCursorInExpression(true);
    - // if an expression, add then length of the enclosing
    - // paren..
    - setRelativeOffset(getRelativeOffset() + EXPRESSION_PREFIX.length());
    - }
    - }
    - if (getCurrentNode() != null)
    - advanceNextNode();
    - }
    - return buffer.toString();
    - }
    -
    - /**
    - * @param r
    - * the region to be unescaped (XMLContent, XML ENTITY
    - * REFERENCE, or CDATA)
    - * @param sb
    - * the stringbuffer to append the text to
    - * @return the number of characters removed in unescaping this text
    - */
    - protected int unescapeRegion(ITextRegion r, StringBuffer sb) {
    - String s = ""; //$NON-NLS-1$
    - int lengthBefore = 0, lengthAfter = 0, cdata_tags_length = 0;
    - if (r != null && (r.getType() == DOMRegionContext.XML_CONTENT || r.getType() == DOMRegionContext.XML_ENTITY_REFERENCE)) {
    - lengthBefore = (getCurrentNode() != r) ? getCurrentNode().getFullText(r).length() : getCurrentNode().getFullText().length();
    - s = EscapedTextUtil.getUnescapedText(getCurrentNode(), r);
    - lengthAfter = s.length();
    - sb.append(s);
    - }
    - else if (r != null && r.getType() == DOMRegionContext.XML_CDATA_TEXT) {
    - if (r instanceof ITextRegionContainer) // only interested in
    - // contents
    - {
    - // navigate to next region container (which should be a JSP
    - // region)
    - Iterator it = ((ITextRegionContainer) r).getRegions().iterator();
    - ITextRegion temp = null;
    - while (it.hasNext()) {
    - temp = (ITextRegion) it.next();
    - if (temp instanceof ITextRegionContainer || temp.getType() == DOMRegionContext.XML_CDATA_TEXT) {
    - sb.append(getCurrentNode().getFullText(temp));
    - }
    - else if (temp.getType() == DOMRegionContext.XML_CDATA_OPEN || temp.getType() == DOMRegionContext.XML_CDATA_CLOSE) {
    - cdata_tags_length += temp.getLength();
    - }
    - }
    - }
    - }
    - return (lengthBefore - lengthAfter + cdata_tags_length);
    - }
    -
    - //
    - // <jsp:useBean>
    - protected void translateUseBean(ITextRegionCollection container) {
    - ITextRegion r = null;
    - String attrName = null;
    - String attrValue = null;
    - String id = null;
    - ITextRegion idRegion = null;
    - String type = null;
    - ITextRegion typeRegion = null;
    - String className = null;
    - ITextRegion classnameRegion = null;
    - String beanName = null;
    - ITextRegion beanNameRegion = null;
    -
    - if (DOMRegionContext.XML_END_TAG_OPEN.equals(container.getFirstRegion().getType())) {
    - if (!fUseBeansStack.isEmpty()) {
    - fUseBeansStack.pop();
    - appendToBuffer("}", fUserCode, false, fCurrentNode); //$NON-NLS-1$
    - }
    - else {
    - // no useBean start tag being remembered
    - ITextRegionCollection extraEndRegion = (ITextRegionCollection) fUseBeansStack.pop();
    - IJSPProblem missingStartTag = createJSPProblem(IJSPProblem.UseBeanStartTagMissing, IJSPProblem.F_PROBLEM_ID_LITERAL, "", extraEndRegion.getStartOffset(), extraEndRegion.getEndOffset());
    - fTranslationProblems.add(missingStartTag);
    - }
    - return;
    - }
    -
    - Iterator regions = container.getRegions().iterator();
    - while (regions.hasNext() && (r = (ITextRegion) regions.next()) != null && (r.getType() != DOMRegionContext.XML_TAG_CLOSE || r.getType() != DOMRegionContext.XML_EMPTY_TAG_CLOSE)) {
    - attrName = attrValue = null;
    - if (r.getType().equals(DOMRegionContext.XML_TAG_ATTRIBUTE_NAME)) {
    - attrName = container.getText(r).trim();
    - if (regions.hasNext() && (r = (ITextRegion) regions.next()) != null && r.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_EQUALS) {
    - if (regions.hasNext() && (r = (ITextRegion) regions.next()) != null && r.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
    - attrValue = StringUtils.stripQuotes(container.getText(r));
    - }
    - // has equals, but no value?
    - }
    - // an attribute with no equals?
    - }
    - // (pa) might need different logic here if we wanna support more
    - if (attrName != null && attrValue != null) {
    - if (attrName.equals("id")) {//$NON-NLS-1$
    - id = attrValue;
    - idRegion = r;
    - }
    - else if (attrName.equals("class")) {//$NON-NLS-1$
    - className = attrValue;
    - classnameRegion = r;
    - }
    - else if (attrName.equals("type")) {//$NON-NLS-1$
    - type = attrValue;
    - typeRegion = r;
    - }
    - else if (attrName.equals("beanName")) { //$NON-NLS-1$
    - beanName = attrValue;
    - beanNameRegion = r;
    - }
    - }
    - }
    -
    - if (id != null) {
    - // The id is not a valid Java identifier
    - if (!isValidJavaIdentifier(id) && idRegion != null) {
    - Object problem = createJSPProblem(IJSPProblem.UseBeanInvalidID, IProblem.ParsingErrorInvalidToken, MessageFormat.format(JSPCoreMessages.JSPTranslator_0, new String[]{id}), container.getStartOffset(idRegion), container.getTextEndOffset(idRegion) - 1);
    - fTranslationProblems.add(problem);
    - }
    - // No Type information is provided
    - if (((type == null && className == null) || (type == null && beanName != null)) && idRegion != null) {
    - Object problem = createJSPProblem(IJSPProblem.UseBeanMissingTypeInfo, IProblem.UndefinedType, NLS.bind(JSPCoreMessages.JSPTranslator_3, new String[]{id}), container.getStartOffset(idRegion), container.getTextEndOffset(idRegion) - 1);
    - fTranslationProblems.add(problem);
    - }
    - // Cannot specify both a class and a beanName
    - if (className != null && beanName != null && beanNameRegion != null) {
    - ITextRegion nameRegion = container.getRegions().get(1);
    - Object problem = createJSPProblem(IJSPProblem.UseBeanAmbiguousType, IProblem.AmbiguousType, JSPCoreMessages.JSPTranslator_2, container.getStartOffset(nameRegion), container.getTextEndOffset(nameRegion) - 1);
    - fTranslationProblems.add(problem);
    - }
    - /*
    - * Only have a class or a beanName at this point, and potentially
    - * a type has id w/ type and/or classname/beanName
    - */
    - // Type id = new Classname/Beanname();
    - // or
    - // Type id = null; // if there is no classname or beanname
    - if ((type != null || className != null)) {
    - if (type == null) {
    - type = className;
    - typeRegion = classnameRegion;
    - }
    -
    - /* Now check the types (multiple of generics may be involved) */
    - List errorTypeNames = new ArrayList(2);
    - if (!isTypeFound(type, errorTypeNames)) {
    - for (int i = 0; i < errorTypeNames.size(); i++) {
    - Object problem = createJSPProblem(IJSPProblem.F_PROBLEM_ID_LITERAL, IProblem.UndefinedType, MessageFormat.format(JSPCoreMessages.JSPTranslator_1, new String[]{errorTypeNames.get(i).toString()}), container.getStartOffset(typeRegion), container.getTextEndOffset(typeRegion) - 1);
    - fTranslationProblems.add(problem);
    - }
    - }
    - else {
    - String prefix = type + " " + id + " = "; //$NON-NLS-1$ //$NON-NLS-2$
    - String suffix = "null;" + ENDL; //$NON-NLS-1$
    - if (className != null)
    - suffix = "new " + className + "();" + ENDL; //$NON-NLS-1$ //$NON-NLS-2$
    - else if (beanName != null)
    - suffix = "(" + type + ") java.beans.Beans.instantiate(getClass().getClassLoader(), \"" + beanName + "\");" + ENDL; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
    - appendToBuffer(prefix + suffix, fUserCode, true, fCurrentNode);
    - }
    - }
    - }
    - /*
    - * Add a brace and remember the start tag regardless of whether a
    - * variable was correctly created
    - */
    - if (!DOMRegionContext.XML_EMPTY_TAG_CLOSE.equals(container.getLastRegion().getType())) {
    - fUseBeansStack.push(container);
    - appendToBuffer("{", fUserCode, false, fCurrentNode); //$NON-NLS-1$
    - }
    - }
    -
    - /**
    - * @param type
    - * @return
    - */
    - private boolean isTypeFound(String rawTypeValue, List errorTypeNames) {
    - IFile file = getFile();
    - if(file == null)
    - return true;
    -
    - IProject project = file.getProject();
    - IJavaProject p = JavaCore.create(project);
    - if (p.exists()) {
    - String types[] = new String[3];
    - if (rawTypeValue.indexOf('<') > 0) {
    - // JSR 14 : Generics are being used, parse them out
    - try {
    - StringTokenizer toker = new StringTokenizer(rawTypeValue);
    - // generic
    - types[0] = toker.nextToken("<"); //$NON-NLS-1$
    - // type 1 or key
    - types[1] = toker.nextToken(",>"); //$NON-NLS-1$
    - // type 2 or value
    - types[2] = toker.nextToken(",>"); //$NON-NLS-1$
    - }
    - catch (NoSuchElementException e) {
    - // StringTokenizer failure with unsupported syntax
    - }
    - }
    - else {
    - types[0] = rawTypeValue;
    - }
    -
    - for (int i = 0; i < types.length; i++) {
    - if (types[i] != null) {
    - // remove any array suffixes
    - if (types[i].indexOf('[') > 0) {
    - types[i] = types[i].substring(0, types[i].indexOf('[')); //$NON-NLS-1$
    - }
    - // remove any "extends" prefixes (JSR 14)
    - if (types[i].indexOf("extends") > 0) {
    - types[i] = StringUtils.strip(types[i].substring(types[i].indexOf("extends"))); //$NON-NLS-1$
    - }
    -
    - addNameToListIfTypeNotFound(p, types[i], errorTypeNames);
    - }
    - }
    - }
    - return errorTypeNames.isEmpty();
    - }
    -
    - private void addNameToListIfTypeNotFound(IJavaProject p, String typeName, List collectedNamesNotFound) {
    - try {
    - if (typeName != null) {
    - IType type = p.findType(typeName);
    - if (type == null || !type.exists()) {
    - collectedNamesNotFound.add(typeName);
    - }
    - else {
    - IResource typeResource = type.getResource();
    - if(typeResource != null) {
    -
    - }
    - }
    - }
    - }
    - catch (JavaModelException e) {
    - // Not a Java Project
    - }
    - }
    -
    - private boolean isValidJavaIdentifier(String id) {
    - char[] idChars = id.toCharArray();
    - if (idChars.length < 1)
    - return false;
    - boolean isValid = Character.isJavaIdentifierStart(idChars[0]);
    - for (int i = 1; i < idChars.length; i++) {
    - isValid = isValid && Character.isJavaIdentifierPart(idChars[i]);
    - }
    - return isValid;
    - }
    -
    - final public int getCursorPosition() {
    - return fCursorPosition;
    - }
    -
    - protected boolean isCursorInExpression() {
    - return fCursorInExpression;
    - }
    -
    - protected void setCursorInExpression(boolean in) {
    - fCursorInExpression = in;
    - }
    -
    - final public void setSourceCursor(int i) {
    - fSourcePosition = i;
    - }
    -
    - final public int getSourcePosition() {
    - return fSourcePosition;
    - }
    -
    - final public TLDCMDocumentManager getTLDCMDocumentManager() {
    - return TaglibController.getTLDCMDocumentManager(fStructuredDocument);
    - }
    -
    - final public void setRelativeOffset(int relativeOffset) {
    - this.fRelativeOffset = relativeOffset;
    - }
    -
    - final public int getRelativeOffset() {
    - return fRelativeOffset;
    - }
    -
    - private void setCursorOwner(StringBuffer cursorOwner) {
    - this.fCursorOwner = cursorOwner;
    - }
    -
    - final public StringBuffer getCursorOwner() {
    - return fCursorOwner;
    - }
    -
    - private IStructuredDocumentRegion setCurrentNode(IStructuredDocumentRegion currentNode) {
    - return this.fCurrentNode = currentNode;
    - }
    -
    - final public IStructuredDocumentRegion getCurrentNode() {
    - return fCurrentNode;
    - }
    -
    - public ArrayList getELProblems() {
    - return fELProblems;
    - }
    -
    - public IStructuredDocument getStructuredDocument() {
    - return fStructuredDocument;
    - }
    -
    - private IPath getModelPath() {
    - IPath path = null;
    - IStructuredModel sModel = StructuredModelManager.getModelManager().getExistingModelForRead(getStructuredDocument());
    - try {
    - if (sModel != null)
    - path = new Path(sModel.getBaseLocation());
    - }
    - finally {
    - if (sModel != null)
    - sModel.releaseFromRead();
    - }
    - return path;
    - }
    -
    - private void translateCodas() {
    - fProcessIncludes = false;
    - IPath modelpath = getModelPath();
    - if (modelpath != null) {
    - PropertyGroup[] propertyGroups = DeploymentDescriptorPropertyCache.getInstance().getPropertyGroups(modelpath);
    - for (int j = 0; j < propertyGroups.length; j++) {
    - IPath[] codas = propertyGroups[j].getIncludeCoda();
    - for (int i = 0; i < codas.length; i++) {
    - if (!getIncludes().contains(codas[i].toString()) && !codas[i].equals(modelpath)) {
    - getIncludes().push(codas[i]);
    - JSPIncludeRegionHelper helper = new JSPIncludeRegionHelper(this, true);
    - helper.parse(codas[i].toString());
    - getIncludes().pop();
    - }
    - }
    - }
    - }
    - fProcessIncludes = true;
    - }
    -
    - private void translatePreludes() {
    - fProcessIncludes = false;
    - IPath modelpath = getModelPath();
    - if (modelpath != null) {
    - PropertyGroup[] propertyGroups = DeploymentDescriptorPropertyCache.getInstance().getPropertyGroups(modelpath);
    - for (int j = 0; j < propertyGroups.length; j++) {
    - IPath[] preludes = propertyGroups[j].getIncludePrelude();
    - for (int i = 0; i < preludes.length; i++) {
    - if (!getIncludes().contains(preludes[i].toString()) && !preludes[i].equals(modelpath)) {
    - getIncludes().push(preludes[i]);
    - JSPIncludeRegionHelper helper = new JSPIncludeRegionHelper(this, true);
    - helper.parse(preludes[i].toString());
    - getIncludes().pop();
    - }
    - }
    - }
    - }
    - fProcessIncludes = true;
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/StackMap.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/StackMap.java
    deleted file mode 100644
    index 24126871d2..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/StackMap.java
    +++ /dev/null
    @@ -1,158 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 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.jsp.core.internal.java;
    -
    -import java.util.Collection;
    -import java.util.HashMap;
    -import java.util.Iterator;
    -import java.util.LinkedList;
    -import java.util.Map;
    -import java.util.Stack;
    -
    -/**
    - * @author nitin
    - *
    - */
    -class StackMap {
    -
    - private Map fInternalMap = null;
    -
    - public StackMap() {
    - fInternalMap = new HashMap();
    - }
    -
    - /**
    - * Removes all mappings from this StackMap
    - */
    - public void clear() {
    - fInternalMap.clear();
    - }
    -
    - /**
    - * Returns the most recently pushed value to which this map maps the
    - * specified key. Returns <tt>null</tt> if the map contains no mapping
    - * for this key.
    - *
    - * @param key
    - * key whose associated value is to be returned.
    - * @return the most recently put value to which this map maps the
    - * specified key, or <tt>null</tt> if the map contains no
    - * mapping for this key.
    - */
    - public Object peek(Object key) {
    - Stack stack = (Stack) fInternalMap.get(key);
    - if (stack != null) {
    - Object o = stack.peek();
    - if (stack.isEmpty()) {
    - fInternalMap.remove(key);
    - }
    - return o;
    - }
    - return null;
    - }
    -
    - /**
    - * Associates the specified value with the specified key in this map. If
    - * the map previously contained a mapping for this key, the old value is
    - * pushed onto the top of this key's private stack.
    - *
    - * @param key
    - * key with which the specified value is to be associated.
    - * @param value
    - * value to be associated with the specified key.
    - * @return newest value associated with specified key
    - *
    - * @throws UnsupportedOperationException
    - * if the <tt>put</tt> operation is not supported by this
    - * StackMap.
    - * @throws ClassCastException
    - * if the class of the specified key or value prevents it from
    - * being stored in this StackMap.
    - * @throws IllegalArgumentException
    - * if some aspect of this key or value prevents it from being
    - * stored in this StackMap.
    - * @throws NullPointerException,
    - * as this map does not permit <tt>null</tt> keys or values
    - */
    - public Object push(Object key, Object value) {
    - Stack stack = (Stack) fInternalMap.get(key);
    - if (stack == null) {
    - stack = new Stack();
    - fInternalMap.put(key, stack);
    - }
    - Object o = stack.push(value);
    - return o;
    - }
    -
    - /**
    - * Removes the most-recent mapping for this key from this StackMap if it
    - * is present.
    - *
    - * <p>
    - * Returns the value to which the map previously associated the key, or
    - * <tt>null</tt> if the map contained no mapping for this key. The map
    - * will not contain a mapping for the specified key once the call returns.
    - *
    - * @param key
    - * key whose stack is to be popped
    - * @return most-recently pushed value associated with specified key, or
    - * <tt>null</tt> if there was no mapping for key.
    - *
    - * @throws ClassCastException
    - * if the key is of an inappropriate type for this map.
    - * @throws NullPointerException
    - * if the key is <tt>null</tt> as this class does not permit
    - * <tt>null</tt> keys
    - */
    - public Object pop(Object key) {
    - Stack stack = (Stack) fInternalMap.get(key);
    - if (stack != null) {
    - Object o = stack.pop();
    - if (stack.isEmpty()) {
    - fInternalMap.remove(key);
    - }
    - return o;
    - }
    - return null;
    - }
    -
    - /**
    - * Returns the number of entries in this StackMap, the sum of the sizes of
    - * every remembered stack.
    - *
    - * @return the number of entries in this map.
    - */
    - int size() {
    - int size = 0;
    - Iterator i = fInternalMap.values().iterator();
    - while (i.hasNext()) {
    - Collection c = (Collection) i.next();
    - size += c.size();
    - }
    - return size;
    - }
    -
    - /**
    - * Returns all of the values of this StackMap.
    - *
    - * @return the values of every Stack within this StackMap.
    - */
    - Collection values() {
    - Collection values = new LinkedList();
    - Iterator i = fInternalMap.values().iterator();
    - while (i.hasNext()) {
    - Collection c = (Collection) i.next();
    - values.addAll(c);
    - }
    - return values;
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/TagTranslationAdapter.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/TagTranslationAdapter.java
    deleted file mode 100644
    index 0125fcda50..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/TagTranslationAdapter.java
    +++ /dev/null
    @@ -1,24 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 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.jsp.core.internal.java;
    -
    -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
    -
    -class TagTranslationAdapter extends JSPTranslationAdapter {
    - TagTranslationAdapter(IDOMModel xmlModel) {
    - super(xmlModel);
    - }
    -
    - JSPTranslator createTranslator() {
    - return new TagTranslator();
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/TagTranslationAdapterFactory.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/TagTranslationAdapterFactory.java
    deleted file mode 100644
    index a43e906a2f..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/TagTranslationAdapterFactory.java
    +++ /dev/null
    @@ -1,50 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 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.jsp.core.internal.java;
    -
    -import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;
    -import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;
    -import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;
    -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
    -
    -public class TagTranslationAdapterFactory extends JSPTranslationAdapterFactory {
    -
    - private TagTranslationAdapter fAdapter = null;
    -
    - public TagTranslationAdapterFactory() {
    - super();
    - }
    -
    - public INodeAdapterFactory copy() {
    - return new TagTranslationAdapterFactory();
    - }
    -
    - protected INodeAdapter createAdapter(INodeNotifier target) {
    - if (target instanceof IDOMNode && fAdapter == null) {
    - fAdapter = new TagTranslationAdapter(((IDOMNode) target).getModel());
    - if (DEBUG) {
    - System.out.println("(+) TagTranslationAdapterFactory [" + this + "] created adapter: " + fAdapter); //$NON-NLS-1$ //$NON-NLS-2$
    - }
    - }
    - return fAdapter;
    - }
    -
    - public void release() {
    - if (fAdapter != null) {
    - if (DEBUG) {
    - System.out.println("(-) TagTranslationAdapterFactory [" + this + "] releasing adapter: " + fAdapter); //$NON-NLS-1$ //$NON-NLS-2$
    - }
    - fAdapter.release();
    - }
    - super.release();
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/TagTranslator.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/TagTranslator.java
    deleted file mode 100644
    index 2d7c17d021..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/TagTranslator.java
    +++ /dev/null
    @@ -1,38 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 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.jsp.core.internal.java;
    -
    -class TagTranslator extends JSPTranslator {
    -
    - public TagTranslator() {
    - super();
    - }
    -
    - protected void init() {
    - fClassHeader = "public class _TagHandler extends "; //$NON-NLS-1$
    - fClassname = "_TagHandler"; //$NON-NLS-1$
    -
    - fImplicitImports = "import javax.servlet.*;" + ENDL + //$NON-NLS-1$
    - "import javax.servlet.http.*;" + ENDL + //$NON-NLS-1$
    - "import javax.servlet.jsp.*;" + ENDL + ENDL; //$NON-NLS-1$
    -
    - fServiceHeader = "public void doTag() throws JspException, java.io.IOException, IllegalStateException, SkipPageException {" + //$NON-NLS-1$
    - "javax.servlet.http.HttpServletResponse response = null;" + ENDL + //$NON-NLS-1$
    - "javax.servlet.http.HttpServletRequest request = null;" + ENDL + //$NON-NLS-1$
    - "JspContext jspContext = null;" + ENDL + //$NON-NLS-1$
    - "javax.servlet.ServletContext application = null;" + ENDL + //$NON-NLS-1$
    - "javax.servlet.jsp.JspWriter out = null;" + ENDL + //$NON-NLS-1$
    - "javax.servlet.ServletConfig config = null;" + ENDL; //$NON-NLS-1$
    -
    - fSuperclass = "javax.servlet.jsp.tagext.SimpleTagSupport"; //$NON-NLS-1$
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/XMLJSPRegionHelper.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/XMLJSPRegionHelper.java
    deleted file mode 100644
    index 4783f6eae4..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/XMLJSPRegionHelper.java
    +++ /dev/null
    @@ -1,526 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2008 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.jsp.core.internal.java;
    -
    -import java.util.Iterator;
    -import java.util.List;
    -
    -import org.eclipse.core.resources.IFile;
    -import org.eclipse.core.resources.ResourcesPlugin;
    -import org.eclipse.core.runtime.CoreException;
    -import org.eclipse.core.runtime.IPath;
    -import org.eclipse.core.runtime.Path;
    -import org.eclipse.jst.jsp.core.internal.Logger;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.TLDCMDocumentManager;
    -import org.eclipse.jst.jsp.core.internal.encoding.JSPDocumentLoader;
    -import org.eclipse.jst.jsp.core.internal.parser.JSPSourceParser;
    -import org.eclipse.jst.jsp.core.internal.provisional.JSP11Namespace;
    -import org.eclipse.jst.jsp.core.internal.regions.DOMJSPRegionContexts;
    -import org.eclipse.jst.jsp.core.internal.util.FileContentCache;
    -import org.eclipse.wst.sse.core.internal.ltk.modelhandler.IModelHandler;
    -import org.eclipse.wst.sse.core.internal.ltk.parser.BlockMarker;
    -import org.eclipse.wst.sse.core.internal.ltk.parser.StructuredDocumentRegionHandler;
    -import org.eclipse.wst.sse.core.internal.modelhandler.ModelHandlerRegistry;
    -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
    -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
    -import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
    -import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
    -import org.eclipse.wst.sse.core.utils.StringUtils;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
    -import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
    -import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
    -
    -
    -/**
    - * Parser/helper class for JSPTranslator. Used for parsing XML-JSP regions (in
    - * a script block) A lot of logic borrowed from TLDCMDocumentManager. There
    - * should be only one XMLJSPRegionHelper per text file
    - *
    - * @author pavery
    - */
    -class XMLJSPRegionHelper implements StructuredDocumentRegionHandler {
    - private final JSPTranslator fTranslator;
    - protected JSPSourceParser fLocalParser = null;
    - protected String fTextToParse = null;
    - // need this if not at the start of the document (eg. parsing just a
    - // script block)
    - protected int fStartOfTextToParse = 0;
    - // name of the open tag that was last handled (if we are interested in it)
    - protected String fTagname = null;
    - protected String fTextBefore = ""; //$NON-NLS-1$
    - protected String fUnescapedText = ""; //$NON-NLS-1$
    - protected String fStrippedText = ""; //$NON-NLS-1$
    - // for reconciling cursor position later
    - int fPossibleOwner = JSPTranslator.SCRIPTLET;
    - /**
    - * Determines whether translated source appends are indicated as
    - * "indirect", affecting how offsets are mapped.
    - */
    - boolean fAppendAsIndirectSource;
    -
    - public XMLJSPRegionHelper(JSPTranslator translator, boolean appendAsIndirectSource) {
    - getLocalParser().addStructuredDocumentRegionHandler(this);
    - this.fTranslator = translator;
    - fAppendAsIndirectSource = appendAsIndirectSource;
    - }
    -
    - protected JSPSourceParser getLocalParser() {
    - if (fLocalParser == null)
    - fLocalParser = new JSPSourceParser();
    - return fLocalParser;
    - }
    -
    - public void addBlockMarker(BlockMarker marker) {
    - fLocalParser.addBlockMarker(marker);
    - }
    -
    - public void reset(String textToParse) {
    - reset(textToParse, 0);
    - }
    -
    - public void reset(String textToParse, int start) {
    - fStartOfTextToParse = start;
    - fTextToParse = textToParse;
    - }
    -
    - public void forceParse() {
    - String contents = fTextToParse;
    -
    - IStructuredDocument document = (IStructuredDocument) new JSPDocumentLoader().createNewStructuredDocument();
    - if(contents != null && document != null) {
    - // from outer class
    - List blockMarkers = this.fTranslator.getBlockMarkers();
    - // this adds the current markers from the outer class list
    - // to this parser so parsing works correctly
    - for (int i = 0; i < blockMarkers.size(); i++) {
    - addBlockMarker((BlockMarker) blockMarkers.get(i));
    - }
    - reset(contents);
    -
    - document.set(contents);
    - IStructuredDocumentRegion cursor = document.getFirstStructuredDocumentRegion();
    - while(cursor != null) {
    - nodeParsed(cursor);
    - cursor = cursor.getNext();
    - }
    - }
    - }
    -
    - /*
    - * parse an entire file
    - *
    - * @param filename @return
    - */
    - public boolean parse(String filePathString) {
    - boolean parsed = false;
    - IStructuredDocument document = null;
    - String contents = null;
    -
    - IPath filePath = new Path(filePathString);
    - IFile f = ResourcesPlugin.getWorkspace().getRoot().getFile(filePath);
    - if (f == null || !f.isAccessible()) {
    - f = ResourcesPlugin.getWorkspace().getRoot().getFileForLocation(filePath);
    - }
    - if (f != null && f.isAccessible()) {
    - /*
    - * using a real document allows us to pull out text in the
    - * translator for dealing with TEI variables
    - */
    - try {
    - IModelHandler handler = ModelHandlerRegistry.getInstance().getHandlerFor(f);
    - document = (IStructuredDocument) handler.getDocumentLoader().createNewStructuredDocument();
    - contents = FileContentCache.getInstance().getContents(f.getFullPath());
    - }
    - catch (CoreException e) {
    - Logger.logException(e);
    - }
    - }
    - if (contents != null && document != null) {
    - // from outer class
    - List blockMarkers = this.fTranslator.getBlockMarkers();
    - // this adds the current markers from the outer class list
    - // to this parser so parsing works correctly
    - for (int i = 0; i < blockMarkers.size(); i++) {
    - addBlockMarker((BlockMarker) blockMarkers.get(i));
    - }
    - reset(contents);
    - // forces parse
    - document.set(contents);
    - IStructuredDocumentRegion cursor = document.getFirstStructuredDocumentRegion();
    - while (cursor != null) {
    - nodeParsed(cursor);
    - cursor = cursor.getNext();
    - }
    - parsed = true;
    - }
    - return parsed;
    - }
    -
    -
    - /*
    - * listens to parser node parsed events adds to local scriplet,
    - * expression, declaration buffers determines which type of region the
    - * cursor is in, and adjusts cursor offset accordingly
    - */
    - public void nodeParsed(IStructuredDocumentRegion sdRegion) {
    -
    - try {
    - if (isJSPEndRegion(sdRegion)) {
    - String nameStr = getRegionName(sdRegion);
    - if (isPossibleCustomTag(nameStr)) {
    - // this custom tag may define variables
    - this.fTranslator.addTaglibVariables(nameStr, sdRegion);
    - }
    - fTagname = null;
    - }
    - else if (isJSPStartRegion(sdRegion)) {
    - String nameStr = getRegionName(sdRegion);
    - if (sdRegion.getFirstRegion().getType() == DOMRegionContext.XML_TAG_OPEN) {
    - if (isPossibleCustomTag(nameStr)) {
    - // this custom tag may define variables
    - this.fTranslator.addTaglibVariables(nameStr, sdRegion);
    - }
    - }
    - if (isJSPRegion(nameStr))
    - fTagname = nameStr;
    - else
    - fTagname = null;
    -
    -
    - // this section assumes important content (to translate)
    - // IS the opening tag
    -
    - // handle include and directive
    - if (fTagname != null && sdRegion.getFirstRegion().getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN) {
    - processOtherRegions(sdRegion);
    - }
    -
    -
    - // handle jsp:useBean
    - if (fTagname != null && fTagname.equals(JSP11Namespace.ElementName.USEBEAN)) {
    - processUseBean(sdRegion);
    - }
    - }
    - else if (sdRegion.getFirstRegion().getType() == DOMJSPRegionContexts.JSP_CONTENT || sdRegion.getFirstRegion().getType() == DOMRegionContext.XML_CONTENT) {
    - // this section assumes important content (to translate)
    - // is AFTER the opening tag
    - if (fTagname != null) {
    - // assign contents to one of the tables
    - if (isScriptlet(fTagname)) {
    - processScriptlet(sdRegion);
    - }
    - else if (isExpression(fTagname)) {
    - processExpression(sdRegion);
    - }
    - else if (isDeclaration(fTagname)) {
    - processDeclaration(sdRegion);
    - }
    - }
    - }
    - else {
    - fTagname = null;
    - /*
    - * We may have been asked to decode a script block with an XML
    - * comment in it (a common provision for browsers not
    - * supporting client scripting). While
    - * scriptlets/expressions/declarations will be identified as
    - * part of the normal parsing process, the temporary document
    - * used here will be parsed differently, respecting the
    - * comment since it's not in a tag block region any more, and
    - * the custom tags in the comment will not be found. Run those
    - * comment text pieces through the translator on their own.
    - */
    - Iterator regions = sdRegion.getRegions().iterator();
    - while (regions.hasNext()) {
    - ITextRegion region = (ITextRegion) regions.next();
    - if (DOMRegionContext.XML_COMMENT_TEXT.equals(region.getType()) && region.getStart() != 0) {
    - fTranslator.decodeScriptBlock(sdRegion.getFullText(region), sdRegion.getStartOffset(region));
    - }
    - }
    - }
    - // this updates cursor position
    - checkCursorInRegion(sdRegion);
    - }
    - catch (NullPointerException e) {
    - // logging this exception that I've seen a couple of times...
    - // seems to happen during shutdown of unit tests, at which
    - // point Logger has already been unloaded
    - try {
    - Logger.logException("XMLJSPRegionHelper: exception in node parsing", e); //$NON-NLS-1$
    - }
    - catch (NoClassDefFoundError ex) {
    - // do nothing, since we're just ending
    - }
    - }
    - }
    -
    -
    - public void resetNodes() {
    - // do nothing
    - }
    -
    - private void checkCursorInRegion(IStructuredDocumentRegion sdRegion) {
    - // if cursor is in this region...
    - if (this.fTranslator.getSourcePosition() >= fStartOfTextToParse + sdRegion.getStartOffset() && this.fTranslator.getSourcePosition() <= fStartOfTextToParse + sdRegion.getEndOffset()) {
    - int endOfNameTag = sdRegion.getStartOffset();
    - int offset = fTextBefore.length() - fStrippedText.length();
    - // offset in addtion to what's already in the buffer
    - this.fTranslator.setRelativeOffset(this.fTranslator.getSourcePosition() - (fStartOfTextToParse + endOfNameTag) - offset);
    - // outer class method
    - this.fTranslator.setCursorOwner(fPossibleOwner);
    - // add length of what's already in the buffer
    - this.fTranslator.setRelativeOffset(this.fTranslator.getRelativeOffset() + this.fTranslator.getCursorOwner().length());
    - if (fPossibleOwner == JSPTranslator.EXPRESSION) {
    - // add length of expression prefix if necessary...
    - this.fTranslator.setRelativeOffset(this.fTranslator.getRelativeOffset() + JSPTranslator.EXPRESSION_PREFIX.length());
    - }
    - }
    - }
    -
    - protected void processDeclaration(IStructuredDocumentRegion sdRegion) {
    - prepareText(sdRegion);
    - IStructuredDocumentRegion currentNode = fTranslator.getCurrentNode();
    - this.fTranslator.translateDeclarationString(fStrippedText, currentNode, currentNode.getStartOffset(), currentNode.getLength(), fAppendAsIndirectSource);
    - fPossibleOwner = JSPTranslator.DECLARATION;
    - }
    -
    - protected void processExpression(IStructuredDocumentRegion sdRegion) {
    - prepareText(sdRegion);
    - IStructuredDocumentRegion currentNode = fTranslator.getCurrentNode();
    - this.fTranslator.translateExpressionString(fStrippedText, currentNode, currentNode.getStartOffset(), currentNode.getLength(), fAppendAsIndirectSource);
    - fPossibleOwner = JSPTranslator.EXPRESSION;
    - }
    -
    - protected void processScriptlet(IStructuredDocumentRegion sdRegion) {
    - prepareText(sdRegion);
    - IStructuredDocumentRegion currentNode = fTranslator.getCurrentNode();
    - this.fTranslator.translateScriptletString(fStrippedText, currentNode, currentNode.getStartOffset(), currentNode.getLength(), fAppendAsIndirectSource);
    - fPossibleOwner = JSPTranslator.SCRIPTLET;
    - }
    -
    - /*
    - * Substitutes values for entity references, strips CDATA tags, and keeps
    - * track of string length(s) for cursor position calculation later. @param
    - * sdRegion
    - */
    - protected void prepareText(IStructuredDocumentRegion sdRegion) {
    - fTextBefore = fTextToParse.substring(sdRegion.getStartOffset(), sdRegion.getEndOffset());
    - fUnescapedText = EscapedTextUtil.getUnescapedText(fTextBefore);
    - fStrippedText = this.fTranslator.stripCDATA(fUnescapedText);
    - }
    -
    - protected void processUseBean(IStructuredDocumentRegion sdRegion) {
    - if (fTagname != null && isUseBean(fTagname)) {
    -
    - String beanClass, beanType, beanId, beanDecl = ""; //$NON-NLS-1$
    - beanClass = getAttributeValue("class", sdRegion); //$NON-NLS-1$
    - beanType = getAttributeValue("type", sdRegion); //$NON-NLS-1$
    - beanId = getAttributeValue("id", sdRegion); //$NON-NLS-1$
    -
    - if (beanId != null && (beanType != null || beanClass != null)) {
    - String prefix = null;
    - if (beanType.length() != 0) {
    - /* a type was specified */
    - prefix = beanType + " " + beanId + " = "; //$NON-NLS-1$ //$NON-NLS-2$
    - }
    - else {
    - /* no type was specified, use the concrete class value */
    - prefix = beanClass + " " + beanId + " = "; //$NON-NLS-1$ //$NON-NLS-2$
    - }
    - /*
    - * Define as null by default. If a concrete class was
    - * specified, supply a default constructor invocation instead.
    - */
    - String suffix = "null;\n"; //$NON-NLS-1$
    - // 186771 - JSP Validator problem with included useBean
    - if (beanClass.length() > 0) {
    - suffix = "new " + beanClass + "();\n"; //$NON-NLS-1$ //$NON-NLS-2$
    - }
    - beanDecl = prefix + suffix;
    - }
    -
    - IStructuredDocumentRegion currentNode = fTranslator.getCurrentNode();
    - this.fTranslator.translateScriptletString(beanDecl, currentNode, currentNode.getStartOffset(), currentNode.getLength(), fAppendAsIndirectSource);
    - fPossibleOwner = JSPTranslator.SCRIPTLET;
    - }
    - }
    -
    - protected void processOtherRegions(IStructuredDocumentRegion sdRegion) {
    - processIncludeDirective(sdRegion);
    - processPageDirective(sdRegion);
    - }
    -
    - protected void processIncludeDirective(IStructuredDocumentRegion sdRegion) {
    - if (isIncludeDirective(fTagname)) {
    - // the directive name region itself contains the attrs...
    - if (sdRegion.getRegions().get(0).getType() == DOMRegionContext.XML_CONTENT)
    - sdRegion = sdRegion.getPrevious();
    - String fileLocation = getAttributeValue("file", sdRegion); //$NON-NLS-1$
    - this.fTranslator.handleIncludeFile(fileLocation);
    - }
    - else if (isPossibleCustomTag(fTagname)) {
    - // this custom tag may define variables
    - this.fTranslator.addTaglibVariables(fTagname, sdRegion);
    - }
    - else if (isTaglibDirective(fTagname)) {
    - // also add the ones created here to the parent document
    - String prefix = getAttributeValue("prefix", sdRegion); //$NON-NLS-1$
    - TLDCMDocumentManager documentManager = this.fTranslator.getTLDCMDocumentManager();
    - if (documentManager != null) {
    - List docs = documentManager.getCMDocumentTrackers(prefix, this.fTranslator.getCurrentNode().getStartOffset());
    - Iterator it = docs.iterator();
    - Iterator elements = null;
    - CMNode node = null;
    - CMDocument doc = null;
    - BlockMarker marker = null;
    - while (it.hasNext()) {
    - doc = (CMDocument) it.next();
    - elements = doc.getElements().iterator();
    - while (elements.hasNext()) {
    - node = (CMNode) elements.next();
    - marker = new BlockMarker(node.getNodeName(), null, DOMJSPRegionContexts.JSP_CONTENT, true);
    - // global scope is OK because we have encountered this
    - // <@taglib> directive
    - // so it all markers from it should will be in scope
    - // add to this local parser
    - addBlockMarker(marker);
    - // add to outer class marker list, for
    - this.fTranslator.getBlockMarkers().add(marker);
    - }
    - }
    - }
    - }
    - }
    -
    - protected void processPageDirective(IStructuredDocumentRegion sdRegion) {
    - if (isPageDirective(fTagname)) {
    - this.fTranslator.translatePageDirectiveAttributes(sdRegion.getRegions().iterator(), sdRegion);
    - }
    - }
    -
    - /*
    - * convenience method to get an attribute value from attribute name
    - */
    - protected String getAttributeValue(String attrName, IStructuredDocumentRegion sdRegion) {
    - String sdRegionText = fTextToParse.substring(sdRegion.getStartOffset(), sdRegion.getEndOffset());
    - String textRegionText, attrValue = ""; //$NON-NLS-1$
    - Iterator it = sdRegion.getRegions().iterator();
    - ITextRegion nameRegion, valueRegion = null;
    - while (it.hasNext()) {
    - nameRegion = (ITextRegion) it.next();
    - if (nameRegion.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME) {
    - textRegionText = sdRegionText.substring(nameRegion.getStart(), nameRegion.getTextEnd());
    - if (textRegionText.equalsIgnoreCase(attrName)) {
    - while (it.hasNext()) {
    - valueRegion = (ITextRegion) it.next();
    - if (valueRegion.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
    - attrValue = sdRegionText.substring(valueRegion.getStart(), valueRegion.getEnd());
    - break; // inner
    - }
    - }
    - break; // outer
    - }
    - }
    - }
    - return StringUtils.stripQuotes(attrValue);
    - }
    -
    - // these methods determine what content gets added to the local scriplet,
    - // expression, declaration buffers
    - /*
    - * return true for elements whose contents we might want to add to the
    - * java file we are building
    - */
    - protected boolean isJSPStartRegion(IStructuredDocumentRegion sdRegion) {
    - return (sdRegion.getFirstRegion().getType() == DOMRegionContext.XML_TAG_OPEN || sdRegion.getFirstRegion().getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN);
    - }
    -
    - private boolean isJSPEndRegion(IStructuredDocumentRegion sdRegion) {
    - return (sdRegion.getFirstRegion().getType() == DOMRegionContext.XML_END_TAG_OPEN);
    - }
    -
    - protected boolean isJSPRegion(String tagName) {
    - return isDeclaration(tagName) || isExpression(tagName) || isScriptlet(tagName) || isUseBean(tagName) || isIncludeDirective(tagName) || isPossibleCustomTag(tagName) || isTaglibDirective(tagName) || isPageDirective(tagName);
    - }
    -
    - protected boolean isDeclaration(String tagName) {
    - return tagName.equalsIgnoreCase("jsp:declaration"); //$NON-NLS-1$
    - }
    -
    - protected boolean isExpression(String tagName) {
    - return tagName.equalsIgnoreCase("jsp:expression"); //$NON-NLS-1$
    - }
    -
    - protected boolean isScriptlet(String tagName) {
    - return tagName.equalsIgnoreCase("jsp:scriptlet"); //$NON-NLS-1$
    - }
    -
    - protected boolean isUseBean(String tagName) {
    - return tagName.equalsIgnoreCase("jsp:useBean"); //$NON-NLS-1$
    - }
    -
    - protected boolean isIncludeDirective(String tagName) {
    - return tagName.equalsIgnoreCase("jsp:directive.include"); //$NON-NLS-1$
    - }
    -
    - protected boolean isPossibleCustomTag(String tagName) {
    -// int colonIndex = tagName.indexOf(":");
    -// if (colonIndex > 0) {
    -// String prefix = tagName.substring(0, colonIndex);
    -// if (prefix.equals("jsp")) { //$NON-NLS-1$
    -// return false;
    -// }
    -// if (prefix.length() > 0) {
    -// TagMarker[] prefixes = (TagMarker[]) fLocalParser.getNestablePrefixes().toArray(new TagMarker[0]);
    -// for (int i = 0; i < prefixes.length; i++) {
    -// if (prefix.equals(prefixes[i].getTagName())) {
    -// return true;
    -// }
    -// }
    -// }
    -// }
    -// return false;
    - return tagName.indexOf(':') > -1 && !tagName.startsWith(JSPTranslator.JSP_PREFIX);
    - }
    -
    - protected boolean isTaglibDirective(String tagName) {
    - return tagName.equalsIgnoreCase("jsp:directive.taglib"); //$NON-NLS-1$
    - }
    -
    - protected boolean isPageDirective(String tagName) {
    - return tagName.equalsIgnoreCase("jsp:directive.page"); //$NON-NLS-1$
    - }
    -
    - protected String getRegionName(IStructuredDocumentRegion sdRegion) {
    -
    - String nameStr = ""; //$NON-NLS-1$
    - ITextRegionList regions = sdRegion.getRegions();
    - for (int i = 0; i < regions.size(); i++) {
    - ITextRegion r = regions.get(i);
    - if (r.getType() == DOMRegionContext.XML_TAG_NAME) {
    - nameStr = fTextToParse.substring(sdRegion.getStartOffset(r), sdRegion.getTextEndOffset(r));
    - break;
    - }
    - }
    - return nameStr.trim();
    - }
    -
    - /**
    - * get the contents of a file as a String
    - *
    - * @param filePath - the path to the file
    - * @return the contents, null if the file could not be found
    - */
    - protected String getContents(String filePath) {
    - IPath path = new Path(filePath);
    - return FileContentCache.getInstance().getContents(path.makeAbsolute());
    - }
    -} \ No newline at end of file
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTAddExpress.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTAddExpress.java
    deleted file mode 100644
    index a3c6a6eafc..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTAddExpress.java
    +++ /dev/null
    @@ -1,30 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JJTree: Do not edit this line. ASTAddExpress.java */
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public class ASTAddExpress extends SimpleNode {
    - public ASTAddExpress(int id) {
    - super(id);
    - }
    -
    - public ASTAddExpress(JSPELParser p, int id) {
    - super(p, id);
    - }
    -
    -
    - /** Accept the visitor. **/
    - public Object jjtAccept(JSPELParserVisitor visitor, Object data) {
    - return visitor.visit(this, data);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTAddExpression.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTAddExpression.java
    deleted file mode 100644
    index c3b6eac73c..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTAddExpression.java
    +++ /dev/null
    @@ -1,30 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JJTree: Do not edit this line. ASTAddExpression.java */
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public class ASTAddExpression extends ASTOperatorExpression {
    - public ASTAddExpression(int id) {
    - super(id);
    - }
    -
    - public ASTAddExpression(JSPELParser p, int id) {
    - super(p, id);
    - }
    -
    -
    - /** Accept the visitor. **/
    - public Object jjtAccept(JSPELParserVisitor visitor, Object data) {
    - return visitor.visit(this, data);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTAndExpression.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTAndExpression.java
    deleted file mode 100644
    index befe402036..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTAndExpression.java
    +++ /dev/null
    @@ -1,30 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JJTree: Do not edit this line. ASTAndExpression.java */
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public class ASTAndExpression extends ASTOperatorExpression {
    - public ASTAndExpression(int id) {
    - super(id);
    - }
    -
    - public ASTAndExpression(JSPELParser p, int id) {
    - super(p, id);
    - }
    -
    -
    - /** Accept the visitor. **/
    - public Object jjtAccept(JSPELParserVisitor visitor, Object data) {
    - return visitor.visit(this, data);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTChoiceExpression.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTChoiceExpression.java
    deleted file mode 100644
    index 779079e30b..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTChoiceExpression.java
    +++ /dev/null
    @@ -1,30 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JJTree: Do not edit this line. ASTChoiceExpression.java */
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public class ASTChoiceExpression extends SimpleNode {
    - public ASTChoiceExpression(int id) {
    - super(id);
    - }
    -
    - public ASTChoiceExpression(JSPELParser p, int id) {
    - super(p, id);
    - }
    -
    -
    - /** Accept the visitor. **/
    - public Object jjtAccept(JSPELParserVisitor visitor, Object data) {
    - return visitor.visit(this, data);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTEqualityExpression.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTEqualityExpression.java
    deleted file mode 100644
    index 4a06113a00..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTEqualityExpression.java
    +++ /dev/null
    @@ -1,30 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JJTree: Do not edit this line. ASTEqualityExpression.java */
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public class ASTEqualityExpression extends ASTOperatorExpression {
    - public ASTEqualityExpression(int id) {
    - super(id);
    - }
    -
    - public ASTEqualityExpression(JSPELParser p, int id) {
    - super(p, id);
    - }
    -
    -
    - /** Accept the visitor. **/
    - public Object jjtAccept(JSPELParserVisitor visitor, Object data) {
    - return visitor.visit(this, data);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTExpression.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTExpression.java
    deleted file mode 100644
    index 9d93f38a2e..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTExpression.java
    +++ /dev/null
    @@ -1,30 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JJTree: Do not edit this line. ASTExpression.java */
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public class ASTExpression extends SimpleNode {
    - public ASTExpression(int id) {
    - super(id);
    - }
    -
    - public ASTExpression(JSPELParser p, int id) {
    - super(p, id);
    - }
    -
    -
    - /** Accept the visitor. **/
    - public Object jjtAccept(JSPELParserVisitor visitor, Object data) {
    - return visitor.visit(this, data);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTFunctionInvocation.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTFunctionInvocation.java
    deleted file mode 100644
    index a0cad90208..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTFunctionInvocation.java
    +++ /dev/null
    @@ -1,40 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JJTree: Do not edit this line. ASTFunctionInvocation.java */
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public class ASTFunctionInvocation extends SimpleNode {
    - String fullFunctionName;
    -
    - public ASTFunctionInvocation(int id) {
    - super(id);
    - }
    -
    - public ASTFunctionInvocation(JSPELParser p, int id) {
    - super(p, id);
    - }
    -
    -
    - /** Accept the visitor. **/
    - public Object jjtAccept(JSPELParserVisitor visitor, Object data) {
    - return visitor.visit(this, data);
    - }
    -
    -public String getFullFunctionName() {
    - return fullFunctionName;
    -}
    -
    -public void setFullFunctionName(String fullFunctionName) {
    - this.fullFunctionName = fullFunctionName;
    -}
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTGTNode.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTGTNode.java
    deleted file mode 100644
    index d40005b68c..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTGTNode.java
    +++ /dev/null
    @@ -1,30 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JJTree: Do not edit this line. ASTGTNode.java */
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public class ASTGTNode extends SimpleNode {
    - public ASTGTNode(int id) {
    - super(id);
    - }
    -
    - public ASTGTNode(JSPELParser p, int id) {
    - super(p, id);
    - }
    -
    -
    - /** Accept the visitor. **/
    - public Object jjtAccept(JSPELParserVisitor visitor, Object data) {
    - return visitor.visit(this, data);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTImplicitObject.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTImplicitObject.java
    deleted file mode 100644
    index 1049ad52d4..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTImplicitObject.java
    +++ /dev/null
    @@ -1,30 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JJTree: Do not edit this line. ASTImplicitObject.java */
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public class ASTImplicitObject extends SimpleNode {
    - public ASTImplicitObject(int id) {
    - super(id);
    - }
    -
    - public ASTImplicitObject(JSPELParser p, int id) {
    - super(p, id);
    - }
    -
    -
    - /** Accept the visitor. **/
    - public Object jjtAccept(JSPELParserVisitor visitor, Object data) {
    - return visitor.visit(this, data);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTLiteral.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTLiteral.java
    deleted file mode 100644
    index fb334f433c..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTLiteral.java
    +++ /dev/null
    @@ -1,30 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JJTree: Do not edit this line. ASTLiteral.java */
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public class ASTLiteral extends SimpleNode {
    - public ASTLiteral(int id) {
    - super(id);
    - }
    -
    - public ASTLiteral(JSPELParser p, int id) {
    - super(p, id);
    - }
    -
    -
    - /** Accept the visitor. **/
    - public Object jjtAccept(JSPELParserVisitor visitor, Object data) {
    - return visitor.visit(this, data);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTMultiplyExpression.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTMultiplyExpression.java
    deleted file mode 100644
    index 3d8f600610..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTMultiplyExpression.java
    +++ /dev/null
    @@ -1,30 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JJTree: Do not edit this line. ASTMultiplyExpression.java */
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public class ASTMultiplyExpression extends ASTOperatorExpression {
    - public ASTMultiplyExpression(int id) {
    - super(id);
    - }
    -
    - public ASTMultiplyExpression(JSPELParser p, int id) {
    - super(p, id);
    - }
    -
    -
    - /** Accept the visitor. **/
    - public Object jjtAccept(JSPELParserVisitor visitor, Object data) {
    - return visitor.visit(this, data);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTOperatorExpression.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTOperatorExpression.java
    deleted file mode 100644
    index 3da6b77f57..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTOperatorExpression.java
    +++ /dev/null
    @@ -1,36 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -import java.util.ArrayList;
    -import java.util.List;
    -
    -public class ASTOperatorExpression extends SimpleNode {
    - protected ArrayList operatorTokens = new ArrayList();
    -
    - public ASTOperatorExpression(int i) {
    - super(i);
    - }
    -
    - public ASTOperatorExpression(JSPELParser p, int i) {
    - this(i);
    - parser = p;
    - }
    -
    - public void addOperatorToken(Token opToken) {
    - operatorTokens.add(opToken);
    - }
    -
    - public List getOperatorTokens() {
    - return operatorTokens;
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTOrExpression.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTOrExpression.java
    deleted file mode 100644
    index f3bb76c4aa..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTOrExpression.java
    +++ /dev/null
    @@ -1,30 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JJTree: Do not edit this line. ASTOrExpression.java */
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public class ASTOrExpression extends ASTOperatorExpression {
    - public ASTOrExpression(int id) {
    - super(id);
    - }
    -
    - public ASTOrExpression(JSPELParser p, int id) {
    - super(p, id);
    - }
    -
    -
    - /** Accept the visitor. **/
    - public Object jjtAccept(JSPELParserVisitor visitor, Object data) {
    - return visitor.visit(this, data);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTRelationalExpression.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTRelationalExpression.java
    deleted file mode 100644
    index 30238463ff..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTRelationalExpression.java
    +++ /dev/null
    @@ -1,30 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JJTree: Do not edit this line. ASTRelationalExpression.java */
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public class ASTRelationalExpression extends ASTOperatorExpression {
    - public ASTRelationalExpression(int id) {
    - super(id);
    - }
    -
    - public ASTRelationalExpression(JSPELParser p, int id) {
    - super(p, id);
    - }
    -
    -
    - /** Accept the visitor. **/
    - public Object jjtAccept(JSPELParserVisitor visitor, Object data) {
    - return visitor.visit(this, data);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTStart.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTStart.java
    deleted file mode 100644
    index 2fe1e507ff..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTStart.java
    +++ /dev/null
    @@ -1,28 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2001, 2005 BEA Systems 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:
    - * BEA Systems - initial API and implementation
    - *******************************************************************************/
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public class ASTStart extends SimpleNode {
    - public ASTStart(int id) {
    - super(id);
    - }
    -
    - public ASTStart(JSPELParser p, int id) {
    - super(p, id);
    - }
    -
    -
    - /** Accept the visitor. **/
    - public Object jjtAccept(JSPELParserVisitor visitor, Object data) {
    - return visitor.visit(this, data);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTUnaryExpression.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTUnaryExpression.java
    deleted file mode 100644
    index 86870a33db..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTUnaryExpression.java
    +++ /dev/null
    @@ -1,30 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JJTree: Do not edit this line. ASTUnaryExpression.java */
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public class ASTUnaryExpression extends SimpleNode {
    - public ASTUnaryExpression(int id) {
    - super(id);
    - }
    -
    - public ASTUnaryExpression(JSPELParser p, int id) {
    - super(p, id);
    - }
    -
    -
    - /** Accept the visitor. **/
    - public Object jjtAccept(JSPELParserVisitor visitor, Object data) {
    - return visitor.visit(this, data);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTValue.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTValue.java
    deleted file mode 100644
    index fd6a36c84a..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTValue.java
    +++ /dev/null
    @@ -1,30 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JJTree: Do not edit this line. ASTValue.java */
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public class ASTValue extends SimpleNode {
    - public ASTValue(int id) {
    - super(id);
    - }
    -
    - public ASTValue(JSPELParser p, int id) {
    - super(p, id);
    - }
    -
    -
    - /** Accept the visitor. **/
    - public Object jjtAccept(JSPELParserVisitor visitor, Object data) {
    - return visitor.visit(this, data);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTValuePrefix.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTValuePrefix.java
    deleted file mode 100644
    index 1f2bf03f81..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTValuePrefix.java
    +++ /dev/null
    @@ -1,30 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JJTree: Do not edit this line. ASTValuePrefix.java */
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public class ASTValuePrefix extends SimpleNode {
    - public ASTValuePrefix(int id) {
    - super(id);
    - }
    -
    - public ASTValuePrefix(JSPELParser p, int id) {
    - super(p, id);
    - }
    -
    -
    - /** Accept the visitor. **/
    - public Object jjtAccept(JSPELParserVisitor visitor, Object data) {
    - return visitor.visit(this, data);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTValueSuffix.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTValueSuffix.java
    deleted file mode 100644
    index 2317267337..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ASTValueSuffix.java
    +++ /dev/null
    @@ -1,41 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JJTree: Do not edit this line. ASTValueSuffix.java */
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public class ASTValueSuffix extends SimpleNode {
    -
    - protected Token propertyNameToken;
    -
    - public ASTValueSuffix(int id) {
    - super(id);
    - }
    -
    - public ASTValueSuffix(JSPELParser p, int id) {
    - super(p, id);
    - }
    -
    -
    - /** Accept the visitor. **/
    - public Object jjtAccept(JSPELParserVisitor visitor, Object data) {
    - return visitor.visit(this, data);
    - }
    -
    -public Token getPropertyNameToken() {
    - return propertyNameToken;
    -}
    -
    -public void setPropertyNameToken(Token propertyNameToken) {
    - this.propertyNameToken = propertyNameToken;
    -}
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ELGenerator.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ELGenerator.java
    deleted file mode 100644
    index ef40a9eeff..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ELGenerator.java
    +++ /dev/null
    @@ -1,45 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005, 2006 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -import java.util.Map;
    -
    -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
    -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
    -import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionCollection;
    -
    -/**
    - * The code checker for the jsf/jsp EL.
    - */
    -public final class ELGenerator {
    - /**
    - * Constructor.
    - *
    - * @param locator A valid ELLocator instance, may not be null.
    - */
    - public ELGenerator() {
    - } // constructor
    -
    -
    - /**
    - * Check the netuiel AST and set diagnostics as necessary.
    - * @param translator TODO
    - * @param jspReferenceRegion TODO
    - * @param contentStart
    - * @param contentLength
    - */
    - public void generate(ASTExpression root, IStructuredDocumentRegion currentNode, StringBuffer result, Map codeMap, IStructuredDocument document, ITextRegionCollection jspReferenceRegion, int contentStart, int contentLength) {
    - ELGeneratorVisitor visitor = new ELGeneratorVisitor(result, currentNode, codeMap, document, jspReferenceRegion, contentStart);
    - root.jjtAccept(visitor, null);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ELGeneratorVisitor.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ELGeneratorVisitor.java
    deleted file mode 100644
    index acb961c45d..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ELGeneratorVisitor.java
    +++ /dev/null
    @@ -1,509 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005, 2006 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - * Bug 154474 EL: 'and', 'or', ... operator
    - * https://bugs.eclipse.org/bugs/show_bug.cgi?id=154474
    - * Bernhard Huemer <bernhard.huemer@gmail.com>
    - *
    - *******************************************************************************/
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -import java.util.HashMap;
    -import java.util.Iterator;
    -import java.util.List;
    -import java.util.Map;
    -
    -import org.eclipse.core.resources.IWorkspaceRoot;
    -import org.eclipse.core.resources.ResourcesPlugin;
    -import org.eclipse.core.runtime.IPath;
    -import org.eclipse.jdt.core.IJavaProject;
    -import org.eclipse.jdt.core.JavaCore;
    -import org.eclipse.jface.text.Position;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.TaglibController;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.CMDocumentImpl;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.TLDCMDocumentManager;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.TaglibTracker;
    -import org.eclipse.jst.jsp.core.internal.contentmodel.tld.provisional.TLDFunction;
    -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
    -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
    -import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionCollection;
    -
    -public class ELGeneratorVisitor implements JSPELParserVisitor {
    -
    - private static final String ENDL = "\n"; //$NON-NLS-1$
    -
    - private static final String fExpressionHeader1 = "public String _elExpression"; //$NON-NLS-1$
    - private static final String fExpressionHeader2 = "()" + ENDL + //$NON-NLS-1$
    - "\t\tthrows java.io.IOException, javax.servlet.ServletException {" + ENDL + //$NON-NLS-1$
    - "javax.servlet.jsp.PageContext pageContext = null;" + ENDL + //$NON-NLS-1$
    - "java.util.Map param = null;" + ENDL + //$NON-NLS-1$
    - "java.util.Map paramValues = null;" + ENDL + //$NON-NLS-1$
    - "java.util.Map header = null;" + ENDL + //$NON-NLS-1$
    - "java.util.Map headerValues = null;" + ENDL + //$NON-NLS-1$
    - "java.util.Map cookie = null;" + ENDL + //$NON-NLS-1$
    - "java.util.Map initParam = null;" + ENDL + //$NON-NLS-1$
    - "java.util.Map pageScope = null;" + ENDL + //$NON-NLS-1$
    - "java.util.Map requestScope = null;" + ENDL + //$NON-NLS-1$
    - "java.util.Map sessionScope = null;" + ENDL + //$NON-NLS-1$
    - "java.util.Map applicationScope = null;" + ENDL + //$NON-NLS-1$
    - "return \"\"+"; //$NON-NLS-1$
    -
    - private static final String fExpressionHeader2_param = "()" + ENDL + //$NON-NLS-1$
    - "\t\tthrows java.io.IOException, javax.servlet.ServletException {" + ENDL + //$NON-NLS-1$
    - "javax.servlet.jsp.PageContext pageContext = null;" + ENDL + //$NON-NLS-1$
    - "java.util.Map<java.lang.String, java.lang.String> param = null;" + ENDL + //$NON-NLS-1$
    - "java.util.Map<java.lang.String, java.lang.String[]> paramValues = null;" + ENDL + //$NON-NLS-1$
    - "java.util.Map<java.lang.String, java.lang.String> header = null;" + ENDL + //$NON-NLS-1$
    - "java.util.Map<java.lang.String, java.lang.String[]> headerValues = null;" + ENDL + //$NON-NLS-1$
    - "java.util.Map<java.lang.String, javax.servlet.http.Cookie> cookie = null;" + ENDL + //$NON-NLS-1$
    - "java.util.Map<java.lang.String, java.lang.String> initParam = null;" + ENDL + //$NON-NLS-1$
    - "java.util.Map<java.lang.String, java.lang.Object> pageScope = null;" + ENDL + //$NON-NLS-1$
    - "java.util.Map<java.lang.String, java.lang.Object> requestScope = null;" + ENDL + //$NON-NLS-1$
    - "java.util.Map<java.lang.String, java.lang.Object> sessionScope = null;" + ENDL + //$NON-NLS-1$
    - "java.util.Map<java.lang.String, java.lang.Object> applicationScope = null;" + ENDL + //$NON-NLS-1$
    - "return \"\"+"; //$NON-NLS-1$
    -
    - private static final String fJspImplicitObjects[] = { "pageContext" }; //$NON-NLS-1$
    -
    - private static final String fJspImplicitMaps[] = { "param", "paramValues", "header", "headerValues", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
    - "cookie", "initParam", "pageScope", "requestScope", "sessionScope", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$
    - "applicationScope" }; //$NON-NLS-1$
    -
    - private static final HashMap fJSPImplicitObjectMap = new HashMap(fJspImplicitObjects.length);
    - static {
    - for(int i = 0; i < fJspImplicitObjects.length; i++) {
    - fJSPImplicitObjectMap.put(fJspImplicitObjects[i], new Boolean(true));
    - }
    -
    - for(int i = 0; i < fJspImplicitMaps.length; i++) {
    - fJSPImplicitObjectMap.put(fJspImplicitMaps[i], new Boolean(false));
    - }
    - }
    -
    - private static final String fFooter = " ;" + ENDL + "}" + ENDL; //$NON-NLS-1$ //$NON-NLS-2$
    -
    - private StringBuffer fResult;
    - private Map fCodeMap;
    - private int fOffsetInUserCode;
    - private static int methodCounter = 0;
    - private IStructuredDocument fDocument = null;
    - private int fContentStart;
    - private static Map fOperatorMap;
    -
    - // this flag lets us know if we were unable to generate for some reason. One possible reason is that the expression
    - // contains a reference to a variable for which information is only available at runtime.
    - private boolean fCanGenerate = true;
    -
    - private IStructuredDocumentRegion fCurrentNode;
    -
    - private boolean fUseParameterizedTypes;
    -
    - /**
    - * Tranlsation of XML-style operators to java
    - */
    - static {
    - fOperatorMap = new HashMap();
    - fOperatorMap.put("gt", ">"); //$NON-NLS-1$ //$NON-NLS-2$
    - fOperatorMap.put("lt", "<"); //$NON-NLS-1$ //$NON-NLS-2$
    - fOperatorMap.put("ge", ">="); //$NON-NLS-1$ //$NON-NLS-2$
    - fOperatorMap.put("le", "<="); //$NON-NLS-1$ //$NON-NLS-2$
    - fOperatorMap.put("mod", "%"); //$NON-NLS-1$ //$NON-NLS-2$
    - fOperatorMap.put("eq", "=="); //$NON-NLS-1$ //$NON-NLS-2$
    - fOperatorMap.put("and", "&&"); //$NON-NLS-1$ //$NON-NLS-2$
    - fOperatorMap.put("or", "||"); //$NON-NLS-1$ //$NON-NLS-2$
    - fOperatorMap.put("not", "!"); //$NON-NLS-1$ //$NON-NLS-2$
    - }
    -
    - /**
    - * The constructor squirrels away a few things we'll need later
    - *
    - * @param result
    - * @param codeMap
    - * @param translator
    - * @param jspReferenceRegion
    - * @param contentStart
    - */
    - public ELGeneratorVisitor(StringBuffer result, IStructuredDocumentRegion currentNode, Map codeMap, IStructuredDocument document, ITextRegionCollection jspReferenceRegion, int contentStart)
    - {
    - fResult = result;
    - fCodeMap = codeMap;
    - fOffsetInUserCode = result.length();
    - fContentStart = contentStart;
    - fDocument = document;
    - fCurrentNode = currentNode;
    -
    - fUseParameterizedTypes = compilerSupportsParameterizedTypes();
    - }
    -
    - /**
    - * Append a token to the output stream. Automatically calculating mapping.
    - *
    - * @param token
    - */
    - private void append(Token token)
    - {
    - append(token.image, token.beginColumn - 1, token.endColumn);
    - }
    -
    - /**
    - * Append a translation for the corresponding input token.
    - *
    - * @param translated
    - * @param token
    - */
    - private void append(String translated, Token token)
    - {
    - append(translated, token.beginColumn - 1, token.endColumn);
    - }
    -
    - /**
    - * Append a string explicitly giving the input mapping.
    - *
    - * @param newText
    - * @param jspPositionStart
    - * @param jspPositionEnd
    - */
    - private void append(String newText, int jspPositionStart, int jspPositionEnd)
    - {
    - fResult.append(newText);
    - Position javaRange = new Position(fOffsetInUserCode, newText.length());
    - Position jspRange = new Position(fContentStart + jspPositionStart, jspPositionEnd - jspPositionStart);
    -
    - fCodeMap.put(javaRange, jspRange);
    - fOffsetInUserCode += newText.length();
    - }
    -
    - /**
    - * Append text that will be unmapped and therefore will not be available for completion.
    - *
    - * @param newText
    - */
    - private void append(String newText)
    - {
    - fResult.append(newText);
    - fOffsetInUserCode += newText.length();
    - }
    -
    - /**
    - * Generate a function invocation.
    - *
    - * @param fullFunctionName
    - * @return
    - */
    - protected String genFunction(String fullFunctionName) {
    - TLDCMDocumentManager docMgr = TaglibController.getTLDCMDocumentManager(fDocument);
    - int colonIndex = fullFunctionName.indexOf(':');
    - String prefix = fullFunctionName.substring(0, colonIndex);
    - String functionName = fullFunctionName.substring(colonIndex + 1);
    - if (docMgr == null)
    - return null;
    -
    - Iterator taglibs = docMgr.getCMDocumentTrackers(fCurrentNode.getStartOffset()).iterator();
    - while (taglibs.hasNext()) {
    - TaglibTracker tracker = (TaglibTracker)taglibs.next();
    - if(tracker.getPrefix().equals(prefix)) {
    - CMDocumentImpl doc = (CMDocumentImpl)tracker.getDocument();
    -
    - List functions = doc.getFunctions();
    - for(Iterator it = functions.iterator(); it.hasNext(); ) {
    - TLDFunction function = (TLDFunction)it.next();
    - if(function.getName().equals(functionName)) {
    - return function.getClassName() + "." + function.getName(); //$NON-NLS-1$
    - }
    - }
    - }
    - }
    - return null;
    - }
    -
    - /**
    - * Handle a simple node -- fallback
    - */
    - public Object visit(SimpleNode node, Object data) {
    - return(node.childrenAccept(this, data));
    - }
    -
    - static synchronized int getMethodCounter() {
    - return methodCounter++;
    - }
    -
    - /**
    - * Handle top-level expression
    - */
    - public Object visit(ASTExpression node, Object data) {
    - int start = node.getFirstToken().beginColumn - 1;
    - int end = node.lastToken.endColumn - 1;
    - append(fExpressionHeader1, start, start);
    - append(Integer.toString(getMethodCounter()), start, start);
    - if (fUseParameterizedTypes)
    - append(fExpressionHeader2_param, start, start);
    - else
    - append(fExpressionHeader2, start, start);
    -
    - Object retval = node.childrenAccept(this, data);
    -
    - append(fFooter, end, end);
    -
    - // something is preventing good code generation so empty out the result and the map.
    - if(!fCanGenerate) {
    - fResult.delete(0, fResult.length());
    - fCodeMap.clear();
    - }
    - return retval;
    - }
    -
    - private boolean compilerSupportsParameterizedTypes() {
    - if (fDocument != null) {
    - IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
    - IPath location = TaglibController.getLocation(fDocument);
    - if (location != null && location.segmentCount() > 0) {
    - IJavaProject project = JavaCore.create(root.getProject(location.segment(0)));
    - String compliance = project.getOption(JavaCore.COMPILER_SOURCE, true);
    - try {
    - return Float.parseFloat(compliance) >= 1.5;
    - }
    - catch (NumberFormatException e) {
    - return false;
    - }
    - }
    - }
    - return false;
    - }
    -
    - /**
    - * Generically generate an operator node.
    - *
    - * @param node
    - * @param data
    - */
    - private void generateOperatorNode(ASTOperatorExpression node, Object data) {
    - for(int i = 0; i < node.children.length; i++) {
    - node.children[i].jjtAccept(this, data);
    - if( node.children.length - i > 1) {
    - appendOperator((Token)node.getOperatorTokens().get(i));
    - }
    - }
    - }
    -
    - /**
    - * Append an operator to the output stream after translation (if any)
    - *
    - * @param token
    - * @return
    - */
    - private String appendOperator(Token token) {
    - String tokenImage = token.image.trim();
    - String translated = (String)fOperatorMap.get(tokenImage);
    - if(null != translated) {
    - append(translated, token);
    - } else {
    - append(token);
    - }
    - return(translated);
    - }
    -
    - /**
    - * Handle or Expression
    - */
    - public Object visit(ASTOrExpression node, Object data) {
    - generateOperatorNode(node, data);
    - return(null);
    - }
    -
    -
    - /**
    - * Handle and expression
    - */
    - public Object visit(ASTAndExpression node, Object data) {
    - generateOperatorNode(node, data);
    - return(null);
    - }
    -
    -
    - /**
    - * Handle equality
    - */
    - public Object visit(ASTEqualityExpression node, Object data) {
    - generateOperatorNode(node, data);
    - return(null);
    - }
    -
    -
    - /**
    - * Handle Relational
    - */
    - public Object visit(ASTRelationalExpression node, Object data) {
    - generateOperatorNode(node, data);
    - return(null);
    - }
    -
    -
    - /**
    - * Handle addition
    - */
    - public Object visit(ASTAddExpression node, Object data) {
    - generateOperatorNode(node, data);
    - return(null);
    - }
    -
    -
    - /**
    - * Handle multiply
    - */
    - public Object visit(ASTMultiplyExpression node, Object data) {
    - generateOperatorNode(node, data);
    - return(null);
    - }
    -
    -
    - /**
    - * Choice Expression (ternary operator)
    - */
    - public Object visit(ASTChoiceExpression node, Object data) {
    - node.children[0].jjtAccept(this, data);
    - append("?"); //$NON-NLS-1$
    - node.children[1].jjtAccept(this, data);
    - append(":"); //$NON-NLS-1$
    - node.children[2].jjtAccept(this,data);
    - return null;
    - }
    -
    -
    - /**
    - * Handle unary
    - */
    - public Object visit(ASTUnaryExpression node, Object data) {
    - if(JSPELParserConstants.EMPTY == node.firstToken.kind) {
    - append("((null == "); //$NON-NLS-1$
    - node.childrenAccept(this, data);
    - append(") || ("); //$NON-NLS-1$
    - node.childrenAccept(this, data);
    - append(").isEmpty())"); //$NON-NLS-1$
    - } else if(JSPELParserConstants.NOT1 == node.firstToken.kind || JSPELParserConstants.NOT2 == node.firstToken.kind) {
    - append("(!"); //$NON-NLS-1$
    - node.childrenAccept(this, data);
    - append(")"); //$NON-NLS-1$
    - } else if(JSPELParserConstants.MINUS == node.firstToken.kind) {
    - append("(-"); //$NON-NLS-1$
    - node.childrenAccept(this, data);
    - append(")"); //$NON-NLS-1$
    - } else {
    - node.childrenAccept(this, data);
    - }
    - return null;
    - }
    -
    -
    - /**
    - * Value node
    - */
    - public Object visit(ASTValue node, Object data) {
    - if(node.jjtGetNumChildren() >= 2) {
    - if(node.jjtGetChild(0) instanceof ASTValuePrefix && node.jjtGetChild(1) instanceof ASTValueSuffix) {
    - ASTValuePrefix prefix = (ASTValuePrefix) node.jjtGetChild(0);
    - ASTValueSuffix suffix = (ASTValueSuffix) node.jjtGetChild(1);
    - if(prefix.firstToken.image.equals("pageContext") && suffix.getPropertyNameToken().image.equals("request")) {
    - append("((HTTPServletRequest)");
    - }
    - }
    - }
    - return node.childrenAccept(this, data);
    - }
    -
    -
    - /**
    - * Value Prefix
    - */
    - public Object visit(ASTValuePrefix node, Object data) {
    - // this is a raw identifier. May sure it's an implicit object.
    - // This is the primary plae where modification is needed to
    - // support JSF backing beans.
    - if(null == node.children) {
    - if(isCompletingObject(node.firstToken.image)) {
    - append(node.firstToken);
    - } else {
    - fCanGenerate = false;
    - }
    - return(null);
    - }
    - return node.childrenAccept(this, data);
    - }
    -
    -
    - /**
    - * Function for testing implicit objects.
    - *
    - * @param image
    - * @return
    - */
    - private boolean isCompletingObject(String image) {
    - Boolean value = (Boolean)fJSPImplicitObjectMap.get(image);
    - return null == value ? false : value.booleanValue();
    - }
    -
    - /**
    - * Value suffix
    - */
    - public Object visit(ASTValueSuffix node, Object data) {
    - if(JSPELParserConstants.LBRACKET == node.firstToken.kind) {
    - fCanGenerate = false;
    - } else if(null != node.getPropertyNameToken()) {
    - Token suffix = node.getPropertyNameToken();
    - String ucaseName = suffix.image.substring(0, 1).toUpperCase() + suffix.image.substring(1, suffix.image.length());
    -
    - // This is a special case. Note that the type system, no matter how much type information
    - // we would have wouldn't give us the correct result. We're looking for "pageContext.request"
    - // here and will add a downcast to (HTTPServletRequest)
    -
    - append(node.firstToken);
    - append("get" + ucaseName + "()", suffix); //$NON-NLS-1$ //$NON-NLS-2$
    -
    - SimpleNode parent = (SimpleNode) node.jjtGetParent();
    - if(suffix.image.equals("request") && parent instanceof ASTValue && //$NON-NLS-1$
    - parent.jjtGetParent() instanceof ASTUnaryExpression && parent.firstToken.image.equals("pageContext")) { //$NON-NLS-1$
    - append(")");
    - }
    -
    -
    - } else {
    - append(node.firstToken);
    - }
    - return null;
    - }
    -
    -
    - /**
    - * Function invocation
    - */
    - public Object visit(ASTFunctionInvocation node, Object data) {
    - String functionTranslation = genFunction(node.getFullFunctionName());
    - if(null != functionTranslation)
    - {
    - append(functionTranslation + "(", node.getFirstToken()); //$NON-NLS-1$
    - for(int i = 0; i < node.children.length; i++) {
    - node.children[i].jjtAccept(this, data);
    - if( node.children.length - i > 1){
    - append(","); //$NON-NLS-1$
    - }
    - }
    - append(")"); //$NON-NLS-1$
    - }
    - return null;
    - }
    -
    - /**
    - * Literal
    - */
    - public Object visit(ASTLiteral node, Object data) {
    - // TODO any further translation needed?
    - append(node.firstToken);
    - return null;
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/FindFunctionInvocationVisitor.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/FindFunctionInvocationVisitor.java
    deleted file mode 100644
    index e05c5622de..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/FindFunctionInvocationVisitor.java
    +++ /dev/null
    @@ -1,100 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public class FindFunctionInvocationVisitor implements JSPELParserVisitor {
    - protected int fCursorPosition;
    -
    - public FindFunctionInvocationVisitor(int cursorPosition)
    - {
    - fCursorPosition = cursorPosition;
    - }
    -
    - protected boolean isEnclosing(SimpleNode node) {
    - return(node.firstToken.beginColumn < fCursorPosition && node.lastToken.endColumn >= fCursorPosition);
    - }
    -
    -
    - protected Object visitEnclosingChild(SimpleNode node, Object data) {
    - if(null == node.children)
    - return null;
    -
    - for(int i = 0; i < node.children.length; i++) {
    - if(isEnclosing(node))
    - return node.children[i].jjtAccept(this, data);
    - }
    - return null;
    - }
    -
    - public Object visit(SimpleNode node, Object data) {
    - return visitEnclosingChild(node, data);
    - }
    -
    - public Object visit(ASTExpression node, Object data) {
    - return visitEnclosingChild(node, data);
    - }
    -
    - public Object visit(ASTOrExpression node, Object data) {
    - return visitEnclosingChild(node, data);
    - }
    -
    - public Object visit(ASTAndExpression node, Object data) {
    - return visitEnclosingChild(node, data);
    - }
    -
    - public Object visit(ASTEqualityExpression node, Object data) {
    - return visitEnclosingChild(node, data);
    - }
    -
    - public Object visit(ASTRelationalExpression node, Object data) {
    - return visitEnclosingChild(node, data);
    - }
    -
    - public Object visit(ASTAddExpression node, Object data) {
    - return visitEnclosingChild(node, data);
    - }
    -
    - public Object visit(ASTMultiplyExpression node, Object data) {
    - return visitEnclosingChild(node, data);
    - }
    -
    - public Object visit(ASTChoiceExpression node, Object data) {
    - return visitEnclosingChild(node, data);
    - }
    -
    - public Object visit(ASTUnaryExpression node, Object data) {
    - return visitEnclosingChild(node, data);
    - }
    -
    - public Object visit(ASTValue node, Object data) {
    - return visitEnclosingChild(node, data);
    - }
    -
    - public Object visit(ASTValuePrefix node, Object data) {
    - return visitEnclosingChild(node, data);
    - }
    -
    - public Object visit(ASTValueSuffix node, Object data) {
    - return visitEnclosingChild(node, data);
    - }
    -
    - public Object visit(ASTFunctionInvocation node, Object data) {
    - Object nestedInvocation = visitEnclosingChild(node, data);
    - if(null != nestedInvocation)
    - return nestedInvocation;
    - return node;
    - }
    -
    - public Object visit(ASTLiteral node, Object data) {
    - return visitEnclosingChild(node, data);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JJTJSPELParserState.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JJTJSPELParserState.java
    deleted file mode 100644
    index 6e7436c2c9..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JJTJSPELParserState.java
    +++ /dev/null
    @@ -1,134 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JJTree: Do not edit this line. JJTJSPELParserState.java */
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -class JJTJSPELParserState {
    - private java.util.Stack nodes;
    - private java.util.Stack marks;
    -
    - private int sp; // number of nodes on stack
    - private int mk; // current mark
    - private boolean node_created;
    -
    - JJTJSPELParserState() {
    - nodes = new java.util.Stack();
    - marks = new java.util.Stack();
    - sp = 0;
    - mk = 0;
    - }
    -
    - /* Determines whether the current node was actually closed and
    - pushed. This should only be called in the final user action of a
    - node scope. */
    - boolean nodeCreated() {
    - return node_created;
    - }
    -
    - /* Call this to reinitialize the node stack. It is called
    - automatically by the parser's ReInit() method. */
    - void reset() {
    - nodes.removeAllElements();
    - marks.removeAllElements();
    - sp = 0;
    - mk = 0;
    - }
    -
    - /* Returns the root node of the AST. It only makes sense to call
    - this after a successful parse. */
    - Node rootNode() {
    - return (Node)nodes.elementAt(0);
    - }
    -
    - /* Pushes a node on to the stack. */
    - void pushNode(Node n) {
    - nodes.push(n);
    - ++sp;
    - }
    -
    - /* Returns the node on the top of the stack, and remove it from the
    - stack. */
    - Node popNode() {
    - if (--sp < mk) {
    - mk = ((Integer)marks.pop()).intValue();
    - }
    - return (Node)nodes.pop();
    - }
    -
    - /* Returns the node currently on the top of the stack. */
    - Node peekNode() {
    - return (Node)nodes.peek();
    - }
    -
    - /* Returns the number of children on the stack in the current node
    - scope. */
    - int nodeArity() {
    - return sp - mk;
    - }
    -
    -
    - void clearNodeScope(Node n) {
    - while (sp > mk) {
    - popNode();
    - }
    - mk = ((Integer)marks.pop()).intValue();
    - }
    -
    -
    - void openNodeScope(Node n) {
    - marks.push(new Integer(mk));
    - mk = sp;
    - n.jjtOpen();
    - }
    -
    -
    - /* A definite node is constructed from a specified number of
    - children. That number of nodes are popped from the stack and
    - made the children of the definite node. Then the definite node
    - is pushed on to the stack. */
    - void closeNodeScope(Node n, int num) {
    - mk = ((Integer)marks.pop()).intValue();
    - while (num-- > 0) {
    - Node c = popNode();
    - c.jjtSetParent(n);
    - n.jjtAddChild(c, num);
    - }
    - n.jjtClose();
    - pushNode(n);
    - node_created = true;
    - }
    -
    -
    - /* A conditional node is constructed if its condition is true. All
    - the nodes that have been pushed since the node was opened are
    - made children of the the conditional node, which is then pushed
    - on to the stack. If the condition is false the node is not
    - constructed and they are left on the stack. */
    - void closeNodeScope(Node n, boolean condition) {
    - if (condition) {
    - int a = nodeArity();
    - mk = ((Integer)marks.pop()).intValue();
    - while (a-- > 0) {
    - Node c = popNode();
    - c.jjtSetParent(n);
    - n.jjtAddChild(c, a);
    - }
    - n.jjtClose();
    - pushNode(n);
    - node_created = true;
    - } else {
    - mk = ((Integer)marks.pop()).intValue();
    - node_created = false;
    - }
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPEL.jj b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPEL.jj
    deleted file mode 100644
    index 0e383b4047..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPEL.jj
    +++ /dev/null
    @@ -1,675 +0,0 @@
    -*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/*@bgen(jjtree) Generated By:JJTree: Do not edit this line. JSPEL.jj */
    -/*@egen*//* I know that haing some of these options on one line is rude but
    - * if we don't do that the line number reported from javacc are off
    - * which, trust me, is far more annoying. --tcarroll@bea.com
    - */
    -options {
    - JAVA_UNICODE_ESCAPE = false;
    - UNICODE_INPUT = true;
    - STATIC = false;
    - OPTIMIZE_TOKEN_MANAGER = true;
    -}
    -
    -PARSER_BEGIN(JSPELParser)
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public class JSPELParser/*@bgen(jjtree)*/implements JSPELParserTreeConstants/*@egen*/ {/*@bgen(jjtree)*/
    - protected JJTJSPELParserState jjtree = new JJTJSPELParserState();
    -
    -/*@egen*/
    -
    - void jjtreeOpenNodeScope(Node n)
    - {
    - ((SimpleNode)n).setFirstToken(getToken(1));
    - }
    -
    - void jjtreeCloseNodeScope(Node n)
    - {
    - ((SimpleNode)n).setLastToken(getToken(0));
    - }
    -
    - public static JSPELParser createParser(java.lang.String input) {
    - java.io.StringReader reader = new java.io.StringReader(input);
    - return new JSPELParser(reader);
    - }
    -
    - public void ReInit(java.lang.String input) {
    - java.io.StringReader reader = new java.io.StringReader(input);
    - ReInit(reader);
    - }
    -
    -}
    -
    -PARSER_END(JSPELParser)
    -
    -SKIP :
    -{
    - " "
    -| "\t"
    -| "\n"
    -| "\r"
    -}
    -
    -TOKEN :
    -{
    -/* Literals */
    - < INTEGER_LITERAL: ["0"-"9"] (["0"-"9"])* >
    -|
    - < FLOATING_POINT_LITERAL:
    - (["0"-"9"])+ "." (["0"-"9"])* (<EXPONENT>)?
    - | "." (["0"-"9"])+ (<EXPONENT>)?
    - | (["0"-"9"])+ <EXPONENT>
    - >
    -|
    - < #EXPONENT: ["e","E"] (["+","-"])? (["0"-"9"])+ >
    -|
    - < STRING_LITERAL:
    - ("\"" ((~["\"","\\"]) | ("\\" ( ["\\","\""] )))* "\"") |
    - ("\'" ((~["\'","\\"]) | ("\\" ( ["\\","\'"] )))* "\'")
    - >
    -|
    - < BADLY_ESCAPED_STRING_LITERAL:
    - ("\"" (~["\"","\\"])* ("\\" ( ~["\\","\""] ))) |
    - ("\'" (~["\'","\\"])* ("\\" ( ~["\\","\'"] )))
    - >
    -
    -/* Reserved Words and Symbols */
    -| < TRUE: "true" >
    -| < FALSE: "false" >
    -| < NULL: "null" >
    -| < DOT: "." >
    -| < GT1: ">" >
    -| < GT2: "gt" >
    -| < LT1: "<" >
    -| < LT2: "lt" >
    -| < EQ1: "==" >
    -| < EQ2: "eq" >
    -| < LE1: "<=" >
    -| < LE2: "le" >
    -| < GE1: ">=" >
    -| < GE2: "ge" >
    -| < NEQ1: "!=" >
    -| < NEQ2: "ne" >
    -| < LPAREN: "(" >
    -| < RPAREN: ")" >
    -| < COMMA: "," >
    -| < COLON: ":" >
    -| < LBRACKET: "[" >
    -| < RBRACKET: "]" >
    -| < PLUS: "+" >
    -| < MINUS: "-" >
    -| < MULTIPLY: "*" >
    -| < DIVIDE1: "/" >
    -| < DIVIDE2: "div" >
    -| < MODULUS1: "%" >
    -| < MODULUS2: "mod" >
    -| < NOT1: "not" >
    -| < NOT2: "!" >
    -| < AND1: "and" >
    -| < AND2: "&&" >
    -| < OR1: "or" >
    -| < OR2: "||" >
    -| < EMPTY: "empty" >
    -| < COND: "?" >
    -
    -/* Identifiers */
    -
    -| < IDENTIFIER: (<LETTER>|<IMPL_OBJ_START>) (<LETTER>|<DIGIT>)* >
    -| < #IMPL_OBJ_START: "#" >
    -|
    - < #LETTER:
    - [
    - "$",
    - "A"-"Z",
    - "_",
    - "a"-"z",
    - "\u00c0"-"\u00d6",
    - "\u00d8"-"\u00f6",
    - "\u00f8"-"\u00ff",
    - "\u0100"-"\u1fff",
    - "\u3040"-"\u318f",
    - "\u3300"-"\u337f",
    - "\u3400"-"\u3d2d",
    - "\u4e00"-"\u9fff",
    - "\uf900"-"\ufaff"
    - ]
    - >
    -|
    - < #DIGIT:
    - [
    - "0"-"9",
    - "\u0660"-"\u0669",
    - "\u06f0"-"\u06f9",
    - "\u0966"-"\u096f",
    - "\u09e6"-"\u09ef",
    - "\u0a66"-"\u0a6f",
    - "\u0ae6"-"\u0aef",
    - "\u0b66"-"\u0b6f",
    - "\u0be7"-"\u0bef",
    - "\u0c66"-"\u0c6f",
    - "\u0ce6"-"\u0cef",
    - "\u0d66"-"\u0d6f",
    - "\u0e50"-"\u0e59",
    - "\u0ed0"-"\u0ed9",
    - "\u1040"-"\u1049"
    - ]
    - >
    -}
    -
    -ASTExpression Expression() : {/*@bgen(jjtree) Expression */
    - ASTExpression jjtn000 = new ASTExpression(JJTEXPRESSION);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);
    -/*@egen*/}
    -{/*@bgen(jjtree) Expression */
    - try {
    -/*@egen*/
    - (LOOKAHEAD("?") ChoiceExpression() | OrExpression())/*@bgen(jjtree)*/
    - {
    - jjtree.closeNodeScope(jjtn000, true);
    - jjtc000 = false;
    - jjtreeCloseNodeScope(jjtn000);
    - }
    -/*@egen*/ { return jjtn000; }/*@bgen(jjtree)*/
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - throw (RuntimeException)jjte000;
    - }
    - if (jjte000 instanceof ParseException) {
    - throw (ParseException)jjte000;
    - }
    - throw (Error)jjte000;
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, true);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    -/*@egen*/
    -}
    -
    -void OrExpression() :
    -{/*@bgen(jjtree) #OrExpression(> 1) */
    - ASTOrExpression jjtn000 = new ASTOrExpression(JJTOREXPRESSION);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);
    -/*@egen*/
    - Token t;
    -}
    -{/*@bgen(jjtree) #OrExpression(> 1) */
    - try {
    -/*@egen*/
    - AndExpression() ((t = <OR1> | t = <OR2>) { jjtn000.addOperatorToken(t); }
    - AndExpression())*/*@bgen(jjtree)*/
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - throw (RuntimeException)jjte000;
    - }
    - if (jjte000 instanceof ParseException) {
    - throw (ParseException)jjte000;
    - }
    - throw (Error)jjte000;
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    -/*@egen*/
    -}
    -
    -void AndExpression() :
    -{/*@bgen(jjtree) #AndExpression(> 1) */
    - ASTAndExpression jjtn000 = new ASTAndExpression(JJTANDEXPRESSION);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);
    -/*@egen*/
    - Token t;
    -}
    -{/*@bgen(jjtree) #AndExpression(> 1) */
    - try {
    -/*@egen*/
    - EqualityExpression() ((t = <AND1> | t = <AND2>) { jjtn000.addOperatorToken(t); }
    - EqualityExpression())*/*@bgen(jjtree)*/
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - throw (RuntimeException)jjte000;
    - }
    - if (jjte000 instanceof ParseException) {
    - throw (ParseException)jjte000;
    - }
    - throw (Error)jjte000;
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    -/*@egen*/
    -}
    -
    -void EqualityExpression() :
    -{/*@bgen(jjtree) #EqualityExpression(> 1) */
    - ASTEqualityExpression jjtn000 = new ASTEqualityExpression(JJTEQUALITYEXPRESSION);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);
    -/*@egen*/
    - Token t;
    -}
    -{/*@bgen(jjtree) #EqualityExpression(> 1) */
    - try {
    -/*@egen*/
    - RelationalExpression()
    - ((t = <EQ1> | t = <EQ2> | t = <NEQ1> | t = <NEQ2>) { jjtn000.addOperatorToken(t); }
    - RelationalExpression())*/*@bgen(jjtree)*/
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - throw (RuntimeException)jjte000;
    - }
    - if (jjte000 instanceof ParseException) {
    - throw (ParseException)jjte000;
    - }
    - throw (Error)jjte000;
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    -/*@egen*/
    -}
    -
    -void RelationalExpression() :
    -{/*@bgen(jjtree) #RelationalExpression(> 1) */
    - ASTRelationalExpression jjtn000 = new ASTRelationalExpression(JJTRELATIONALEXPRESSION);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);
    -/*@egen*/
    - Token t;
    -}
    -{/*@bgen(jjtree) #RelationalExpression(> 1) */
    - try {
    -/*@egen*/
    - AddExpression()
    - (
    - (t = <LT1> | t = <LT2> | t = <GT1> | t = <GT2> | t = <GE1> | t = <GE2> | t = <LE1> | t = <LE2>) { jjtn000.addOperatorToken(t); }
    - AddExpression()
    - )*/*@bgen(jjtree)*/
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - throw (RuntimeException)jjte000;
    - }
    - if (jjte000 instanceof ParseException) {
    - throw (ParseException)jjte000;
    - }
    - throw (Error)jjte000;
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    -/*@egen*/
    -}
    -
    -void AddExpression() :
    -{/*@bgen(jjtree) #AddExpression(> 1) */
    - ASTAddExpression jjtn000 = new ASTAddExpression(JJTADDEXPRESSION);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);
    -/*@egen*/
    - Token t;
    -}
    -{/*@bgen(jjtree) #AddExpression(> 1) */
    - try {
    -/*@egen*/
    - MultiplyExpression() ((t = <PLUS> | t = <MINUS>) { jjtn000.addOperatorToken(t); }
    - MultiplyExpression())*/*@bgen(jjtree)*/
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - throw (RuntimeException)jjte000;
    - }
    - if (jjte000 instanceof ParseException) {
    - throw (ParseException)jjte000;
    - }
    - throw (Error)jjte000;
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    -/*@egen*/
    -}
    -
    -void MultiplyExpression() :
    -{/*@bgen(jjtree) #MultiplyExpression(> 1) */
    - ASTMultiplyExpression jjtn000 = new ASTMultiplyExpression(JJTMULTIPLYEXPRESSION);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);
    -/*@egen*/
    - Token t;
    -}
    -{/*@bgen(jjtree) #MultiplyExpression(> 1) */
    - try {
    -/*@egen*/
    - UnaryExpression() (
    - ( t = <MULTIPLY> | t = <DIVIDE1> | t = <DIVIDE2> | t = <MODULUS1> | t = <MODULUS2>) { jjtn000.addOperatorToken(t); }
    - UnaryExpression()
    - )*/*@bgen(jjtree)*/
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - throw (RuntimeException)jjte000;
    - }
    - if (jjte000 instanceof ParseException) {
    - throw (ParseException)jjte000;
    - }
    - throw (Error)jjte000;
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    -/*@egen*/
    -}
    -
    -void ChoiceExpression() : {/*@bgen(jjtree) ChoiceExpression */
    - ASTChoiceExpression jjtn000 = new ASTChoiceExpression(JJTCHOICEEXPRESSION);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);
    -/*@egen*/}
    -{/*@bgen(jjtree) ChoiceExpression */
    - try {
    -/*@egen*/
    - OrExpression() <COND> OrExpression() <COLON> OrExpression()/*@bgen(jjtree)*/
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - throw (RuntimeException)jjte000;
    - }
    - if (jjte000 instanceof ParseException) {
    - throw (ParseException)jjte000;
    - }
    - throw (Error)jjte000;
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, true);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    -/*@egen*/
    -}
    -
    -void UnaryExpression() : {/*@bgen(jjtree) UnaryExpression */
    - ASTUnaryExpression jjtn000 = new ASTUnaryExpression(JJTUNARYEXPRESSION);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);
    -/*@egen*/}
    -{/*@bgen(jjtree) UnaryExpression */
    - try {
    -/*@egen*/
    - ((<NOT1> | <NOT2> | <MINUS> | <EMPTY>) UnaryExpression())
    - | Value()/*@bgen(jjtree)*/
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - throw (RuntimeException)jjte000;
    - }
    - if (jjte000 instanceof ParseException) {
    - throw (ParseException)jjte000;
    - }
    - throw (Error)jjte000;
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, true);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    -/*@egen*/
    -
    -}
    -
    -void Value() : {/*@bgen(jjtree) Value */
    - ASTValue jjtn000 = new ASTValue(JJTVALUE);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);
    -/*@egen*/}
    -{/*@bgen(jjtree) Value */
    - try {
    -/*@egen*/
    - ValuePrefix() (ValueSuffix())*/*@bgen(jjtree)*/
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - throw (RuntimeException)jjte000;
    - }
    - if (jjte000 instanceof ParseException) {
    - throw (ParseException)jjte000;
    - }
    - throw (Error)jjte000;
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, true);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    -/*@egen*/
    -}
    -
    -void ValuePrefix() : {/*@bgen(jjtree) ValuePrefix */
    - ASTValuePrefix jjtn000 = new ASTValuePrefix(JJTVALUEPREFIX);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);
    -/*@egen*/}
    -{/*@bgen(jjtree) ValuePrefix */
    - try {
    -/*@egen*/
    - Literal() | (<LPAREN> Expression() <RPAREN>) | LOOKAHEAD(3) FunctionInvocation() | <IDENTIFIER>/*@bgen(jjtree)*/
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - throw (RuntimeException)jjte000;
    - }
    - if (jjte000 instanceof ParseException) {
    - throw (ParseException)jjte000;
    - }
    - throw (Error)jjte000;
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, true);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    -/*@egen*/
    -}
    -
    -void ValueSuffix() :
    -{/*@bgen(jjtree) ValueSuffix */
    - ASTValueSuffix jjtn000 = new ASTValueSuffix(JJTVALUESUFFIX);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);
    -/*@egen*/
    - Token t = null;
    -}
    -{/*@bgen(jjtree) ValueSuffix */
    - try {
    -/*@egen*/
    - (<DOT> (t = <IDENTIFIER>)?)/*@bgen(jjtree)*/
    - {
    - jjtree.closeNodeScope(jjtn000, true);
    - jjtc000 = false;
    - jjtreeCloseNodeScope(jjtn000);
    - }
    -/*@egen*/ { jjtn000.setPropertyNameToken(t); }
    - | (<LBRACKET> Expression() <RBRACKET>)/*@bgen(jjtree)*/
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - throw (RuntimeException)jjte000;
    - }
    - if (jjte000 instanceof ParseException) {
    - throw (ParseException)jjte000;
    - }
    - throw (Error)jjte000;
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, true);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    -/*@egen*/
    -}
    -
    -void FunctionInvocation() :
    -{/*@bgen(jjtree) FunctionInvocation */
    - ASTFunctionInvocation jjtn000 = new ASTFunctionInvocation(JJTFUNCTIONINVOCATION);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);
    -/*@egen*/
    - Token prefix = null, name = null;
    -}
    -{/*@bgen(jjtree) FunctionInvocation */
    - try {
    -/*@egen*/
    - (prefix = <IDENTIFIER> <COLON>) { jjtn000.setFullFunctionName(prefix.image + ":"); }
    - (name = <IDENTIFIER>)? {
    - if(null != prefix && null != name)
    - jjtn000.setFullFunctionName(prefix.image + ":" + (null == name ? "" : name.image));
    - else if(null != name)
    - jjtn000.setFullFunctionName(name.image);
    - }
    - (<LPAREN> Expression() (<COMMA> Expression())* try { (<RPAREN>) } catch (Exception e) {} )?/*@bgen(jjtree)*/
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - throw (RuntimeException)jjte000;
    - }
    - if (jjte000 instanceof ParseException) {
    - throw (ParseException)jjte000;
    - }
    - throw (Error)jjte000;
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, true);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    -/*@egen*/
    -}
    -
    -void Literal() : {/*@bgen(jjtree) Literal */
    - ASTLiteral jjtn000 = new ASTLiteral(JJTLITERAL);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);
    -/*@egen*/}
    -{/*@bgen(jjtree) Literal */
    - try {
    -/*@egen*/
    - <TRUE> | <FALSE> | <INTEGER_LITERAL> | <FLOATING_POINT_LITERAL> | <STRING_LITERAL> | <NULL>/*@bgen(jjtree)*/
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, true);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    -/*@egen*/
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPEL.jjt b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPEL.jjt
    deleted file mode 100644
    index 9fd40d9242..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPEL.jjt
    +++ /dev/null
    @@ -1,281 +0,0 @@
    -*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* I know that having some of these options on one line is rude but
    - * if we don't do that the line number reported from javacc are off
    - * which, trust me, is far more annoying. --tcarroll@bea.com
    - */
    -options {
    - JAVA_UNICODE_ESCAPE = false;
    - UNICODE_INPUT = true;
    - STATIC = false;
    - OPTIMIZE_TOKEN_MANAGER = true; MULTI = true; VISITOR = true; NODE_PACKAGE = "org.eclipse.jst.jsp.core.internal.java.jspel"; NODE_SCOPE_HOOK = true;
    -}
    -
    -PARSER_BEGIN(JSPELParser)
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public class JSPELParser {
    -
    - void jjtreeOpenNodeScope(Node n)
    - {
    - ((SimpleNode)n).setFirstToken(getToken(1));
    - }
    -
    - void jjtreeCloseNodeScope(Node n)
    - {
    - ((SimpleNode)n).setLastToken(getToken(0));
    - }
    -
    - public static JSPELParser createParser(java.lang.String input) {
    - java.io.StringReader reader = new java.io.StringReader(input);
    - return new JSPELParser(reader);
    - }
    -
    - public void ReInit(java.lang.String input) {
    - java.io.StringReader reader = new java.io.StringReader(input);
    - ReInit(reader);
    - }
    -
    -}
    -
    -PARSER_END(JSPELParser)
    -
    -SKIP :
    -{
    - " "
    -| "\t"
    -| "\n"
    -| "\r"
    -}
    -
    -TOKEN :
    -{
    -/* Literals */
    - < INTEGER_LITERAL: ["0"-"9"] (["0"-"9"])* >
    -|
    - < FLOATING_POINT_LITERAL:
    - (["0"-"9"])+ "." (["0"-"9"])* (<EXPONENT>)?
    - | "." (["0"-"9"])+ (<EXPONENT>)?
    - | (["0"-"9"])+ <EXPONENT>
    - >
    -|
    - < #EXPONENT: ["e","E"] (["+","-"])? (["0"-"9"])+ >
    -|
    - < STRING_LITERAL:
    - ("\"" ((~["\"","\\"]) | ("\\" ( ["\\","\""] )))* "\"") |
    - ("\'" ((~["\'","\\"]) | ("\\" ( ["\\","\'"] )))* "\'")
    - >
    -|
    - < BADLY_ESCAPED_STRING_LITERAL:
    - ("\"" (~["\"","\\"])* ("\\" ( ~["\\","\""] ))) |
    - ("\'" (~["\'","\\"])* ("\\" ( ~["\\","\'"] )))
    - >
    -
    -/* Reserved Words and Symbols */
    -| < TRUE: "true" >
    -| < FALSE: "false" >
    -| < NULL: "null" >
    -| < DOT: "." >
    -| < GT1: ">" >
    -| < GT2: "gt" >
    -| < LT1: "<" >
    -| < LT2: "lt" >
    -| < EQ1: "==" >
    -| < EQ2: "eq" >
    -| < LE1: "<=" >
    -| < LE2: "le" >
    -| < GE1: ">=" >
    -| < GE2: "ge" >
    -| < NEQ1: "!=" >
    -| < NEQ2: "ne" >
    -| < LPAREN: "(" >
    -| < RPAREN: ")" >
    -| < COMMA: "," >
    -| < COLON: ":" >
    -| < LBRACKET: "[" >
    -| < RBRACKET: "]" >
    -| < PLUS: "+" >
    -| < MINUS: "-" >
    -| < MULTIPLY: "*" >
    -| < DIVIDE1: "/" >
    -| < DIVIDE2: "div" >
    -| < MODULUS1: "%" >
    -| < MODULUS2: "mod" >
    -| < NOT1: "not" >
    -| < NOT2: "!" >
    -| < AND1: "and" >
    -| < AND2: "&&" >
    -| < OR1: "or" >
    -| < OR2: "||" >
    -| < EMPTY: "empty" >
    -| < COND: "?" >
    -
    -/* Identifiers */
    -
    -| < IDENTIFIER: (<LETTER>|<IMPL_OBJ_START>) (<LETTER>|<DIGIT>)* >
    -| < #IMPL_OBJ_START: "#" >
    -|
    - < #LETTER:
    - [
    - "\u0024",
    - "\u0041"-"\u005a",
    - "\u005f",
    - "\u0061"-"\u007a",
    - "\u00c0"-"\u00d6",
    - "\u00d8"-"\u00f6",
    - "\u00f8"-"\u00ff",
    - "\u0100"-"\u1fff",
    - "\u3040"-"\u318f",
    - "\u3300"-"\u337f",
    - "\u3400"-"\u3d2d",
    - "\u4e00"-"\u9fff",
    - "\uf900"-"\ufaff"
    - ]
    - >
    -|
    - < #DIGIT:
    - [
    - "\u0030"-"\u0039",
    - "\u0660"-"\u0669",
    - "\u06f0"-"\u06f9",
    - "\u0966"-"\u096f",
    - "\u09e6"-"\u09ef",
    - "\u0a66"-"\u0a6f",
    - "\u0ae6"-"\u0aef",
    - "\u0b66"-"\u0b6f",
    - "\u0be7"-"\u0bef",
    - "\u0c66"-"\u0c6f",
    - "\u0ce6"-"\u0cef",
    - "\u0d66"-"\u0d6f",
    - "\u0e50"-"\u0e59",
    - "\u0ed0"-"\u0ed9",
    - "\u1040"-"\u1049"
    - ]
    - >
    -}
    -
    -ASTExpression Expression() : {}
    -{
    - (LOOKAHEAD("?") ChoiceExpression() | OrExpression()) { return jjtThis; }
    -}
    -
    -void OrExpression() #OrExpression(>1) :
    -{
    - Token t;
    -}
    -{
    - AndExpression() ((t = <OR1> | t = <OR2>) { jjtThis.addOperatorToken(t); }
    - AndExpression())*
    -}
    -
    -void AndExpression() #AndExpression(>1) :
    -{
    - Token t;
    -}
    -{
    - EqualityExpression() ((t = <AND1> | t = <AND2>) { jjtThis.addOperatorToken(t); }
    - EqualityExpression())*
    -}
    -
    -void EqualityExpression() #EqualityExpression(>1) :
    -{
    - Token t;
    -}
    -{
    - RelationalExpression()
    - ((t = <EQ1> | t = <EQ2> | t = <NEQ1> | t = <NEQ2>) { jjtThis.addOperatorToken(t); }
    - RelationalExpression())*
    -}
    -
    -void RelationalExpression() #RelationalExpression(>1) :
    -{
    - Token t;
    -}
    -{
    - AddExpression()
    - (
    - (t = <LT1> | t = <LT2> | t = <GT1> | t = <GT2> | t = <GE1> | t = <GE2> | t = <LE1> | t = <LE2>) { jjtThis.addOperatorToken(t); }
    - AddExpression()
    - )*
    -}
    -
    -void AddExpression() #AddExpression(>1) :
    -{
    - Token t;
    -}
    -{
    - MultiplyExpression() ((t = <PLUS> | t = <MINUS>) { jjtThis.addOperatorToken(t); }
    - MultiplyExpression())*
    -}
    -
    -void MultiplyExpression() #MultiplyExpression(>1) :
    -{
    - Token t;
    -}
    -{
    - UnaryExpression() (
    - ( t = <MULTIPLY> | t = <DIVIDE1> | t = <DIVIDE2> | t = <MODULUS1> | t = <MODULUS2>) { jjtThis.addOperatorToken(t); }
    - UnaryExpression()
    - )*
    -}
    -
    -void ChoiceExpression() : {}
    -{
    - OrExpression() <COND> OrExpression() <COLON> OrExpression()
    -}
    -
    -void UnaryExpression() : {}
    -{
    - ((<NOT1> | <NOT2> | <MINUS> | <EMPTY>) UnaryExpression())
    - | Value()
    -
    -}
    -
    -void Value() : {}
    -{
    - ValuePrefix() (ValueSuffix())*
    -}
    -
    -void ValuePrefix() : {}
    -{
    - Literal() | (<LPAREN> Expression() <RPAREN>) | LOOKAHEAD(3) FunctionInvocation() | <IDENTIFIER>
    -}
    -
    -void ValueSuffix() :
    -{
    - Token t = null;
    -}
    -{
    - (<DOT> (t = <IDENTIFIER>)?) { jjtThis.setPropertyNameToken(t); }
    - | (<LBRACKET> Expression() <RBRACKET>)
    -}
    -
    -void FunctionInvocation() :
    -{
    - Token prefix = null, name = null;
    -}
    -{
    - (prefix = <IDENTIFIER> <COLON>) { jjtThis.setFullFunctionName(prefix.image + ":"); }
    - (name = <IDENTIFIER>)? {
    - if(null != prefix && null != name)
    - jjtThis.setFullFunctionName(prefix.image + ":" + (null == name ? "" : name.image));
    - else if(null != name)
    - jjtThis.setFullFunctionName(name.image);
    - }
    - (<LPAREN> Expression() (<COMMA> Expression())* try { (<RPAREN>) } catch (Exception e) {} )?
    -}
    -
    -void Literal() : {}
    -{
    - <TRUE> | <FALSE> | <INTEGER_LITERAL> | <FLOATING_POINT_LITERAL> | <STRING_LITERAL> | <NULL>
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPELParser.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPELParser.java
    deleted file mode 100644
    index 5c01bae7fd..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPELParser.java
    +++ /dev/null
    @@ -1,1158 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JJTree&JavaCC: Do not edit this line. JSPELParser.java */
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public class JSPELParser/*@bgen(jjtree)*/implements JSPELParserTreeConstants, JSPELParserConstants {/*@bgen(jjtree)*/
    - protected JJTJSPELParserState jjtree = new JJTJSPELParserState();
    - void jjtreeOpenNodeScope(Node n)
    - {
    - ((SimpleNode)n).setFirstToken(getToken(1));
    - }
    -
    - void jjtreeCloseNodeScope(Node n)
    - {
    - ((SimpleNode)n).setLastToken(getToken(0));
    - }
    -
    - public static JSPELParser createParser(java.lang.String input) {
    - java.io.StringReader reader = new java.io.StringReader(input);
    - return new JSPELParser(reader);
    - }
    -
    - public void ReInit(java.lang.String input) {
    - java.io.StringReader reader = new java.io.StringReader(input);
    - ReInit(reader);
    - }
    -
    - final public ASTExpression Expression() throws ParseException {
    - /*@bgen(jjtree) Expression */
    - ASTExpression jjtn000 = new ASTExpression(JJTEXPRESSION);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);
    - try {
    - if (jj_2_1(2147483647)) {
    - ChoiceExpression();
    - } else {
    - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    - case INTEGER_LITERAL:
    - case FLOATING_POINT_LITERAL:
    - case STRING_LITERAL:
    - case TRUE:
    - case FALSE:
    - case NULL:
    - case LPAREN:
    - case MINUS:
    - case NOT1:
    - case NOT2:
    - case EMPTY:
    - case IDENTIFIER:
    - OrExpression();
    - break;
    - default:
    - jj_la1[0] = jj_gen;
    - jj_consume_token(-1);
    - throw new ParseException();
    - }
    - }
    - jjtree.closeNodeScope(jjtn000, true);
    - jjtc000 = false;
    - jjtreeCloseNodeScope(jjtn000);
    - {if (true) return jjtn000;}
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - {if (true) throw (RuntimeException)jjte000;}
    - }
    - if (jjte000 instanceof ParseException) {
    - {if (true) throw (ParseException)jjte000;}
    - }
    - {if (true) throw (Error)jjte000;}
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, true);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    - throw new Error("Missing return statement in function");
    - }
    -
    - final public void OrExpression() throws ParseException {
    - /*@bgen(jjtree) #OrExpression(> 1) */
    - ASTOrExpression jjtn000 = new ASTOrExpression(JJTOREXPRESSION);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);Token t;
    - try {
    - AndExpression();
    - label_1:
    - while (true) {
    - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    - case OR1:
    - case OR2:
    -
    - break;
    - default:
    - jj_la1[1] = jj_gen;
    - break label_1;
    - }
    - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    - case OR1:
    - t = jj_consume_token(OR1);
    - break;
    - case OR2:
    - t = jj_consume_token(OR2);
    - break;
    - default:
    - jj_la1[2] = jj_gen;
    - jj_consume_token(-1);
    - throw new ParseException();
    - }
    - jjtn000.addOperatorToken(t);
    - AndExpression();
    - }
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - {if (true) throw (RuntimeException)jjte000;}
    - }
    - if (jjte000 instanceof ParseException) {
    - {if (true) throw (ParseException)jjte000;}
    - }
    - {if (true) throw (Error)jjte000;}
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    - }
    -
    - final public void AndExpression() throws ParseException {
    - /*@bgen(jjtree) #AndExpression(> 1) */
    - ASTAndExpression jjtn000 = new ASTAndExpression(JJTANDEXPRESSION);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);Token t;
    - try {
    - EqualityExpression();
    - label_2:
    - while (true) {
    - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    - case AND1:
    - case AND2:
    -
    - break;
    - default:
    - jj_la1[3] = jj_gen;
    - break label_2;
    - }
    - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    - case AND1:
    - t = jj_consume_token(AND1);
    - break;
    - case AND2:
    - t = jj_consume_token(AND2);
    - break;
    - default:
    - jj_la1[4] = jj_gen;
    - jj_consume_token(-1);
    - throw new ParseException();
    - }
    - jjtn000.addOperatorToken(t);
    - EqualityExpression();
    - }
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - {if (true) throw (RuntimeException)jjte000;}
    - }
    - if (jjte000 instanceof ParseException) {
    - {if (true) throw (ParseException)jjte000;}
    - }
    - {if (true) throw (Error)jjte000;}
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    - }
    -
    - final public void EqualityExpression() throws ParseException {
    - /*@bgen(jjtree) #EqualityExpression(> 1) */
    - ASTEqualityExpression jjtn000 = new ASTEqualityExpression(JJTEQUALITYEXPRESSION);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);Token t;
    - try {
    - RelationalExpression();
    - label_3:
    - while (true) {
    - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    - case EQ1:
    - case EQ2:
    - case NEQ1:
    - case NEQ2:
    -
    - break;
    - default:
    - jj_la1[5] = jj_gen;
    - break label_3;
    - }
    - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    - case EQ1:
    - t = jj_consume_token(EQ1);
    - break;
    - case EQ2:
    - t = jj_consume_token(EQ2);
    - break;
    - case NEQ1:
    - t = jj_consume_token(NEQ1);
    - break;
    - case NEQ2:
    - t = jj_consume_token(NEQ2);
    - break;
    - default:
    - jj_la1[6] = jj_gen;
    - jj_consume_token(-1);
    - throw new ParseException();
    - }
    - jjtn000.addOperatorToken(t);
    - RelationalExpression();
    - }
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - {if (true) throw (RuntimeException)jjte000;}
    - }
    - if (jjte000 instanceof ParseException) {
    - {if (true) throw (ParseException)jjte000;}
    - }
    - {if (true) throw (Error)jjte000;}
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    - }
    -
    - final public void RelationalExpression() throws ParseException {
    - /*@bgen(jjtree) #RelationalExpression(> 1) */
    - ASTRelationalExpression jjtn000 = new ASTRelationalExpression(JJTRELATIONALEXPRESSION);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);Token t;
    - try {
    - AddExpression();
    - label_4:
    - while (true) {
    - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    - case GT1:
    - case GT2:
    - case LT1:
    - case LT2:
    - case LE1:
    - case LE2:
    - case GE1:
    - case GE2:
    -
    - break;
    - default:
    - jj_la1[7] = jj_gen;
    - break label_4;
    - }
    - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    - case LT1:
    - t = jj_consume_token(LT1);
    - break;
    - case LT2:
    - t = jj_consume_token(LT2);
    - break;
    - case GT1:
    - t = jj_consume_token(GT1);
    - break;
    - case GT2:
    - t = jj_consume_token(GT2);
    - break;
    - case GE1:
    - t = jj_consume_token(GE1);
    - break;
    - case GE2:
    - t = jj_consume_token(GE2);
    - break;
    - case LE1:
    - t = jj_consume_token(LE1);
    - break;
    - case LE2:
    - t = jj_consume_token(LE2);
    - break;
    - default:
    - jj_la1[8] = jj_gen;
    - jj_consume_token(-1);
    - throw new ParseException();
    - }
    - jjtn000.addOperatorToken(t);
    - AddExpression();
    - }
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - {if (true) throw (RuntimeException)jjte000;}
    - }
    - if (jjte000 instanceof ParseException) {
    - {if (true) throw (ParseException)jjte000;}
    - }
    - {if (true) throw (Error)jjte000;}
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    - }
    -
    - final public void AddExpression() throws ParseException {
    - /*@bgen(jjtree) #AddExpression(> 1) */
    - ASTAddExpression jjtn000 = new ASTAddExpression(JJTADDEXPRESSION);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);Token t;
    - try {
    - MultiplyExpression();
    - label_5:
    - while (true) {
    - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    - case PLUS:
    - case MINUS:
    -
    - break;
    - default:
    - jj_la1[9] = jj_gen;
    - break label_5;
    - }
    - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    - case PLUS:
    - t = jj_consume_token(PLUS);
    - break;
    - case MINUS:
    - t = jj_consume_token(MINUS);
    - break;
    - default:
    - jj_la1[10] = jj_gen;
    - jj_consume_token(-1);
    - throw new ParseException();
    - }
    - jjtn000.addOperatorToken(t);
    - MultiplyExpression();
    - }
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - {if (true) throw (RuntimeException)jjte000;}
    - }
    - if (jjte000 instanceof ParseException) {
    - {if (true) throw (ParseException)jjte000;}
    - }
    - {if (true) throw (Error)jjte000;}
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    - }
    -
    - final public void MultiplyExpression() throws ParseException {
    - /*@bgen(jjtree) #MultiplyExpression(> 1) */
    - ASTMultiplyExpression jjtn000 = new ASTMultiplyExpression(JJTMULTIPLYEXPRESSION);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);Token t;
    - try {
    - UnaryExpression();
    - label_6:
    - while (true) {
    - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    - case MULTIPLY:
    - case DIVIDE1:
    - case DIVIDE2:
    - case MODULUS1:
    - case MODULUS2:
    -
    - break;
    - default:
    - jj_la1[11] = jj_gen;
    - break label_6;
    - }
    - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    - case MULTIPLY:
    - t = jj_consume_token(MULTIPLY);
    - break;
    - case DIVIDE1:
    - t = jj_consume_token(DIVIDE1);
    - break;
    - case DIVIDE2:
    - t = jj_consume_token(DIVIDE2);
    - break;
    - case MODULUS1:
    - t = jj_consume_token(MODULUS1);
    - break;
    - case MODULUS2:
    - t = jj_consume_token(MODULUS2);
    - break;
    - default:
    - jj_la1[12] = jj_gen;
    - jj_consume_token(-1);
    - throw new ParseException();
    - }
    - jjtn000.addOperatorToken(t);
    - UnaryExpression();
    - }
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - {if (true) throw (RuntimeException)jjte000;}
    - }
    - if (jjte000 instanceof ParseException) {
    - {if (true) throw (ParseException)jjte000;}
    - }
    - {if (true) throw (Error)jjte000;}
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    - }
    -
    - final public void ChoiceExpression() throws ParseException {
    - /*@bgen(jjtree) ChoiceExpression */
    - ASTChoiceExpression jjtn000 = new ASTChoiceExpression(JJTCHOICEEXPRESSION);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);
    - try {
    - OrExpression();
    - jj_consume_token(COND);
    - OrExpression();
    - jj_consume_token(COLON);
    - OrExpression();
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - {if (true) throw (RuntimeException)jjte000;}
    - }
    - if (jjte000 instanceof ParseException) {
    - {if (true) throw (ParseException)jjte000;}
    - }
    - {if (true) throw (Error)jjte000;}
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, true);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    - }
    -
    - final public void UnaryExpression() throws ParseException {
    - /*@bgen(jjtree) UnaryExpression */
    - ASTUnaryExpression jjtn000 = new ASTUnaryExpression(JJTUNARYEXPRESSION);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);
    - try {
    - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    - case MINUS:
    - case NOT1:
    - case NOT2:
    - case EMPTY:
    - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    - case NOT1:
    - jj_consume_token(NOT1);
    - break;
    - case NOT2:
    - jj_consume_token(NOT2);
    - break;
    - case MINUS:
    - jj_consume_token(MINUS);
    - break;
    - case EMPTY:
    - jj_consume_token(EMPTY);
    - break;
    - default:
    - jj_la1[13] = jj_gen;
    - jj_consume_token(-1);
    - throw new ParseException();
    - }
    - UnaryExpression();
    - break;
    - case INTEGER_LITERAL:
    - case FLOATING_POINT_LITERAL:
    - case STRING_LITERAL:
    - case TRUE:
    - case FALSE:
    - case NULL:
    - case LPAREN:
    - case IDENTIFIER:
    - Value();
    - break;
    - default:
    - jj_la1[14] = jj_gen;
    - jj_consume_token(-1);
    - throw new ParseException();
    - }
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - {if (true) throw (RuntimeException)jjte000;}
    - }
    - if (jjte000 instanceof ParseException) {
    - {if (true) throw (ParseException)jjte000;}
    - }
    - {if (true) throw (Error)jjte000;}
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, true);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    - }
    -
    - final public void Value() throws ParseException {
    - /*@bgen(jjtree) Value */
    - ASTValue jjtn000 = new ASTValue(JJTVALUE);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);
    - try {
    - ValuePrefix();
    - label_7:
    - while (true) {
    - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    - case DOT:
    - case LBRACKET:
    -
    - break;
    - default:
    - jj_la1[15] = jj_gen;
    - break label_7;
    - }
    - ValueSuffix();
    - }
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - {if (true) throw (RuntimeException)jjte000;}
    - }
    - if (jjte000 instanceof ParseException) {
    - {if (true) throw (ParseException)jjte000;}
    - }
    - {if (true) throw (Error)jjte000;}
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, true);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    - }
    -
    - final public void ValuePrefix() throws ParseException {
    - /*@bgen(jjtree) ValuePrefix */
    - ASTValuePrefix jjtn000 = new ASTValuePrefix(JJTVALUEPREFIX);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);
    - try {
    - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    - case INTEGER_LITERAL:
    - case FLOATING_POINT_LITERAL:
    - case STRING_LITERAL:
    - case TRUE:
    - case FALSE:
    - case NULL:
    - Literal();
    - break;
    - case LPAREN:
    - jj_consume_token(LPAREN);
    - Expression();
    - jj_consume_token(RPAREN);
    - break;
    - default:
    - jj_la1[16] = jj_gen;
    - if (jj_2_2(3)) {
    - FunctionInvocation();
    - } else {
    - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    - case IDENTIFIER:
    - jj_consume_token(IDENTIFIER);
    - break;
    - default:
    - jj_la1[17] = jj_gen;
    - jj_consume_token(-1);
    - throw new ParseException();
    - }
    - }
    - }
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - {if (true) throw (RuntimeException)jjte000;}
    - }
    - if (jjte000 instanceof ParseException) {
    - {if (true) throw (ParseException)jjte000;}
    - }
    - {if (true) throw (Error)jjte000;}
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, true);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    - }
    -
    - final public void ValueSuffix() throws ParseException {
    - /*@bgen(jjtree) ValueSuffix */
    - ASTValueSuffix jjtn000 = new ASTValueSuffix(JJTVALUESUFFIX);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);Token t = null;
    - try {
    - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    - case DOT:
    - jj_consume_token(DOT);
    - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    - case IDENTIFIER:
    - t = jj_consume_token(IDENTIFIER);
    - break;
    - default:
    - jj_la1[18] = jj_gen;
    -
    - }
    - jjtree.closeNodeScope(jjtn000, true);
    - jjtc000 = false;
    - jjtreeCloseNodeScope(jjtn000);
    - jjtn000.setPropertyNameToken(t);
    - break;
    - case LBRACKET:
    - jj_consume_token(LBRACKET);
    - Expression();
    - jj_consume_token(RBRACKET);
    - break;
    - default:
    - jj_la1[19] = jj_gen;
    - jj_consume_token(-1);
    - throw new ParseException();
    - }
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - {if (true) throw (RuntimeException)jjte000;}
    - }
    - if (jjte000 instanceof ParseException) {
    - {if (true) throw (ParseException)jjte000;}
    - }
    - {if (true) throw (Error)jjte000;}
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, true);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    - }
    -
    - final public void FunctionInvocation() throws ParseException {
    - /*@bgen(jjtree) FunctionInvocation */
    - ASTFunctionInvocation jjtn000 = new ASTFunctionInvocation(JJTFUNCTIONINVOCATION);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);Token prefix = null, name = null;
    - try {
    - prefix = jj_consume_token(IDENTIFIER);
    - jj_consume_token(COLON);
    - jjtn000.setFullFunctionName(prefix.image + ":");
    - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    - case IDENTIFIER:
    - name = jj_consume_token(IDENTIFIER);
    - break;
    - default:
    - jj_la1[20] = jj_gen;
    -
    - }
    - if(null != prefix && null != name)
    - jjtn000.setFullFunctionName(prefix.image + ":" + (null == name ? "" : name.image));
    - else if(null != name)
    - jjtn000.setFullFunctionName(name.image);
    - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    - case LPAREN:
    - jj_consume_token(LPAREN);
    - Expression();
    - label_8:
    - while (true) {
    - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    - case COMMA:
    -
    - break;
    - default:
    - jj_la1[21] = jj_gen;
    - break label_8;
    - }
    - jj_consume_token(COMMA);
    - Expression();
    - }
    - try {
    - jj_consume_token(RPAREN);
    - } catch (Exception e) {
    -
    - }
    - break;
    - default:
    - jj_la1[22] = jj_gen;
    -
    - }
    - } catch (Throwable jjte000) {
    - if (jjtc000) {
    - jjtree.clearNodeScope(jjtn000);
    - jjtc000 = false;
    - } else {
    - jjtree.popNode();
    - }
    - if (jjte000 instanceof RuntimeException) {
    - {if (true) throw (RuntimeException)jjte000;}
    - }
    - if (jjte000 instanceof ParseException) {
    - {if (true) throw (ParseException)jjte000;}
    - }
    - {if (true) throw (Error)jjte000;}
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, true);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    - }
    -
    - final public void Literal() throws ParseException {
    - /*@bgen(jjtree) Literal */
    - ASTLiteral jjtn000 = new ASTLiteral(JJTLITERAL);
    - boolean jjtc000 = true;
    - jjtree.openNodeScope(jjtn000);
    - jjtreeOpenNodeScope(jjtn000);
    - try {
    - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    - case TRUE:
    - jj_consume_token(TRUE);
    - break;
    - case FALSE:
    - jj_consume_token(FALSE);
    - break;
    - case INTEGER_LITERAL:
    - jj_consume_token(INTEGER_LITERAL);
    - break;
    - case FLOATING_POINT_LITERAL:
    - jj_consume_token(FLOATING_POINT_LITERAL);
    - break;
    - case STRING_LITERAL:
    - jj_consume_token(STRING_LITERAL);
    - break;
    - case NULL:
    - jj_consume_token(NULL);
    - break;
    - default:
    - jj_la1[23] = jj_gen;
    - jj_consume_token(-1);
    - throw new ParseException();
    - }
    - } finally {
    - if (jjtc000) {
    - jjtree.closeNodeScope(jjtn000, true);
    - jjtreeCloseNodeScope(jjtn000);
    - }
    - }
    - }
    -
    - final private boolean jj_2_1(int xla) {
    - jj_la = xla; jj_lastpos = jj_scanpos = token;
    - try { return !jj_3_1(); }
    - catch(LookaheadSuccess ls) { return true; }
    - finally { jj_save(0, xla); }
    - }
    -
    - final private boolean jj_2_2(int xla) {
    - jj_la = xla; jj_lastpos = jj_scanpos = token;
    - try { return !jj_3_2(); }
    - catch(LookaheadSuccess ls) { return true; }
    - finally { jj_save(1, xla); }
    - }
    -
    - final private boolean jj_3R_10() {
    - if (jj_scan_token(LPAREN)) return true;
    - return false;
    - }
    -
    - final private boolean jj_3R_9() {
    - if (jj_scan_token(IDENTIFIER)) return true;
    - if (jj_scan_token(COLON)) return true;
    - Token xsp;
    - xsp = jj_scanpos;
    - if (jj_scan_token(47)) jj_scanpos = xsp;
    - xsp = jj_scanpos;
    - if (jj_3R_10()) jj_scanpos = xsp;
    - return false;
    - }
    -
    - final private boolean jj_3_2() {
    - if (jj_3R_9()) return true;
    - return false;
    - }
    -
    - final private boolean jj_3_1() {
    - if (jj_scan_token(COND)) return true;
    - return false;
    - }
    -
    - public JSPELParserTokenManager token_source;
    - SimpleCharStream jj_input_stream;
    - public Token token, jj_nt;
    - private int jj_ntk;
    - private Token jj_scanpos, jj_lastpos;
    - private int jj_la;
    - public boolean lookingAhead = false;
    -// private boolean jj_semLA;
    - private int jj_gen;
    - final private int[] jj_la1 = new int[24];
    - static private int[] jj_la1_0;
    - static private int[] jj_la1_1;
    - static {
    - jj_la1_0();
    - jj_la1_1();
    - }
    - private static void jj_la1_0() {
    - jj_la1_0 = new int[] {0x4001d60,0x0,0x0,0x0,0x0,0x30c0000,0x30c0000,0xf3c000,0xf3c000,0x0,0x0,0x0,0x0,0x0,0x4001d60,0x40002000,0x4001d60,0x0,0x0,0x40002000,0x0,0x10000000,0x4000000,0x1d60,};
    - }
    - private static void jj_la1_1() {
    - jj_la1_1 = new int[] {0xa182,0x1800,0x1800,0x600,0x600,0x0,0x0,0x0,0x0,0x3,0x3,0x7c,0x7c,0x2182,0xa182,0x0,0x0,0x8000,0x8000,0x0,0x8000,0x0,0x0,0x0,};
    - }
    - final private JJCalls[] jj_2_rtns = new JJCalls[2];
    - private boolean jj_rescan = false;
    - private int jj_gc = 0;
    -
    - public JSPELParser(java.io.InputStream stream) {
    - jj_input_stream = new SimpleCharStream(stream, 1, 1);
    - token_source = new JSPELParserTokenManager(jj_input_stream);
    - token = new Token();
    - jj_ntk = -1;
    - jj_gen = 0;
    - for (int i = 0; i < 24; i++) jj_la1[i] = -1;
    - for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
    - }
    -
    - public void ReInit(java.io.InputStream stream) {
    - jj_input_stream.ReInit(stream, 1, 1);
    - token_source.ReInit(jj_input_stream);
    - token = new Token();
    - jj_ntk = -1;
    - jjtree.reset();
    - jj_gen = 0;
    - for (int i = 0; i < 24; i++) jj_la1[i] = -1;
    - for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
    - }
    -
    - public JSPELParser(java.io.Reader stream) {
    - jj_input_stream = new SimpleCharStream(stream, 1, 1);
    - token_source = new JSPELParserTokenManager(jj_input_stream);
    - token = new Token();
    - jj_ntk = -1;
    - jj_gen = 0;
    - for (int i = 0; i < 24; i++) jj_la1[i] = -1;
    - for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
    - }
    -
    - public void ReInit(java.io.Reader stream) {
    - jj_input_stream.ReInit(stream, 1, 1);
    - token_source.ReInit(jj_input_stream);
    - token = new Token();
    - jj_ntk = -1;
    - jjtree.reset();
    - jj_gen = 0;
    - for (int i = 0; i < 24; i++) jj_la1[i] = -1;
    - for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
    - }
    -
    - public JSPELParser(JSPELParserTokenManager tm) {
    - token_source = tm;
    - token = new Token();
    - jj_ntk = -1;
    - jj_gen = 0;
    - for (int i = 0; i < 24; i++) jj_la1[i] = -1;
    - for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
    - }
    -
    - public void ReInit(JSPELParserTokenManager tm) {
    - token_source = tm;
    - token = new Token();
    - jj_ntk = -1;
    - jjtree.reset();
    - jj_gen = 0;
    - for (int i = 0; i < 24; i++) jj_la1[i] = -1;
    - for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
    - }
    -
    - final private Token jj_consume_token(int kind) throws ParseException {
    - Token oldToken;
    - if ((oldToken = token).next != null) token = token.next;
    - else token = token.next = token_source.getNextToken();
    - jj_ntk = -1;
    - if (token.kind == kind) {
    - jj_gen++;
    - if (++jj_gc > 100) {
    - jj_gc = 0;
    - for (int i = 0; i < jj_2_rtns.length; i++) {
    - JJCalls c = jj_2_rtns[i];
    - while (c != null) {
    - if (c.gen < jj_gen) c.first = null;
    - c = c.next;
    - }
    - }
    - }
    - return token;
    - }
    - token = oldToken;
    - jj_kind = kind;
    - throw generateParseException();
    - }
    -
    - static private final class LookaheadSuccess extends java.lang.Error {
    - private static final long serialVersionUID = 1L;
    - }
    - final private LookaheadSuccess jj_ls = new LookaheadSuccess();
    - final private boolean jj_scan_token(int kind) {
    - if (jj_scanpos == jj_lastpos) {
    - jj_la--;
    - if (jj_scanpos.next == null) {
    - jj_lastpos = jj_scanpos = jj_scanpos.next = token_source.getNextToken();
    - } else {
    - jj_lastpos = jj_scanpos = jj_scanpos.next;
    - }
    - } else {
    - jj_scanpos = jj_scanpos.next;
    - }
    - if (jj_rescan) {
    - int i = 0; Token tok = token;
    - while (tok != null && tok != jj_scanpos) { i++; tok = tok.next; }
    - if (tok != null) jj_add_error_token(kind, i);
    - }
    - if (jj_scanpos.kind != kind) return true;
    - if (jj_la == 0 && jj_scanpos == jj_lastpos) throw jj_ls;
    - return false;
    - }
    -
    - final public Token getNextToken() {
    - if (token.next != null) token = token.next;
    - else token = token.next = token_source.getNextToken();
    - jj_ntk = -1;
    - jj_gen++;
    - return token;
    - }
    -
    - final public Token getToken(int index) {
    - Token t = lookingAhead ? jj_scanpos : token;
    - for (int i = 0; i < index; i++) {
    - if (t.next != null) t = t.next;
    - else t = t.next = token_source.getNextToken();
    - }
    - return t;
    - }
    -
    - final private int jj_ntk() {
    - if ((jj_nt=token.next) == null)
    - return (jj_ntk = (token.next=token_source.getNextToken()).kind);
    - else
    - return (jj_ntk = jj_nt.kind);
    - }
    -
    - private java.util.Vector jj_expentries = new java.util.Vector();
    - private int[] jj_expentry;
    - private int jj_kind = -1;
    - private int[] jj_lasttokens = new int[100];
    - private int jj_endpos;
    -
    - private void jj_add_error_token(int kind, int pos) {
    - if (pos >= 100) return;
    - if (pos == jj_endpos + 1) {
    - jj_lasttokens[jj_endpos++] = kind;
    - } else if (jj_endpos != 0) {
    - jj_expentry = new int[jj_endpos];
    - for (int i = 0; i < jj_endpos; i++) {
    - jj_expentry[i] = jj_lasttokens[i];
    - }
    - boolean exists = false;
    - for (java.util.Enumeration e = jj_expentries.elements(); e.hasMoreElements();) {
    - int[] oldentry = (int[])(e.nextElement());
    - if (oldentry.length == jj_expentry.length) {
    - exists = true;
    - for (int i = 0; i < jj_expentry.length; i++) {
    - if (oldentry[i] != jj_expentry[i]) {
    - exists = false;
    - break;
    - }
    - }
    - if (exists) break;
    - }
    - }
    - if (!exists) jj_expentries.addElement(jj_expentry);
    - if (pos != 0) jj_lasttokens[(jj_endpos = pos) - 1] = kind;
    - }
    - }
    -
    - public ParseException generateParseException() {
    - jj_expentries.removeAllElements();
    - boolean[] la1tokens = new boolean[51];
    - for (int i = 0; i < 51; i++) {
    - la1tokens[i] = false;
    - }
    - if (jj_kind >= 0) {
    - la1tokens[jj_kind] = true;
    - jj_kind = -1;
    - }
    - for (int i = 0; i < 24; i++) {
    - if (jj_la1[i] == jj_gen) {
    - for (int j = 0; j < 32; j++) {
    - if ((jj_la1_0[i] & (1<<j)) != 0) {
    - la1tokens[j] = true;
    - }
    - if ((jj_la1_1[i] & (1<<j)) != 0) {
    - la1tokens[32+j] = true;
    - }
    - }
    - }
    - }
    - for (int i = 0; i < 51; i++) {
    - if (la1tokens[i]) {
    - jj_expentry = new int[1];
    - jj_expentry[0] = i;
    - jj_expentries.addElement(jj_expentry);
    - }
    - }
    - jj_endpos = 0;
    - jj_rescan_token();
    - jj_add_error_token(0, 0);
    - int[][] exptokseq = new int[jj_expentries.size()][];
    - for (int i = 0; i < jj_expentries.size(); i++) {
    - exptokseq[i] = (int[])jj_expentries.elementAt(i);
    - }
    - return new ParseException(token, exptokseq, tokenImage);
    - }
    -
    - final public void enable_tracing() {
    - }
    -
    - final public void disable_tracing() {
    - }
    -
    - final private void jj_rescan_token() {
    - jj_rescan = true;
    - for (int i = 0; i < 2; i++) {
    - JJCalls p = jj_2_rtns[i];
    - do {
    - if (p.gen > jj_gen) {
    - jj_la = p.arg; jj_lastpos = jj_scanpos = p.first;
    - switch (i) {
    - case 0: jj_3_1(); break;
    - case 1: jj_3_2(); break;
    - }
    - }
    - p = p.next;
    - } while (p != null);
    - }
    - jj_rescan = false;
    - }
    -
    - final private void jj_save(int index, int xla) {
    - JJCalls p = jj_2_rtns[index];
    - while (p.gen > jj_gen) {
    - if (p.next == null) { p = p.next = new JJCalls(); break; }
    - p = p.next;
    - }
    - p.gen = jj_gen + xla - jj_la; p.first = token; p.arg = xla;
    - }
    -
    - static final class JJCalls {
    - int gen;
    - Token first;
    - int arg;
    - JJCalls next;
    - }
    -
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPELParserConstants.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPELParserConstants.java
    deleted file mode 100644
    index 1f4e3ad908..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPELParserConstants.java
    +++ /dev/null
    @@ -1,121 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JJTree&JavaCC: Do not edit this line. JSPELParserConstants.java */
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public interface JSPELParserConstants {
    -
    - int EOF = 0;
    - int INTEGER_LITERAL = 5;
    - int FLOATING_POINT_LITERAL = 6;
    - int EXPONENT = 7;
    - int STRING_LITERAL = 8;
    - int BADLY_ESCAPED_STRING_LITERAL = 9;
    - int TRUE = 10;
    - int FALSE = 11;
    - int NULL = 12;
    - int DOT = 13;
    - int GT1 = 14;
    - int GT2 = 15;
    - int LT1 = 16;
    - int LT2 = 17;
    - int EQ1 = 18;
    - int EQ2 = 19;
    - int LE1 = 20;
    - int LE2 = 21;
    - int GE1 = 22;
    - int GE2 = 23;
    - int NEQ1 = 24;
    - int NEQ2 = 25;
    - int LPAREN = 26;
    - int RPAREN = 27;
    - int COMMA = 28;
    - int COLON = 29;
    - int LBRACKET = 30;
    - int RBRACKET = 31;
    - int PLUS = 32;
    - int MINUS = 33;
    - int MULTIPLY = 34;
    - int DIVIDE1 = 35;
    - int DIVIDE2 = 36;
    - int MODULUS1 = 37;
    - int MODULUS2 = 38;
    - int NOT1 = 39;
    - int NOT2 = 40;
    - int AND1 = 41;
    - int AND2 = 42;
    - int OR1 = 43;
    - int OR2 = 44;
    - int EMPTY = 45;
    - int COND = 46;
    - int IDENTIFIER = 47;
    - int IMPL_OBJ_START = 48;
    - int LETTER = 49;
    - int DIGIT = 50;
    -
    - int DEFAULT = 0;
    -
    - String[] tokenImage = {
    - "<EOF>",
    - "\" \"",
    - "\"\\t\"",
    - "\"\\n\"",
    - "\"\\r\"",
    - "<INTEGER_LITERAL>",
    - "<FLOATING_POINT_LITERAL>",
    - "<EXPONENT>",
    - "<STRING_LITERAL>",
    - "<BADLY_ESCAPED_STRING_LITERAL>",
    - "\"true\"",
    - "\"false\"",
    - "\"null\"",
    - "\".\"",
    - "\">\"",
    - "\"gt\"",
    - "\"<\"",
    - "\"lt\"",
    - "\"==\"",
    - "\"eq\"",
    - "\"<=\"",
    - "\"le\"",
    - "\">=\"",
    - "\"ge\"",
    - "\"!=\"",
    - "\"ne\"",
    - "\"(\"",
    - "\")\"",
    - "\",\"",
    - "\":\"",
    - "\"[\"",
    - "\"]\"",
    - "\"+\"",
    - "\"-\"",
    - "\"*\"",
    - "\"/\"",
    - "\"div\"",
    - "\"%\"",
    - "\"mod\"",
    - "\"not\"",
    - "\"!\"",
    - "\"and\"",
    - "\"&&\"",
    - "\"or\"",
    - "\"||\"",
    - "\"empty\"",
    - "\"?\"",
    - "<IDENTIFIER>",
    - "\"#\"",
    - "<LETTER>",
    - "<DIGIT>",
    - };
    -
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPELParserTokenManager.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPELParserTokenManager.java
    deleted file mode 100644
    index 50b04d0823..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPELParserTokenManager.java
    +++ /dev/null
    @@ -1,855 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005, 2006 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JJTree&JavaCC: Do not edit this line. JSPELParserTokenManager.java */
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public class JSPELParserTokenManager implements JSPELParserConstants
    -{
    - public java.io.PrintStream debugStream = System.out;
    - public void setDebugStream(java.io.PrintStream ds) { debugStream = ds; }
    -private final int jjStopStringLiteralDfa_0(int pos, long active0)
    -{
    - switch (pos)
    - {
    - case 0:
    - if ((active0 & 0x2ad002aa9c00L) != 0L)
    - {
    - jjmatchedKind = 47;
    - return 6;
    - }
    - if ((active0 & 0x2000L) != 0L)
    - return 1;
    - return -1;
    - case 1:
    - if ((active0 & 0x22d000001c00L) != 0L)
    - {
    - jjmatchedKind = 47;
    - jjmatchedPos = 1;
    - return 6;
    - }
    - if ((active0 & 0x80002aa8000L) != 0L)
    - return 6;
    - return -1;
    - case 2:
    - if ((active0 & 0x200000001c00L) != 0L)
    - {
    - jjmatchedKind = 47;
    - jjmatchedPos = 2;
    - return 6;
    - }
    - if ((active0 & 0x2d000000000L) != 0L)
    - return 6;
    - return -1;
    - case 3:
    - if ((active0 & 0x200000000800L) != 0L)
    - {
    - jjmatchedKind = 47;
    - jjmatchedPos = 3;
    - return 6;
    - }
    - if ((active0 & 0x1400L) != 0L)
    - return 6;
    - return -1;
    - default :
    - return -1;
    - }
    -}
    -private final int jjStartNfa_0(int pos, long active0)
    -{
    - return jjMoveNfa_0(jjStopStringLiteralDfa_0(pos, active0), pos + 1);
    -}
    -private final int jjStopAtPos(int pos, int kind)
    -{
    - jjmatchedKind = kind;
    - jjmatchedPos = pos;
    - return pos + 1;
    -}
    -private final int jjStartNfaWithStates_0(int pos, int kind, int state)
    -{
    - jjmatchedKind = kind;
    - jjmatchedPos = pos;
    - try { curChar = input_stream.readChar(); }
    - catch(java.io.IOException e) { return pos + 1; }
    - return jjMoveNfa_0(state, pos + 1);
    -}
    -private final int jjMoveStringLiteralDfa0_0()
    -{
    - switch(curChar)
    - {
    - case 33:
    - jjmatchedKind = 40;
    - return jjMoveStringLiteralDfa1_0(0x1000000L);
    - case 37:
    - return jjStopAtPos(0, 37);
    - case 38:
    - return jjMoveStringLiteralDfa1_0(0x40000000000L);
    - case 40:
    - return jjStopAtPos(0, 26);
    - case 41:
    - return jjStopAtPos(0, 27);
    - case 42:
    - return jjStopAtPos(0, 34);
    - case 43:
    - return jjStopAtPos(0, 32);
    - case 44:
    - return jjStopAtPos(0, 28);
    - case 45:
    - return jjStopAtPos(0, 33);
    - case 46:
    - return jjStartNfaWithStates_0(0, 13, 1);
    - case 47:
    - return jjStopAtPos(0, 35);
    - case 58:
    - return jjStopAtPos(0, 29);
    - case 60:
    - jjmatchedKind = 16;
    - return jjMoveStringLiteralDfa1_0(0x100000L);
    - case 61:
    - return jjMoveStringLiteralDfa1_0(0x40000L);
    - case 62:
    - jjmatchedKind = 14;
    - return jjMoveStringLiteralDfa1_0(0x400000L);
    - case 63:
    - return jjStopAtPos(0, 46);
    - case 91:
    - return jjStopAtPos(0, 30);
    - case 93:
    - return jjStopAtPos(0, 31);
    - case 97:
    - return jjMoveStringLiteralDfa1_0(0x20000000000L);
    - case 100:
    - return jjMoveStringLiteralDfa1_0(0x1000000000L);
    - case 101:
    - return jjMoveStringLiteralDfa1_0(0x200000080000L);
    - case 102:
    - return jjMoveStringLiteralDfa1_0(0x800L);
    - case 103:
    - return jjMoveStringLiteralDfa1_0(0x808000L);
    - case 108:
    - return jjMoveStringLiteralDfa1_0(0x220000L);
    - case 109:
    - return jjMoveStringLiteralDfa1_0(0x4000000000L);
    - case 110:
    - return jjMoveStringLiteralDfa1_0(0x8002001000L);
    - case 111:
    - return jjMoveStringLiteralDfa1_0(0x80000000000L);
    - case 116:
    - return jjMoveStringLiteralDfa1_0(0x400L);
    - case 124:
    - return jjMoveStringLiteralDfa1_0(0x100000000000L);
    - default :
    - return jjMoveNfa_0(0, 0);
    - }
    -}
    -private final int jjMoveStringLiteralDfa1_0(long active0)
    -{
    - try { curChar = input_stream.readChar(); }
    - catch(java.io.IOException e) {
    - jjStopStringLiteralDfa_0(0, active0);
    - return 1;
    - }
    - switch(curChar)
    - {
    - case 38:
    - if ((active0 & 0x40000000000L) != 0L)
    - return jjStopAtPos(1, 42);
    - break;
    - case 61:
    - if ((active0 & 0x40000L) != 0L)
    - return jjStopAtPos(1, 18);
    - else if ((active0 & 0x100000L) != 0L)
    - return jjStopAtPos(1, 20);
    - else if ((active0 & 0x400000L) != 0L)
    - return jjStopAtPos(1, 22);
    - else if ((active0 & 0x1000000L) != 0L)
    - return jjStopAtPos(1, 24);
    - break;
    - case 97:
    - return jjMoveStringLiteralDfa2_0(active0, 0x800L);
    - case 101:
    - if ((active0 & 0x200000L) != 0L)
    - return jjStartNfaWithStates_0(1, 21, 6);
    - else if ((active0 & 0x800000L) != 0L)
    - return jjStartNfaWithStates_0(1, 23, 6);
    - else if ((active0 & 0x2000000L) != 0L)
    - return jjStartNfaWithStates_0(1, 25, 6);
    - break;
    - case 105:
    - return jjMoveStringLiteralDfa2_0(active0, 0x1000000000L);
    - case 109:
    - return jjMoveStringLiteralDfa2_0(active0, 0x200000000000L);
    - case 110:
    - return jjMoveStringLiteralDfa2_0(active0, 0x20000000000L);
    - case 111:
    - return jjMoveStringLiteralDfa2_0(active0, 0xc000000000L);
    - case 113:
    - if ((active0 & 0x80000L) != 0L)
    - return jjStartNfaWithStates_0(1, 19, 6);
    - break;
    - case 114:
    - if ((active0 & 0x80000000000L) != 0L)
    - return jjStartNfaWithStates_0(1, 43, 6);
    - return jjMoveStringLiteralDfa2_0(active0, 0x400L);
    - case 116:
    - if ((active0 & 0x8000L) != 0L)
    - return jjStartNfaWithStates_0(1, 15, 6);
    - else if ((active0 & 0x20000L) != 0L)
    - return jjStartNfaWithStates_0(1, 17, 6);
    - break;
    - case 117:
    - return jjMoveStringLiteralDfa2_0(active0, 0x1000L);
    - case 124:
    - if ((active0 & 0x100000000000L) != 0L)
    - return jjStopAtPos(1, 44);
    - break;
    - default :
    - break;
    - }
    - return jjStartNfa_0(0, active0);
    -}
    -private final int jjMoveStringLiteralDfa2_0(long old0, long active0)
    -{
    - if (((active0 &= old0)) == 0L)
    - return jjStartNfa_0(0, old0);
    - try { curChar = input_stream.readChar(); }
    - catch(java.io.IOException e) {
    - jjStopStringLiteralDfa_0(1, active0);
    - return 2;
    - }
    - switch(curChar)
    - {
    - case 100:
    - if ((active0 & 0x4000000000L) != 0L)
    - return jjStartNfaWithStates_0(2, 38, 6);
    - else if ((active0 & 0x20000000000L) != 0L)
    - return jjStartNfaWithStates_0(2, 41, 6);
    - break;
    - case 108:
    - return jjMoveStringLiteralDfa3_0(active0, 0x1800L);
    - case 112:
    - return jjMoveStringLiteralDfa3_0(active0, 0x200000000000L);
    - case 116:
    - if ((active0 & 0x8000000000L) != 0L)
    - return jjStartNfaWithStates_0(2, 39, 6);
    - break;
    - case 117:
    - return jjMoveStringLiteralDfa3_0(active0, 0x400L);
    - case 118:
    - if ((active0 & 0x1000000000L) != 0L)
    - return jjStartNfaWithStates_0(2, 36, 6);
    - break;
    - default :
    - break;
    - }
    - return jjStartNfa_0(1, active0);
    -}
    -private final int jjMoveStringLiteralDfa3_0(long old0, long active0)
    -{
    - if (((active0 &= old0)) == 0L)
    - return jjStartNfa_0(1, old0);
    - try { curChar = input_stream.readChar(); }
    - catch(java.io.IOException e) {
    - jjStopStringLiteralDfa_0(2, active0);
    - return 3;
    - }
    - switch(curChar)
    - {
    - case 101:
    - if ((active0 & 0x400L) != 0L)
    - return jjStartNfaWithStates_0(3, 10, 6);
    - break;
    - case 108:
    - if ((active0 & 0x1000L) != 0L)
    - return jjStartNfaWithStates_0(3, 12, 6);
    - break;
    - case 115:
    - return jjMoveStringLiteralDfa4_0(active0, 0x800L);
    - case 116:
    - return jjMoveStringLiteralDfa4_0(active0, 0x200000000000L);
    - default :
    - break;
    - }
    - return jjStartNfa_0(2, active0);
    -}
    -private final int jjMoveStringLiteralDfa4_0(long old0, long active0)
    -{
    - if (((active0 &= old0)) == 0L)
    - return jjStartNfa_0(2, old0);
    - try { curChar = input_stream.readChar(); }
    - catch(java.io.IOException e) {
    - jjStopStringLiteralDfa_0(3, active0);
    - return 4;
    - }
    - switch(curChar)
    - {
    - case 101:
    - if ((active0 & 0x800L) != 0L)
    - return jjStartNfaWithStates_0(4, 11, 6);
    - break;
    - case 121:
    - if ((active0 & 0x200000000000L) != 0L)
    - return jjStartNfaWithStates_0(4, 45, 6);
    - break;
    - default :
    - break;
    - }
    - return jjStartNfa_0(3, active0);
    -}
    -private final void jjCheckNAdd(int state)
    -{
    - if (jjrounds[state] != jjround)
    - {
    - jjstateSet[jjnewStateCnt++] = state;
    - jjrounds[state] = jjround;
    - }
    -}
    -private final void jjAddStates(int start, int end)
    -{
    - do {
    - jjstateSet[jjnewStateCnt++] = jjnextStates[start];
    - } while (start++ != end);
    -}
    -private final void jjCheckNAddTwoStates(int state1, int state2)
    -{
    - jjCheckNAdd(state1);
    - jjCheckNAdd(state2);
    -}
    -private final void jjCheckNAddStates(int start, int end)
    -{
    - do {
    - jjCheckNAdd(jjnextStates[start]);
    - } while (start++ != end);
    -}
    -//private final void jjCheckNAddStates(int start)
    -//{
    -// jjCheckNAdd(jjnextStates[start]);
    -// jjCheckNAdd(jjnextStates[start + 1]);
    -//}
    -static final long[] jjbitVec0 = {
    - 0x1ff00000fffffffeL, 0xffffffffffffc000L, 0xffffffffL, 0x600000000000000L
    -};
    -static final long[] jjbitVec2 = {
    - 0x0L, 0x0L, 0x0L, 0xff7fffffff7fffffL
    -};
    -static final long[] jjbitVec3 = {
    - 0x0L, 0xffffffffffffffffL, 0xffffffffffffffffL, 0xffffffffffffffffL
    -};
    -static final long[] jjbitVec4 = {
    - 0xffffffffffffffffL, 0xffffffffffffffffL, 0xffffL, 0x0L
    -};
    -static final long[] jjbitVec5 = {
    - 0xffffffffffffffffL, 0xffffffffffffffffL, 0x0L, 0x0L
    -};
    -static final long[] jjbitVec6 = {
    - 0x3fffffffffffL, 0x0L, 0x0L, 0x0L
    -};
    -static final long[] jjbitVec7 = {
    - 0xfffffffffffffffeL, 0xffffffffffffffffL, 0xffffffffffffffffL, 0xffffffffffffffffL
    -};
    -static final long[] jjbitVec8 = {
    - 0x0L, 0x0L, 0xffffffffffffffffL, 0xffffffffffffffffL
    -};
    -private final int jjMoveNfa_0(int startState, int curPos)
    -{
    - int startsAt = 0;
    - jjnewStateCnt = 35;
    - int i = 1;
    - jjstateSet[0] = startState;
    - int kind = 0x7fffffff;
    - for (;;)
    - {
    - if (++jjround == 0x7fffffff)
    - ReInitRounds();
    - if (curChar < 64)
    - {
    - long l = 1L << curChar;
    - // MatchLoop:
    - do
    - {
    - switch(jjstateSet[--i])
    - {
    - case 0:
    - if ((0x3ff000000000000L & l) != 0L)
    - {
    - if (kind > 5)
    - kind = 5;
    - jjCheckNAddStates(0, 4);
    - }
    - else if ((0x1800000000L & l) != 0L)
    - {
    - if (kind > 47)
    - kind = 47;
    - jjCheckNAdd(6);
    - }
    - else if (curChar == 39)
    - jjCheckNAddStates(5, 9);
    - else if (curChar == 34)
    - jjCheckNAddStates(10, 14);
    - else if (curChar == 46)
    - jjCheckNAdd(1);
    - break;
    - case 1:
    - if ((0x3ff000000000000L & l) == 0L)
    - break;
    - if (kind > 6)
    - kind = 6;
    - jjCheckNAddTwoStates(1, 2);
    - break;
    - case 3:
    - if ((0x280000000000L & l) != 0L)
    - jjCheckNAdd(4);
    - break;
    - case 4:
    - if ((0x3ff000000000000L & l) == 0L)
    - break;
    - if (kind > 6)
    - kind = 6;
    - jjCheckNAdd(4);
    - break;
    - case 5:
    - if ((0x1800000000L & l) == 0L)
    - break;
    - if (kind > 47)
    - kind = 47;
    - jjCheckNAdd(6);
    - break;
    - case 6:
    - if ((0x3ff001000000000L & l) == 0L)
    - break;
    - if (kind > 47)
    - kind = 47;
    - jjCheckNAdd(6);
    - break;
    - case 7:
    - if ((0x3ff000000000000L & l) == 0L)
    - break;
    - if (kind > 5)
    - kind = 5;
    - jjCheckNAddStates(0, 4);
    - break;
    - case 8:
    - if ((0x3ff000000000000L & l) == 0L)
    - break;
    - if (kind > 5)
    - kind = 5;
    - jjCheckNAdd(8);
    - break;
    - case 9:
    - if ((0x3ff000000000000L & l) != 0L)
    - jjCheckNAddTwoStates(9, 10);
    - break;
    - case 10:
    - if (curChar != 46)
    - break;
    - if (kind > 6)
    - kind = 6;
    - jjCheckNAddTwoStates(11, 12);
    - break;
    - case 11:
    - if ((0x3ff000000000000L & l) == 0L)
    - break;
    - if (kind > 6)
    - kind = 6;
    - jjCheckNAddTwoStates(11, 12);
    - break;
    - case 13:
    - if ((0x280000000000L & l) != 0L)
    - jjCheckNAdd(14);
    - break;
    - case 14:
    - if ((0x3ff000000000000L & l) == 0L)
    - break;
    - if (kind > 6)
    - kind = 6;
    - jjCheckNAdd(14);
    - break;
    - case 15:
    - if ((0x3ff000000000000L & l) != 0L)
    - jjCheckNAddTwoStates(15, 16);
    - break;
    - case 17:
    - if ((0x280000000000L & l) != 0L)
    - jjCheckNAdd(18);
    - break;
    - case 18:
    - if ((0x3ff000000000000L & l) == 0L)
    - break;
    - if (kind > 6)
    - kind = 6;
    - jjCheckNAdd(18);
    - break;
    - case 19:
    - if (curChar == 34)
    - jjCheckNAddStates(10, 14);
    - break;
    - case 20:
    - if ((0xfffffffbffffffffL & l) != 0L)
    - jjCheckNAddStates(15, 17);
    - break;
    - case 22:
    - if (curChar == 34)
    - jjCheckNAddStates(15, 17);
    - break;
    - case 23:
    - if (curChar == 34 && kind > 8)
    - kind = 8;
    - break;
    - case 24:
    - if ((0xfffffffbffffffffL & l) != 0L)
    - jjCheckNAddTwoStates(24, 25);
    - break;
    - case 26:
    - if ((0xfffffffbffffffffL & l) != 0L && kind > 9)
    - kind = 9;
    - break;
    - case 27:
    - if (curChar == 39)
    - jjCheckNAddStates(5, 9);
    - break;
    - case 28:
    - if ((0xffffff7fffffffffL & l) != 0L)
    - jjCheckNAddStates(18, 20);
    - break;
    - case 30:
    - if (curChar == 39)
    - jjCheckNAddStates(18, 20);
    - break;
    - case 31:
    - if (curChar == 39 && kind > 8)
    - kind = 8;
    - break;
    - case 32:
    - if ((0xffffff7fffffffffL & l) != 0L)
    - jjCheckNAddTwoStates(32, 33);
    - break;
    - case 34:
    - if ((0xffffff7fffffffffL & l) != 0L && kind > 9)
    - kind = 9;
    - break;
    - default : break;
    - }
    - } while(i != startsAt);
    - }
    - else if (curChar < 128)
    - {
    - long l = 1L << (curChar & 077);
    - //MatchLoop:
    - do
    - {
    - switch(jjstateSet[--i])
    - {
    - case 0:
    - case 6:
    - if ((0x7fffffe87fffffeL & l) == 0L)
    - break;
    - if (kind > 47)
    - kind = 47;
    - jjCheckNAdd(6);
    - break;
    - case 2:
    - if ((0x2000000020L & l) != 0L)
    - jjAddStates(21, 22);
    - break;
    - case 12:
    - if ((0x2000000020L & l) != 0L)
    - jjAddStates(23, 24);
    - break;
    - case 16:
    - if ((0x2000000020L & l) != 0L)
    - jjAddStates(25, 26);
    - break;
    - case 20:
    - if ((0xffffffffefffffffL & l) != 0L)
    - jjCheckNAddStates(15, 17);
    - break;
    - case 21:
    - if (curChar == 92)
    - jjstateSet[jjnewStateCnt++] = 22;
    - break;
    - case 22:
    - if (curChar == 92)
    - jjCheckNAddStates(15, 17);
    - break;
    - case 24:
    - if ((0xffffffffefffffffL & l) != 0L)
    - jjAddStates(27, 28);
    - break;
    - case 25:
    - if (curChar == 92)
    - jjstateSet[jjnewStateCnt++] = 26;
    - break;
    - case 26:
    - case 34:
    - if ((0xffffffffefffffffL & l) != 0L && kind > 9)
    - kind = 9;
    - break;
    - case 28:
    - if ((0xffffffffefffffffL & l) != 0L)
    - jjCheckNAddStates(18, 20);
    - break;
    - case 29:
    - if (curChar == 92)
    - jjstateSet[jjnewStateCnt++] = 30;
    - break;
    - case 30:
    - if (curChar == 92)
    - jjCheckNAddStates(18, 20);
    - break;
    - case 32:
    - if ((0xffffffffefffffffL & l) != 0L)
    - jjAddStates(29, 30);
    - break;
    - case 33:
    - if (curChar == 92)
    - jjstateSet[jjnewStateCnt++] = 34;
    - break;
    - default : break;
    - }
    - } while(i != startsAt);
    - }
    - else
    - {
    - int hiByte = curChar >> 8;
    - int i1 = hiByte >> 6;
    - long l1 = 1L << (hiByte & 077);
    - int i2 = (curChar & 0xff) >> 6;
    - long l2 = 1L << (curChar & 077);
    - //MatchLoop:
    - do
    - {
    - switch(jjstateSet[--i])
    - {
    - case 0:
    - case 6:
    - if (!jjCanMove_0(hiByte, i1, i2, l1, l2))
    - break;
    - if (kind > 47)
    - kind = 47;
    - jjCheckNAdd(6);
    - break;
    - case 20:
    - if (jjCanMove_1(hiByte, i1, i2, l1, l2))
    - jjAddStates(15, 17);
    - break;
    - case 24:
    - if (jjCanMove_1(hiByte, i1, i2, l1, l2))
    - jjAddStates(27, 28);
    - break;
    - case 26:
    - case 34:
    - if (jjCanMove_1(hiByte, i1, i2, l1, l2) && kind > 9)
    - kind = 9;
    - break;
    - case 28:
    - if (jjCanMove_1(hiByte, i1, i2, l1, l2))
    - jjAddStates(18, 20);
    - break;
    - case 32:
    - if (jjCanMove_1(hiByte, i1, i2, l1, l2))
    - jjAddStates(29, 30);
    - break;
    - default : break;
    - }
    - } while(i != startsAt);
    - }
    - if (kind != 0x7fffffff)
    - {
    - jjmatchedKind = kind;
    - jjmatchedPos = curPos;
    - kind = 0x7fffffff;
    - }
    - ++curPos;
    - if ((i = jjnewStateCnt) == (startsAt = 35 - (jjnewStateCnt = startsAt)))
    - return curPos;
    - try { curChar = input_stream.readChar(); }
    - catch(java.io.IOException e) { return curPos; }
    - }
    -}
    -static final int[] jjnextStates = {
    - 8, 9, 10, 15, 16, 28, 29, 31, 32, 33, 20, 21, 23, 24, 25, 20,
    - 21, 23, 28, 29, 31, 3, 4, 13, 14, 17, 18, 24, 25, 32, 33,
    -};
    -private static final boolean jjCanMove_0(int hiByte, int i1, int i2, long l1, long l2)
    -{
    - switch(hiByte)
    - {
    - case 0:
    - return ((jjbitVec2[i2] & l2) != 0L);
    - case 48:
    - return ((jjbitVec3[i2] & l2) != 0L);
    - case 49:
    - return ((jjbitVec4[i2] & l2) != 0L);
    - case 51:
    - return ((jjbitVec5[i2] & l2) != 0L);
    - case 61:
    - return ((jjbitVec6[i2] & l2) != 0L);
    - default :
    - if ((jjbitVec0[i1] & l1) != 0L)
    - return true;
    - return false;
    - }
    -}
    -private static final boolean jjCanMove_1(int hiByte, int i1, int i2, long l1, long l2)
    -{
    - switch(hiByte)
    - {
    - case 0:
    - return ((jjbitVec8[i2] & l2) != 0L);
    - default :
    - if ((jjbitVec7[i1] & l1) != 0L)
    - return true;
    - return false;
    - }
    -}
    -public static final String[] jjstrLiteralImages = {
    -"", null, null, null, null, null, null, null, null, null, "\164\162\165\145",
    -"\146\141\154\163\145", "\156\165\154\154", "\56", "\76", "\147\164", "\74", "\154\164", "\75\75",
    -"\145\161", "\74\75", "\154\145", "\76\75", "\147\145", "\41\75", "\156\145", "\50",
    -"\51", "\54", "\72", "\133", "\135", "\53", "\55", "\52", "\57", "\144\151\166",
    -"\45", "\155\157\144", "\156\157\164", "\41", "\141\156\144", "\46\46", "\157\162",
    -"\174\174", "\145\155\160\164\171", "\77", null, null, null, null, };
    -public static final String[] lexStateNames = {
    - "DEFAULT",
    -};
    -static final long[] jjtoToken = {
    - 0xffffffffff61L,
    -};
    -static final long[] jjtoSkip = {
    - 0x1eL,
    -};
    -protected SimpleCharStream input_stream;
    -private final int[] jjrounds = new int[35];
    -private final int[] jjstateSet = new int[70];
    -protected char curChar;
    -public JSPELParserTokenManager(SimpleCharStream stream)
    -{
    - if (SimpleCharStream.staticFlag)
    - throw new Error("ERROR: Cannot use a static CharStream class with a non-static lexical analyzer.");
    - input_stream = stream;
    -}
    -public JSPELParserTokenManager(SimpleCharStream stream, int lexState)
    -{
    - this(stream);
    - SwitchTo(lexState);
    -}
    -public void ReInit(SimpleCharStream stream)
    -{
    - jjmatchedPos = jjnewStateCnt = 0;
    - curLexState = defaultLexState;
    - input_stream = stream;
    - ReInitRounds();
    -}
    -private final void ReInitRounds()
    -{
    - int i;
    - jjround = 0x80000001;
    - for (i = 35; i-- > 0;)
    - jjrounds[i] = 0x80000000;
    -}
    -public void ReInit(SimpleCharStream stream, int lexState)
    -{
    - ReInit(stream);
    - SwitchTo(lexState);
    -}
    -public void SwitchTo(int lexState)
    -{
    - if (lexState >= 1 || lexState < 0)
    - throw new TokenMgrError("Error: Ignoring invalid lexical state : " + lexState + ". State unchanged.", TokenMgrError.INVALID_LEXICAL_STATE);
    - else
    - curLexState = lexState;
    -}
    -
    -protected Token jjFillToken()
    -{
    - Token t = Token.newToken(jjmatchedKind);
    - t.kind = jjmatchedKind;
    - String im = jjstrLiteralImages[jjmatchedKind];
    - t.image = (im == null) ? input_stream.GetImage() : im;
    - t.beginLine = input_stream.getBeginLine();
    - t.beginColumn = input_stream.getBeginColumn();
    - t.endLine = input_stream.getEndLine();
    - t.endColumn = input_stream.getEndColumn();
    - return t;
    -}
    -
    -int curLexState = 0;
    -int defaultLexState = 0;
    -int jjnewStateCnt;
    -int jjround;
    -int jjmatchedPos;
    -int jjmatchedKind;
    -
    -public Token getNextToken()
    -{
    - Token matchedToken;
    - int curPos = 0;
    -
    - EOFLoop :
    - for (;;)
    - {
    - try
    - {
    - curChar = input_stream.BeginToken();
    - }
    - catch(java.io.IOException e)
    - {
    - jjmatchedKind = 0;
    - matchedToken = jjFillToken();
    - return matchedToken;
    - }
    -
    - try { input_stream.backup(0);
    - while (curChar <= 32 && (0x100002600L & (1L << curChar)) != 0L)
    - curChar = input_stream.BeginToken();
    - }
    - catch (java.io.IOException e1) { continue EOFLoop; }
    - jjmatchedKind = 0x7fffffff;
    - jjmatchedPos = 0;
    - curPos = jjMoveStringLiteralDfa0_0();
    - if (jjmatchedKind != 0x7fffffff)
    - {
    - if (jjmatchedPos + 1 < curPos)
    - input_stream.backup(curPos - jjmatchedPos - 1);
    - if ((jjtoToken[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L)
    - {
    - matchedToken = jjFillToken();
    - return matchedToken;
    - }
    - else
    - {
    - continue EOFLoop;
    - }
    - }
    - int error_line = input_stream.getEndLine();
    - int error_column = input_stream.getEndColumn();
    - String error_after = null;
    - boolean EOFSeen = false;
    - try { input_stream.readChar(); input_stream.backup(1); }
    - catch (java.io.IOException e1) {
    - EOFSeen = true;
    - error_after = curPos <= 1 ? "" : input_stream.GetImage();
    - if (curChar == '\n' || curChar == '\r') {
    - error_line++;
    - error_column = 0;
    - }
    - else
    - error_column++;
    - }
    - if (!EOFSeen) {
    - input_stream.backup(1);
    - error_after = curPos <= 1 ? "" : input_stream.GetImage();
    - }
    - throw new TokenMgrError(EOFSeen, curLexState, error_line, error_column, error_after, curChar, TokenMgrError.LEXICAL_ERROR);
    - }
    -}
    -
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPELParserTreeConstants.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPELParserTreeConstants.java
    deleted file mode 100644
    index 55a6e47482..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPELParserTreeConstants.java
    +++ /dev/null
    @@ -1,50 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JJTree: Do not edit this line. JSPELParserTreeConstants.java */
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public interface JSPELParserTreeConstants
    -{
    - public int JJTEXPRESSION = 0;
    - public int JJTOREXPRESSION = 1;
    - public int JJTANDEXPRESSION = 2;
    - public int JJTEQUALITYEXPRESSION = 3;
    - public int JJTRELATIONALEXPRESSION = 4;
    - public int JJTADDEXPRESSION = 5;
    - public int JJTMULTIPLYEXPRESSION = 6;
    - public int JJTCHOICEEXPRESSION = 7;
    - public int JJTUNARYEXPRESSION = 8;
    - public int JJTVALUE = 9;
    - public int JJTVALUEPREFIX = 10;
    - public int JJTVALUESUFFIX = 11;
    - public int JJTFUNCTIONINVOCATION = 12;
    - public int JJTLITERAL = 13;
    -
    -
    - public String[] jjtNodeName = {
    - "Expression",
    - "OrExpression",
    - "AndExpression",
    - "EqualityExpression",
    - "RelationalExpression",
    - "AddExpression",
    - "MultiplyExpression",
    - "ChoiceExpression",
    - "UnaryExpression",
    - "Value",
    - "ValuePrefix",
    - "ValueSuffix",
    - "FunctionInvocation",
    - "Literal",
    - };
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPELParserVisitor.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPELParserVisitor.java
    deleted file mode 100644
    index ffcf4941b8..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPELParserVisitor.java
    +++ /dev/null
    @@ -1,33 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JJTree: Do not edit this line. JSPELParserVisitor.java */
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public interface JSPELParserVisitor
    -{
    - public Object visit(SimpleNode node, Object data);
    - public Object visit(ASTExpression node, Object data);
    - public Object visit(ASTOrExpression node, Object data);
    - public Object visit(ASTAndExpression node, Object data);
    - public Object visit(ASTEqualityExpression node, Object data);
    - public Object visit(ASTRelationalExpression node, Object data);
    - public Object visit(ASTAddExpression node, Object data);
    - public Object visit(ASTMultiplyExpression node, Object data);
    - public Object visit(ASTChoiceExpression node, Object data);
    - public Object visit(ASTUnaryExpression node, Object data);
    - public Object visit(ASTValue node, Object data);
    - public Object visit(ASTValuePrefix node, Object data);
    - public Object visit(ASTValueSuffix node, Object data);
    - public Object visit(ASTFunctionInvocation node, Object data);
    - public Object visit(ASTLiteral node, Object data);
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPELTranslator.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPELTranslator.java
    deleted file mode 100644
    index 745f9e6fd5..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/JSPELTranslator.java
    +++ /dev/null
    @@ -1,68 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005, 2006 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -import java.util.ArrayList;
    -import java.util.HashMap;
    -import java.util.List;
    -
    -import org.eclipse.jface.text.Position;
    -import org.eclipse.jst.jsp.core.internal.JSPCoreMessages;
    -import org.eclipse.jst.jsp.core.jspel.ELProblem;
    -import org.eclipse.jst.jsp.core.jspel.IJSPELTranslator;
    -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
    -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
    -
    -
    -public class JSPELTranslator implements IJSPELTranslator {
    - /**
    - * JSP Expression Language Parser.
    - */
    - private JSPELParser elParser = null;
    -
    - public List translateEL(String elText, String delim,
    - IStructuredDocumentRegion currentNode, int contentStart,
    - int contentLength, StringBuffer fUserELExpressions,
    - HashMap fUserELRanges, IStructuredDocument document) {
    -
    - ArrayList elProblems = new ArrayList();
    -
    - try {
    - synchronized(this) {
    - if(null == elParser) {
    - elParser = JSPELParser.createParser(elText);
    - } else {
    - elParser.ReInit(elText);
    - }
    -
    - ASTExpression expression = elParser.Expression();
    - ELGenerator gen = new ELGenerator();
    - gen.generate(expression, currentNode, fUserELExpressions, fUserELRanges, document, currentNode, contentStart, contentLength);
    - }
    - } catch (ParseException e) {
    - Token curTok = e.currentToken;
    - int problemStartOffset;
    - int problemEndOffset;
    - Position pos = null;
    - problemStartOffset = contentStart + curTok.beginColumn;
    - problemEndOffset = contentStart + curTok.endColumn;
    -
    - pos = new Position(problemStartOffset, problemEndOffset - problemStartOffset + 1);
    - elProblems.add(new ELProblem(pos, e.getLocalizedMessage()));
    - } catch (TokenMgrError te) {
    - Position pos = new Position(contentStart, contentLength);
    - elProblems.add(new ELProblem(pos, JSPCoreMessages.JSPEL_Token));
    - }
    - return elProblems;
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/Node.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/Node.java
    deleted file mode 100644
    index b8a186e4c4..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/Node.java
    +++ /dev/null
    @@ -1,48 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JJTree: Do not edit this line. Node.java */
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -/* All AST nodes must implement this interface. It provides basic
    - machinery for constructing the parent and child relationships
    - between nodes. */
    -
    -public interface Node {
    -
    - /** This method is called after the node has been made the current
    - node. It indicates that child nodes can now be added to it. */
    - public void jjtOpen();
    -
    - /** This method is called after all the child nodes have been
    - added. */
    - public void jjtClose();
    -
    - /** This pair of methods are used to inform the node of its
    - parent. */
    - public void jjtSetParent(Node n);
    - public Node jjtGetParent();
    -
    - /** This method tells the node to add its argument to the node's
    - list of children. */
    - public void jjtAddChild(Node n, int i);
    -
    - /** This method returns a child node. The children are numbered
    - from zero, left to right. */
    - public Node jjtGetChild(int i);
    -
    - /** Return the number of children the node has. */
    - public int jjtGetNumChildren();
    -
    - /** Accept the visitor. **/
    - public Object jjtAccept(JSPELParserVisitor visitor, Object data);
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ParseException.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ParseException.java
    deleted file mode 100644
    index ecd5087075..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/ParseException.java
    +++ /dev/null
    @@ -1,208 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JavaCC: Do not edit this line. ParseException.java Version 3.0 */
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -/**
    - * This exception is thrown when parse errors are encountered.
    - * You can explicitly create objects of this exception type by
    - * calling the method generateParseException in the generated
    - * parser.
    - *
    - * You can modify this class to customize your error reporting
    - * mechanisms so long as you retain the public fields.
    - */
    -public class ParseException extends Exception {
    -
    - /**
    - * Default <code>serialVersionUID</code>
    - */
    - private static final long serialVersionUID = 1L;
    -
    -/**
    - * This constructor is used by the method "generateParseException"
    - * in the generated parser. Calling this constructor generates
    - * a new object of this type with the fields "currentToken",
    - * "expectedTokenSequences", and "tokenImage" set. The boolean
    - * flag "specialConstructor" is also set to true to indicate that
    - * this constructor was used to create this object.
    - * This constructor calls its super class with the empty string
    - * to force the "toString" method of parent class "Throwable" to
    - * print the error message in the form:
    - * ParseException: <result of getMessage>
    - */
    - public ParseException(Token currentTokenVal,
    - int[][] expectedTokenSequencesVal,
    - String[] tokenImageVal
    - )
    - {
    - super("");
    - specialConstructor = true;
    - currentToken = currentTokenVal;
    - expectedTokenSequences = expectedTokenSequencesVal;
    - tokenImage = tokenImageVal;
    - }
    -
    - /**
    - * The following constructors are for use by you for whatever
    - * purpose you can think of. Constructing the exception in this
    - * manner makes the exception behave in the normal way - i.e., as
    - * documented in the class "Throwable". The fields "errorToken",
    - * "expectedTokenSequences", and "tokenImage" do not contain
    - * relevant information. The JavaCC generated code does not use
    - * these constructors.
    - */
    -
    - public ParseException() {
    - super();
    - specialConstructor = false;
    - }
    -
    - public ParseException(String message) {
    - super(message);
    - specialConstructor = false;
    - }
    -
    - /**
    - * This variable determines which constructor was used to create
    - * this object and thereby affects the semantics of the
    - * "getMessage" method (see below).
    - */
    - protected boolean specialConstructor;
    -
    - /**
    - * This is the last token that has been consumed successfully. If
    - * this object has been created due to a parse error, the token
    - * followng this token will (therefore) be the first error token.
    - */
    - public Token currentToken;
    -
    - /**
    - * Each entry in this array is an array of integers. Each array
    - * of integers represents a sequence of tokens (by their ordinal
    - * values) that is expected at this point of the parse.
    - */
    - public int[][] expectedTokenSequences;
    -
    - /**
    - * This is a reference to the "tokenImage" array of the generated
    - * parser within which the parse error occurred. This array is
    - * defined in the generated ...Constants interface.
    - */
    - public String[] tokenImage;
    -
    - /**
    - * This method has the standard behavior when this object has been
    - * created using the standard constructors. Otherwise, it uses
    - * "currentToken" and "expectedTokenSequences" to generate a parse
    - * error message and returns it. If this object has been created
    - * due to a parse error, and you do not catch it (it gets thrown
    - * from the parser), then this method is called during the printing
    - * of the final stack trace, and hence the correct error message
    - * gets displayed.
    - */
    - public String getMessage() {
    - if (!specialConstructor) {
    - return super.getMessage();
    - }
    - String expected = "";
    - int maxSize = 0;
    - for (int i = 0; i < expectedTokenSequences.length; i++) {
    - if (maxSize < expectedTokenSequences[i].length) {
    - maxSize = expectedTokenSequences[i].length;
    - }
    - for (int j = 0; j < expectedTokenSequences[i].length; j++) {
    - expected += tokenImage[expectedTokenSequences[i][j]] + " ";
    - }
    - if (expectedTokenSequences[i][expectedTokenSequences[i].length - 1] != 0) {
    - expected += "...";
    - }
    - expected += eol + " ";
    - }
    - String retval = "Encountered \"";
    - Token tok = currentToken.next;
    - for (int i = 0; i < maxSize; i++) {
    - if (i != 0) retval += " ";
    - if (tok.kind == 0) {
    - retval += tokenImage[0];
    - break;
    - }
    - retval += add_escapes(tok.image);
    - tok = tok.next;
    - }
    - retval += "\" at line " + currentToken.next.beginLine + ", column " + currentToken.next.beginColumn;
    - retval += "." + eol;
    - if (expectedTokenSequences.length == 1) {
    - retval += "Was expecting:" + eol + " ";
    - } else {
    - retval += "Was expecting one of:" + eol + " ";
    - }
    - retval += expected;
    - return retval;
    - }
    -
    - /**
    - * The end of line string for this machine.
    - */
    - protected String eol = System.getProperty("line.separator", "\n");
    -
    - /**
    - * Used to convert raw characters to their escaped version
    - * when these raw version cannot be used as part of an ASCII
    - * string literal.
    - */
    - protected String add_escapes(String str) {
    - StringBuffer retval = new StringBuffer();
    - char ch;
    - for (int i = 0; i < str.length(); i++) {
    - switch (str.charAt(i))
    - {
    - case 0 :
    - continue;
    - case '\b':
    - retval.append("\\b");
    - continue;
    - case '\t':
    - retval.append("\\t");
    - continue;
    - case '\n':
    - retval.append("\\n");
    - continue;
    - case '\f':
    - retval.append("\\f");
    - continue;
    - case '\r':
    - retval.append("\\r");
    - continue;
    - case '\"':
    - retval.append("\\\"");
    - continue;
    - case '\'':
    - retval.append("\\\'");
    - continue;
    - case '\\':
    - retval.append("\\\\");
    - continue;
    - default:
    - if ((ch = str.charAt(i)) < 0x20 || ch > 0x7e) {
    - String s = "0000" + Integer.toString(ch, 16);
    - retval.append("\\u" + s.substring(s.length() - 4, s.length()));
    - } else {
    - retval.append(ch);
    - }
    - continue;
    - }
    - }
    - return retval.toString();
    - }
    -
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/SimpleCharStream.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/SimpleCharStream.java
    deleted file mode 100644
    index 8021b4b992..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/SimpleCharStream.java
    +++ /dev/null
    @@ -1,412 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JavaCC: Do not edit this line. SimpleCharStream.java Version 3.0 */
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -/**
    - * An implementation of interface CharStream, where the stream is assumed to
    - * contain only ASCII characters (without unicode processing).
    - */
    -
    -public class SimpleCharStream
    -{
    - public static final boolean staticFlag = false;
    - int bufsize;
    - int available;
    - int tokenBegin;
    - public int bufpos = -1;
    - protected int bufline[];
    - protected int bufcolumn[];
    -
    - protected int column = 0;
    - protected int line = 1;
    -
    - protected boolean prevCharIsCR = false;
    - protected boolean prevCharIsLF = false;
    -
    - protected java.io.Reader inputStream;
    -
    - protected char[] buffer;
    - protected int maxNextCharInd = 0;
    - protected int inBuf = 0;
    -
    - protected void ExpandBuff(boolean wrapAround)
    - {
    - char[] newbuffer = new char[bufsize + 2048];
    - int newbufline[] = new int[bufsize + 2048];
    - int newbufcolumn[] = new int[bufsize + 2048];
    -
    - try
    - {
    - if (wrapAround)
    - {
    - System.arraycopy(buffer, tokenBegin, newbuffer, 0, bufsize - tokenBegin);
    - System.arraycopy(buffer, 0, newbuffer,
    - bufsize - tokenBegin, bufpos);
    - buffer = newbuffer;
    -
    - System.arraycopy(bufline, tokenBegin, newbufline, 0, bufsize - tokenBegin);
    - System.arraycopy(bufline, 0, newbufline, bufsize - tokenBegin, bufpos);
    - bufline = newbufline;
    -
    - System.arraycopy(bufcolumn, tokenBegin, newbufcolumn, 0, bufsize - tokenBegin);
    - System.arraycopy(bufcolumn, 0, newbufcolumn, bufsize - tokenBegin, bufpos);
    - bufcolumn = newbufcolumn;
    -
    - maxNextCharInd = (bufpos += (bufsize - tokenBegin));
    - }
    - else
    - {
    - System.arraycopy(buffer, tokenBegin, newbuffer, 0, bufsize - tokenBegin);
    - buffer = newbuffer;
    -
    - System.arraycopy(bufline, tokenBegin, newbufline, 0, bufsize - tokenBegin);
    - bufline = newbufline;
    -
    - System.arraycopy(bufcolumn, tokenBegin, newbufcolumn, 0, bufsize - tokenBegin);
    - bufcolumn = newbufcolumn;
    -
    - maxNextCharInd = (bufpos -= tokenBegin);
    - }
    - }
    - catch (Throwable t)
    - {
    - throw new Error(t.getMessage());
    - }
    -
    -
    - bufsize += 2048;
    - available = bufsize;
    - tokenBegin = 0;
    - }
    -
    - protected void FillBuff() throws java.io.IOException
    - {
    - if (maxNextCharInd == available)
    - {
    - if (available == bufsize)
    - {
    - if (tokenBegin > 2048)
    - {
    - bufpos = maxNextCharInd = 0;
    - available = tokenBegin;
    - }
    - else if (tokenBegin < 0)
    - bufpos = maxNextCharInd = 0;
    - else
    - ExpandBuff(false);
    - }
    - else if (available > tokenBegin)
    - available = bufsize;
    - else if ((tokenBegin - available) < 2048)
    - ExpandBuff(true);
    - else
    - available = tokenBegin;
    - }
    -
    - int i;
    - try {
    - if ((i = inputStream.read(buffer, maxNextCharInd,
    - available - maxNextCharInd)) == -1)
    - {
    - inputStream.close();
    - throw new java.io.IOException();
    - }
    - else
    - maxNextCharInd += i;
    - return;
    - }
    - catch(java.io.IOException e) {
    - --bufpos;
    - backup(0);
    - if (tokenBegin == -1)
    - tokenBegin = bufpos;
    - throw e;
    - }
    - }
    -
    - public char BeginToken() throws java.io.IOException
    - {
    - tokenBegin = -1;
    - char c = readChar();
    - tokenBegin = bufpos;
    -
    - return c;
    - }
    -
    - protected void UpdateLineColumn(char c)
    - {
    - column++;
    -
    - if (prevCharIsLF)
    - {
    - prevCharIsLF = false;
    - line += (column = 1);
    - }
    - else if (prevCharIsCR)
    - {
    - prevCharIsCR = false;
    - if (c == '\n')
    - {
    - prevCharIsLF = true;
    - }
    - else
    - line += (column = 1);
    - }
    -
    - switch (c)
    - {
    - case '\r' :
    - prevCharIsCR = true;
    - break;
    - case '\n' :
    - prevCharIsLF = true;
    - break;
    - case '\t' :
    - column--;
    - column += (8 - (column & 07));
    - break;
    - default :
    - break;
    - }
    -
    - bufline[bufpos] = line;
    - bufcolumn[bufpos] = column;
    - }
    -
    - public char readChar() throws java.io.IOException
    - {
    - if (inBuf > 0)
    - {
    - --inBuf;
    -
    - if (++bufpos == bufsize)
    - bufpos = 0;
    -
    - return buffer[bufpos];
    - }
    -
    - if (++bufpos >= maxNextCharInd)
    - FillBuff();
    -
    - char c = buffer[bufpos];
    -
    - UpdateLineColumn(c);
    - return (c);
    - }
    -
    - /**
    - * @deprecated
    - * @see #getEndColumn
    - */
    -
    - public int getColumn() {
    - return bufcolumn[bufpos];
    - }
    -
    - /**
    - * @deprecated
    - * @see #getEndLine
    - */
    -
    - public int getLine() {
    - return bufline[bufpos];
    - }
    -
    - public int getEndColumn() {
    - return bufcolumn[bufpos];
    - }
    -
    - public int getEndLine() {
    - return bufline[bufpos];
    - }
    -
    - public int getBeginColumn() {
    - return bufcolumn[tokenBegin];
    - }
    -
    - public int getBeginLine() {
    - return bufline[tokenBegin];
    - }
    -
    - public void backup(int amount) {
    -
    - inBuf += amount;
    - if ((bufpos -= amount) < 0)
    - bufpos += bufsize;
    - }
    -
    - public SimpleCharStream(java.io.Reader dstream, int startline,
    - int startcolumn, int buffersize)
    - {
    - inputStream = dstream;
    - line = startline;
    - column = startcolumn - 1;
    -
    - available = bufsize = buffersize;
    - buffer = new char[buffersize];
    - bufline = new int[buffersize];
    - bufcolumn = new int[buffersize];
    - }
    -
    - public SimpleCharStream(java.io.Reader dstream, int startline,
    - int startcolumn)
    - {
    - this(dstream, startline, startcolumn, 4096);
    - }
    -
    - public SimpleCharStream(java.io.Reader dstream)
    - {
    - this(dstream, 1, 1, 4096);
    - }
    - public void ReInit(java.io.Reader dstream, int startline,
    - int startcolumn, int buffersize)
    - {
    - inputStream = dstream;
    - line = startline;
    - column = startcolumn - 1;
    -
    - if (buffer == null || buffersize != buffer.length)
    - {
    - available = bufsize = buffersize;
    - buffer = new char[buffersize];
    - bufline = new int[buffersize];
    - bufcolumn = new int[buffersize];
    - }
    - prevCharIsLF = prevCharIsCR = false;
    - tokenBegin = inBuf = maxNextCharInd = 0;
    - bufpos = -1;
    - }
    -
    - public void ReInit(java.io.Reader dstream, int startline,
    - int startcolumn)
    - {
    - ReInit(dstream, startline, startcolumn, 4096);
    - }
    -
    - public void ReInit(java.io.Reader dstream)
    - {
    - ReInit(dstream, 1, 1, 4096);
    - }
    - public SimpleCharStream(java.io.InputStream dstream, int startline,
    - int startcolumn, int buffersize)
    - {
    - this(new java.io.InputStreamReader(dstream), startline, startcolumn, 4096);
    - }
    -
    - public SimpleCharStream(java.io.InputStream dstream, int startline,
    - int startcolumn)
    - {
    - this(dstream, startline, startcolumn, 4096);
    - }
    -
    - public SimpleCharStream(java.io.InputStream dstream)
    - {
    - this(dstream, 1, 1, 4096);
    - }
    -
    - public void ReInit(java.io.InputStream dstream, int startline,
    - int startcolumn, int buffersize)
    - {
    - ReInit(new java.io.InputStreamReader(dstream), startline, startcolumn, 4096);
    - }
    -
    - public void ReInit(java.io.InputStream dstream)
    - {
    - ReInit(dstream, 1, 1, 4096);
    - }
    - public void ReInit(java.io.InputStream dstream, int startline,
    - int startcolumn)
    - {
    - ReInit(dstream, startline, startcolumn, 4096);
    - }
    - public String GetImage()
    - {
    - if (bufpos >= tokenBegin)
    - return new String(buffer, tokenBegin, bufpos - tokenBegin + 1);
    - else
    - return new String(buffer, tokenBegin, bufsize - tokenBegin) +
    - new String(buffer, 0, bufpos + 1);
    - }
    -
    - public char[] GetSuffix(int len)
    - {
    - char[] ret = new char[len];
    -
    - if ((bufpos + 1) >= len)
    - System.arraycopy(buffer, bufpos - len + 1, ret, 0, len);
    - else
    - {
    - System.arraycopy(buffer, bufsize - (len - bufpos - 1), ret, 0,
    - len - bufpos - 1);
    - System.arraycopy(buffer, 0, ret, len - bufpos - 1, bufpos + 1);
    - }
    -
    - return ret;
    - }
    -
    - public void Done()
    - {
    - buffer = null;
    - bufline = null;
    - bufcolumn = null;
    - }
    -
    - /**
    - * Method to adjust line and column numbers for the start of a token.
    - */
    - public void adjustBeginLineColumn(int newLine, int newCol)
    - {
    - int start = tokenBegin;
    - int len;
    -
    - if (bufpos >= tokenBegin)
    - {
    - len = bufpos - tokenBegin + inBuf + 1;
    - }
    - else
    - {
    - len = bufsize - tokenBegin + bufpos + 1 + inBuf;
    - }
    -
    - int i = 0, j = 0, k = 0;
    - int nextColDiff = 0, columnDiff = 0;
    -
    - while (i < len &&
    - bufline[j = start % bufsize] == bufline[k = ++start % bufsize])
    - {
    - bufline[j] = newLine;
    - nextColDiff = columnDiff + bufcolumn[k] - bufcolumn[j];
    - bufcolumn[j] = newCol + columnDiff;
    - columnDiff = nextColDiff;
    - i++;
    - }
    -
    - if (i < len)
    - {
    - bufline[j] = newLine++;
    - bufcolumn[j] = newCol + columnDiff;
    -
    - while (i++ < len)
    - {
    - if (bufline[j = start % bufsize] != bufline[++start % bufsize])
    - bufline[j] = newLine++;
    - else
    - bufline[j] = newLine;
    - }
    - }
    -
    - line = bufline[j];
    - column = bufcolumn[j];
    - }
    -
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/SimpleNode.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/SimpleNode.java
    deleted file mode 100644
    index aac473f95a..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/SimpleNode.java
    +++ /dev/null
    @@ -1,116 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JJTree: Do not edit this line. SimpleNode.java */
    -
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public class SimpleNode implements Node {
    - protected Node parent;
    - protected Node[] children;
    - protected int id;
    - protected JSPELParser parser;
    - protected Token firstToken;
    - protected Token lastToken;
    -
    - public SimpleNode(int i) {
    - id = i;
    - }
    -
    - public SimpleNode(JSPELParser p, int i) {
    - this(i);
    - parser = p;
    - }
    -
    - public void jjtOpen() {
    - }
    -
    - public void jjtClose() {
    - }
    -
    - public void jjtSetParent(Node n) { parent = n; }
    - public Node jjtGetParent() { return parent; }
    -
    - public void jjtAddChild(Node n, int i) {
    - if (children == null) {
    - children = new Node[i + 1];
    - } else if (i >= children.length) {
    - Node c[] = new Node[i + 1];
    - System.arraycopy(children, 0, c, 0, children.length);
    - children = c;
    - }
    - children[i] = n;
    - }
    -
    - public Node jjtGetChild(int i) {
    - return children[i];
    - }
    -
    - public int jjtGetNumChildren() {
    - return (children == null) ? 0 : children.length;
    - }
    -
    - /** Accept the visitor. **/
    - public Object jjtAccept(JSPELParserVisitor visitor, Object data) {
    - return visitor.visit(this, data);
    - }
    -
    - /** Accept the visitor. **/
    - public Object childrenAccept(JSPELParserVisitor visitor, Object data) {
    - if (children != null) {
    - for (int i = 0; i < children.length; ++i) {
    - children[i].jjtAccept(visitor, data);
    - }
    - }
    - return data;
    - }
    -
    - /* You can override these two methods in subclasses of SimpleNode to
    - customize the way the node appears when the tree is dumped. If
    - your output uses more than one line you should override
    - toString(String), otherwise overriding toString() is probably all
    - you need to do. */
    -
    - public String toString() { return JSPELParserTreeConstants.jjtNodeName[id]; }
    - public String toString(String prefix) { return prefix + toString(); }
    -
    - /* Override this method if you want to customize how the node dumps
    - out its children. */
    -
    - public void dump(String prefix) {
    - System.out.println(toString(prefix));
    - if (children != null) {
    - for (int i = 0; i < children.length; ++i) {
    - SimpleNode n = (SimpleNode)children[i];
    - if (n != null) {
    - n.dump(prefix + " ");
    - }
    - }
    - }
    - }
    -
    - public Token getFirstToken() {
    - return firstToken;
    - }
    -
    - public void setFirstToken(Token firstToken) {
    - this.firstToken = firstToken;
    - }
    -
    - public Token getLastToken() {
    - return lastToken;
    - }
    -
    - public void setLastToken(Token lastToken) {
    - this.lastToken = lastToken;
    - }
    -}
    -
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/Token.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/Token.java
    deleted file mode 100644
    index 7159820f62..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/Token.java
    +++ /dev/null
    @@ -1,92 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JavaCC: Do not edit this line. Token.java Version 3.0 */
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -/**
    - * Describes the input token stream.
    - */
    -
    -public class Token {
    -
    - /**
    - * An integer that describes the kind of this token. This numbering
    - * system is determined by JavaCCParser, and a table of these numbers is
    - * stored in the file ...Constants.java.
    - */
    - public int kind;
    -
    - /**
    - * beginLine and beginColumn describe the position of the first character
    - * of this token; endLine and endColumn describe the position of the
    - * last character of this token.
    - */
    - public int beginLine, beginColumn, endLine, endColumn;
    -
    - /**
    - * The string image of the token.
    - */
    - public String image;
    -
    - /**
    - * A reference to the next regular (non-special) token from the input
    - * stream. If this is the last token from the input stream, or if the
    - * token manager has not read tokens beyond this one, this field is
    - * set to null. This is true only if this token is also a regular
    - * token. Otherwise, see below for a description of the contents of
    - * this field.
    - */
    - public Token next;
    -
    - /**
    - * This field is used to access special tokens that occur prior to this
    - * token, but after the immediately preceding regular (non-special) token.
    - * If there are no such special tokens, this field is set to null.
    - * When there are more than one such special token, this field refers
    - * to the last of these special tokens, which in turn refers to the next
    - * previous special token through its specialToken field, and so on
    - * until the first special token (whose specialToken field is null).
    - * The next fields of special tokens refer to other special tokens that
    - * immediately follow it (without an intervening regular token). If there
    - * is no such token, this field is null.
    - */
    - public Token specialToken;
    -
    - /**
    - * Returns the image.
    - */
    - public String toString()
    - {
    - return image;
    - }
    -
    - /**
    - * Returns a new Token object, by default. However, if you want, you
    - * can create and return subclass objects based on the value of ofKind.
    - * Simply add the cases to the switch for all those special cases.
    - * For example, if you have a subclass of Token called IDToken that
    - * you want to create if ofKind is ID, simlpy add something like :
    - *
    - * case MyParserConstants.ID : return new IDToken();
    - *
    - * to the following switch statement. Then you can cast matchedToken
    - * variable to the appropriate type and use it in your lexical actions.
    - */
    - public static final Token newToken(int ofKind)
    - {
    - switch(ofKind)
    - {
    - default : return new Token();
    - }
    - }
    -
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/TokenMgrError.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/TokenMgrError.java
    deleted file mode 100644
    index 1a53dc2638..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/TokenMgrError.java
    +++ /dev/null
    @@ -1,149 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2005 BEA Systems 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:
    - * BEA Systems - initial implementation
    - *
    - *******************************************************************************/
    -/* Generated By:JavaCC: Do not edit this line. TokenMgrError.java Version 3.0 */
    -package org.eclipse.jst.jsp.core.internal.java.jspel;
    -
    -public class TokenMgrError extends Error
    -{
    - /*
    - * Ordinals for various reasons why an Error of this type can be thrown.
    - */
    -
    - /**
    - * Default <code>serialVersionUID</code>
    - */
    - private static final long serialVersionUID = 1L;
    -
    -/**
    - * Lexical error occured.
    - */
    - static final int LEXICAL_ERROR = 0;
    -
    - /**
    - * An attempt wass made to create a second instance of a static token manager.
    - */
    - static final int STATIC_LEXER_ERROR = 1;
    -
    - /**
    - * Tried to change to an invalid lexical state.
    - */
    - static final int INVALID_LEXICAL_STATE = 2;
    -
    - /**
    - * Detected (and bailed out of) an infinite loop in the token manager.
    - */
    - static final int LOOP_DETECTED = 3;
    -
    - /**
    - * Indicates the reason why the exception is thrown. It will have
    - * one of the above 4 values.
    - */
    - int errorCode;
    -
    - /**
    - * Replaces unprintable characters by their espaced (or unicode escaped)
    - * equivalents in the given string
    - */
    - protected static final String addEscapes(String str) {
    - StringBuffer retval = new StringBuffer();
    - char ch;
    - for (int i = 0; i < str.length(); i++) {
    - switch (str.charAt(i))
    - {
    - case 0 :
    - continue;
    - case '\b':
    - retval.append("\\b");
    - continue;
    - case '\t':
    - retval.append("\\t");
    - continue;
    - case '\n':
    - retval.append("\\n");
    - continue;
    - case '\f':
    - retval.append("\\f");
    - continue;
    - case '\r':
    - retval.append("\\r");
    - continue;
    - case '\"':
    - retval.append("\\\"");
    - continue;
    - case '\'':
    - retval.append("\\\'");
    - continue;
    - case '\\':
    - retval.append("\\\\");
    - continue;
    - default:
    - if ((ch = str.charAt(i)) < 0x20 || ch > 0x7e) {
    - String s = "0000" + Integer.toString(ch, 16);
    - retval.append("\\u" + s.substring(s.length() - 4, s.length()));
    - } else {
    - retval.append(ch);
    - }
    - continue;
    - }
    - }
    - return retval.toString();
    - }
    -
    - /**
    - * Returns a detailed message for the Error when it is thrown by the
    - * token manager to indicate a lexical error.
    - * Parameters :
    - * EOFSeen : indicates if EOF caused the lexicl error
    - * curLexState : lexical state in which this error occured
    - * errorLine : line number when the error occured
    - * errorColumn : column number when the error occured
    - * errorAfter : prefix that was seen before this error occured
    - * curchar : the offending character
    - * Note: You can customize the lexical error message by modifying this method.
    - */
    - protected static String LexicalError(boolean EOFSeen, int lexState, int errorLine, int errorColumn, String errorAfter, char curChar) {
    - return("Lexical error at line " +
    - errorLine + ", column " +
    - errorColumn + ". Encountered: " +
    - (EOFSeen ? "<EOF> " : ("\"" + addEscapes(String.valueOf(curChar)) + "\"") + " (" + (int)curChar + "), ") +
    - "after : \"" + addEscapes(errorAfter) + "\"");
    - }
    -
    - /**
    - * You can also modify the body of this method to customize your error messages.
    - * For example, cases like LOOP_DETECTED and INVALID_LEXICAL_STATE are not
    - * of end-users concern, so you can return something like :
    - *
    - * "Internal Error : Please file a bug report .... "
    - *
    - * from this method for such cases in the release version of your parser.
    - */
    - public String getMessage() {
    - return super.getMessage();
    - }
    -
    - /*
    - * Constructors of various flavors follow.
    - */
    -
    - public TokenMgrError() {
    - }
    -
    - public TokenMgrError(String message, int reason) {
    - super(message);
    - errorCode = reason;
    - }
    -
    - public TokenMgrError(boolean EOFSeen, int lexState, int errorLine, int errorColumn, String errorAfter, char curChar, int reason) {
    - this(LexicalError(EOFSeen, lexState, errorLine, errorColumn, errorAfter, curChar), reason);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/fixparser.sed b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/fixparser.sed
    deleted file mode 100644
    index 1aa5e62fec..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/fixparser.sed
    +++ /dev/null
    @@ -1,18 +0,0 @@
    -#!/usr/bin/sed
    -
    -#
    -# The SSE generally uses compiler setting to turn most warnings into errors.
    -# This is a little problematic for JavaCC generated files. We don't want
    -# to distribute a customized version of JavaCC nor is there any "template"
    -# mechanism. So, this simple sed script goes through the generated token
    -# manager and fixes a few things. If JavaCC changes the generated code,
    -# it's likely that this script will no longer do the right thing. Ditto with
    -# any version of JavaCC besides 3.2. Also, there's no guarantee that this
    -# script will even work with an arbitrary JavaCC grammar. It's only been tested
    -# with the current JSP EL grammar.
    -#
    -# Author: Ted A. Carroll (tcarroll@bea.com)
    -#
    -
    -s/static private final class LookaheadSuccess extends java.lang.Error { }/static private final class LookaheadSuccess extends java.lang.Error { \n private static final long serialVersionUID = 1L; \n }/g
    -
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/fixtm.sed b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/fixtm.sed
    deleted file mode 100644
    index 5c1dea401e..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/fixtm.sed
    +++ /dev/null
    @@ -1,27 +0,0 @@
    -#!/usr/bin/sed
    -
    -#
    -# The SSE generally uses compiler setting to turn most warnings into errors.
    -# This is a little problematic for JavaCC generated files. We don't want
    -# to distribute a customized version of JavaCC nor is there any "template"
    -# mechanism. So, this simple sed script goes through the generated token
    -# manager and fixes a few things. If JavaCC changes the generated code,
    -# it's likely that this script will no longer do the right thing. Ditto with
    -# any version of JavaCC besides 3.2. Also, there's no guarantee that this
    -# script will even work with an arbitrary JavaCC grammar. It's only been tested
    -# with the current JSP EL grammar.
    -#
    -# Author: Ted A. Carroll (tcarroll@bea.com)
    -#
    -
    -s/(int)(curChar >> 8)/curChar >> 8/g
    -
    -/^public Token getNextToken()/, /EOFLoop/{
    - /int kind;/ {d}
    - /Token specialToken = null;/{d}
    -}
    -
    -/^private final int jjMoveNfa_0(int startState, int curPos)/, /for(;;)/{
    - s/int j, kind = 0x7fffffff;/int kind = 0x7fffffff;/g
    - /int\[\] nextStates;/{d}
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/go.sh b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/go.sh
    deleted file mode 100644
    index b3d5aaa43c..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/jspel/go.sh
    +++ /dev/null
    @@ -1,9 +0,0 @@
    -#!/usr/bin/sh
    -
    -# Set JAVACC_HOME to the installation directory of javacc 3.2
    -$JAVACC_HOME/bin/jjtree.bat JSPEL.jjt
    -$JAVACC_HOME/bin/javacc.bat JSPEL.jj
    -sed -f fixtm.sed -i.bak JSPELParserTokenManager.java
    -diff -w JSPELParserTokenManager.java JSPELParserTokenManager.java.bak
    -sed -f fixparser.sed -i.bak JSPELParser.java
    -diff -w JSPELParser.java JSPELParser.java.bak
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/IndexWorkspaceJob.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/IndexWorkspaceJob.java
    deleted file mode 100644
    index c4a43efd51..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/IndexWorkspaceJob.java
    +++ /dev/null
    @@ -1,163 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.java.search;
    -
    -import java.util.ArrayList;
    -import java.util.List;
    -
    -import org.eclipse.core.resources.IFile;
    -import org.eclipse.core.resources.IResource;
    -import org.eclipse.core.resources.IResourceProxy;
    -import org.eclipse.core.resources.IResourceProxyVisitor;
    -import org.eclipse.core.resources.ResourcesPlugin;
    -import org.eclipse.core.runtime.CoreException;
    -import org.eclipse.core.runtime.IProgressMonitor;
    -import org.eclipse.core.runtime.IStatus;
    -import org.eclipse.core.runtime.Platform;
    -import org.eclipse.core.runtime.Status;
    -import org.eclipse.core.runtime.content.IContentType;
    -import org.eclipse.core.runtime.jobs.Job;
    -import org.eclipse.jst.jsp.core.internal.JSPCoreMessages;
    -import org.eclipse.jst.jsp.core.internal.provisional.contenttype.ContentTypeIdForJSP;
    -
    -/**
    - * Re-indexes the entire workspace.
    - * Ensures the JSP Index is in a stable state before performing a search.
    - * (like after a crash or if previous indexing was canceled)
    - *
    - * @author pavery
    - */
    -public class IndexWorkspaceJob extends Job {
    -
    - // for debugging
    - static final boolean DEBUG;
    - static {
    - String value= Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/jspindexmanager"); //$NON-NLS-1$
    - DEBUG= value != null && value.equalsIgnoreCase("true"); //$NON-NLS-1$
    - }
    -
    - /**
    - * Visitor that retrieves jsp project paths for all jsp files in the workspace,
    - * and adds the files to be indexed as they are encountered
    - */
    - private class JSPFileVisitor implements IResourceProxyVisitor {
    - private List files = new ArrayList();
    -
    - // monitor from the Job
    - IProgressMonitor fInnerMonitor = null;
    - public JSPFileVisitor(IProgressMonitor monitor) {
    - this.fInnerMonitor = monitor;
    - }
    -
    - public boolean visit(IResourceProxy proxy) throws CoreException {
    -
    - // check job canceled
    - if (this.fInnerMonitor != null && this.fInnerMonitor.isCanceled()) {
    - setCanceledState();
    - return false;
    - }
    -
    - // check search support canceled
    - if(JSPSearchSupport.getInstance().isCanceled()) {
    - setCanceledState();
    - return false;
    - }
    -
    - if (proxy.getType() == IResource.FILE) {
    -
    - // https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=3553
    - // check this before description
    - // check name before actually getting the file (less work)
    - if(getJspContentType().isAssociatedWith(proxy.getName())) {
    - IFile file = (IFile) proxy.requestResource();
    - if(file.exists()) {
    -
    - if(DEBUG)
    - System.out.println("(+) IndexWorkspaceJob adding file: " + file.getName()); //$NON-NLS-1$
    - // this call will check the ContentTypeDescription, so don't need to do it here.
    - //JSPSearchSupport.getInstance().addJspFile(file);
    - this.files.add(file);
    - this.fInnerMonitor.subTask(proxy.getName());
    -
    - // don't search deeper for files
    - return false;
    - }
    - }
    - }
    - return true;
    - }
    -
    - public final IFile[] getFiles() {
    - return (IFile[])this.files.toArray(new IFile[this.files.size()]);
    - }
    - }
    -
    - private IContentType fContentTypeJSP = null;
    -
    - public IndexWorkspaceJob() {
    - // pa_TODO may want to say something like "Rebuilding JSP Index" to be more
    - // descriptive instead of "Updating JSP Index" since they are 2 different things
    - super(JSPCoreMessages.JSPIndexManager_0);
    - setPriority(Job.LONG);
    - setSystem(true);
    - }
    -
    - IContentType getJspContentType() {
    - if(this.fContentTypeJSP == null)
    - this.fContentTypeJSP = Platform.getContentTypeManager().getContentType(ContentTypeIdForJSP.ContentTypeID_JSP);
    - return this.fContentTypeJSP;
    - }
    -
    - /**
    - * @see org eclipse.core.internal.jobs.InternalJob#run(org.eclipse.core.runtime.IProgressMonitor)
    - * for similar method
    - */
    - protected IStatus run(IProgressMonitor monitor) {
    -
    - IStatus status = Status.OK_STATUS;
    - Thread.currentThread().setPriority(Thread.MIN_PRIORITY);
    -
    - if(monitor.isCanceled()) {
    - setCanceledState();
    - return Status.CANCEL_STATUS;
    - }
    -
    - if(DEBUG)
    - System.out.println(" ^ IndexWorkspaceJob started: "); //$NON-NLS-1$
    -
    - long start = System.currentTimeMillis();
    -
    - try {
    - JSPFileVisitor visitor = new JSPFileVisitor(monitor);
    - // collect all jsp files
    - ResourcesPlugin.getWorkspace().getRoot().accept(visitor, IResource.DEPTH_INFINITE);
    - // request indexing
    - // this is pretty much like faking an entire workspace resource delta
    - JSPIndexManager.getInstance().indexFiles(visitor.getFiles());
    - }
    - catch (CoreException e) {
    - if(DEBUG)
    - e.printStackTrace();
    - }
    - finally {
    - monitor.done();
    - }
    - long finish = System.currentTimeMillis();
    - if(DEBUG)
    - System.out.println(" ^ IndexWorkspaceJob finished\n total time running: " + (finish - start)); //$NON-NLS-1$
    -
    - return status;
    - }
    -
    - void setCanceledState() {
    - JSPIndexManager.getInstance().setIndexState(JSPIndexManager.S_CANCELED);
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPIndexManager.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPIndexManager.java
    deleted file mode 100644
    index 07bec4376a..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPIndexManager.java
    +++ /dev/null
    @@ -1,728 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2006 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.jsp.core.internal.java.search;
    -
    -import java.io.File;
    -import java.util.ArrayList;
    -import java.util.HashMap;
    -import java.util.List;
    -
    -import org.eclipse.core.resources.IFile;
    -import org.eclipse.core.resources.IResource;
    -import org.eclipse.core.resources.IResourceChangeEvent;
    -import org.eclipse.core.resources.IResourceChangeListener;
    -import org.eclipse.core.resources.IResourceDelta;
    -import org.eclipse.core.resources.IResourceDeltaVisitor;
    -import org.eclipse.core.resources.ResourcesPlugin;
    -import org.eclipse.core.runtime.CoreException;
    -import org.eclipse.core.runtime.IPath;
    -import org.eclipse.core.runtime.IProgressMonitor;
    -import org.eclipse.core.runtime.IStatus;
    -import org.eclipse.core.runtime.Platform;
    -import org.eclipse.core.runtime.Plugin;
    -import org.eclipse.core.runtime.Status;
    -import org.eclipse.core.runtime.content.IContentType;
    -import org.eclipse.core.runtime.jobs.IJobChangeEvent;
    -import org.eclipse.core.runtime.jobs.Job;
    -import org.eclipse.core.runtime.jobs.JobChangeAdapter;
    -import org.eclipse.jdt.core.IJavaProject;
    -import org.eclipse.jdt.core.JavaCore;
    -import org.eclipse.jdt.internal.core.JavaModelManager;
    -import org.eclipse.jdt.internal.core.index.Index;
    -import org.eclipse.jdt.internal.core.search.indexing.IndexManager;
    -import org.eclipse.jst.jsp.core.internal.JSPCoreMessages;
    -import org.eclipse.jst.jsp.core.internal.JSPCorePlugin;
    -import org.eclipse.jst.jsp.core.internal.Logger;
    -import org.eclipse.jst.jsp.core.internal.provisional.contenttype.ContentTypeIdForJSP;
    -import org.eclipse.osgi.util.NLS;
    -import org.osgi.framework.Bundle;
    -
    -/**
    - * Responsible for keeping the JSP index up to date.
    - *
    - * @author pavery
    - */
    -public class JSPIndexManager {
    -
    - // for debugging
    - // TODO move this to Logger, as we have in SSE
    - static final boolean DEBUG;
    - static {
    - String value = Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/jspindexmanager"); //$NON-NLS-1$
    - DEBUG = value != null && value.equalsIgnoreCase("true"); //$NON-NLS-1$
    - }
    -
    - private static final String PKEY_INDEX_STATE = "jspIndexState"; //$NON-NLS-1$
    -
    - private IndexWorkspaceJob indexingJob = new IndexWorkspaceJob();
    -
    -
    -
    - // TODO: consider enumeration for these int constants
    - // set to S_UPDATING once a resource change comes in
    - // set to S_STABLE if:
    - // - we know we aren't interested in the resource change
    - // - or the ProcessFilesJob completes
    - // set to S_CANCELED if an indexing job is canceled
    - // set to S_REBUILDING if re-indexing the entire workspace
    -
    - // the int '0' is reserved for the default value if a preference is not
    - // there
    - /** index is reliable to use */
    - public static final int S_STABLE = 1;
    - /** index is being updated (from a resource delta) */
    - public static final int S_UPDATING = 2;
    - /** entire index is being rebuilt */
    - public static final int S_REBUILDING = 3;
    - /**
    - * indexing job was canceled in the middle of it, index needs to be
    - * rebuilt
    - */
    - public static final int S_CANCELED = 4;
    -
    - /** symbolic name for OSGI framework */
    - private final String OSGI_FRAMEWORK_ID = "org.eclipse.osgi"; //$NON-NLS-1$
    -
    - /**
    - * Collects JSP files from a resource delta.
    - */
    - private class JSPResourceVisitor implements IResourceDeltaVisitor {
    - // using hash map ensures only one of each file
    - // must be reset before every use
    - private HashMap jspFiles = null;
    -
    - public JSPResourceVisitor() {
    - this.jspFiles = new HashMap();
    - }
    -
    - public boolean visit(IResourceDelta delta) throws CoreException {
    -
    - // in case JSP search was canceled (eg. when closing the editor)
    - if (JSPSearchSupport.getInstance().isCanceled() || frameworkIsShuttingDown()) {
    - setCanceledState();
    - return false;
    - }
    -
    - try {
    - if (!isHiddenResource(delta.getFullPath())) {
    -
    - int kind = delta.getKind();
    - boolean added = (kind & IResourceDelta.ADDED) == IResourceDelta.ADDED;
    - boolean isInterestingChange = false;
    - if ((kind & IResourceDelta.CHANGED) == IResourceDelta.CHANGED) {
    - int flags = delta.getFlags();
    - // ignore things like marker changes
    - isInterestingChange = (flags & IResourceDelta.CONTENT) == IResourceDelta.CONTENT || (flags & IResourceDelta.REPLACED) == IResourceDelta.REPLACED;
    - }
    - boolean removed = (kind & IResourceDelta.REMOVED) == IResourceDelta.REMOVED;
    - if (added || isInterestingChange) {
    -
    - visitAdded(delta);
    - }
    - else if (removed) {
    - visitRemoved(delta);
    - }
    - }
    - }
    - catch (Exception e) {
    - // need to set state here somehow, and reindex
    - // otherwise index will be unreliable
    - if (DEBUG)
    - Logger.logException("Delta analysis may not be complete", e); //$NON-NLS-1$
    - }
    - // if the delta has children, continue to add/remove files
    - return true;
    - }
    -
    - private void visitRemoved(IResourceDelta delta) {
    - // handle cleanup
    - if (delta.getResource() != null) {
    - IResource r = delta.getResource();
    - if (r.getType() == IResource.FOLDER && r.exists()) {
    - deleteIndex((IFile) r);
    - }
    - }
    - }
    -
    - private void visitAdded(IResourceDelta delta) {
    - // https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=3553
    - // quick check if it's even JSP related to improve
    - // performance
    - // checking name from the delta before getting
    - // resource because it's lighter
    - String filename = delta.getFullPath().lastSegment();
    - if (filename != null && getJspContentType().isAssociatedWith(filename)) {
    - IResource r = delta.getResource();
    - if (r != null && r.exists() && r.getType() == IResource.FILE) {
    - this.jspFiles.put(r.getFullPath(), r);
    - }
    - }
    - }
    -
    - // https://bugs.eclipse.org/bugs/show_bug.cgi?id=93463
    - private boolean isHiddenResource(IPath p) {
    - String[] segments = p.segments();
    - for (int i = 0; i < segments.length; i++) {
    - if (segments[i].startsWith(".")) //$NON-NLS-1$
    - return true;
    - }
    - return false;
    - }
    -
    - private void deleteIndex(IFile folder) {
    - // cleanup index
    - IndexManager im = JavaModelManager.getIndexManager();
    - IPath folderPath = folder.getFullPath();
    - IPath indexLocation = JSPSearchSupport.getInstance().computeIndexLocation(folderPath);
    - im.removeIndex(indexLocation);
    - // im.indexLocations.removeKey(folderPath);
    - // im.indexLocations.removeValue(indexLocation);
    - File f = indexLocation.toFile();
    - f.delete();
    - }
    -
    - public IFile[] getFiles() {
    - return (IFile[]) this.jspFiles.values().toArray(new IFile[this.jspFiles.size()]);
    - }
    -
    - public void reset() {
    - this.jspFiles.clear();
    - }
    - }
    -
    - // end class JSPResourceVisitor
    -
    - /**
    - * schedules JSP files for indexing by Java core
    - */
    - private class ProcessFilesJob extends Job {
    - List fileList = null;
    - // keep track of how many files we've indexed
    - int lastFileCursor = 0;
    -
    - ProcessFilesJob(String taskName) {
    - super(taskName);
    - fileList = new ArrayList();
    - }
    -
    - synchronized void process(IFile[] files) {
    - for (int i = 0; i < files.length; i++) {
    - fileList.add(files[i]);
    - }
    - if (DEBUG) {
    - System.out.println("JSPIndexManager queuing " + files.length + " files"); //$NON-NLS-2$ //$NON-NLS-1$
    - }
    - }
    -
    - synchronized IFile[] getFiles() {
    - return (IFile[]) fileList.toArray(new IFile[fileList.size()]);
    - }
    -
    - synchronized void clearFiles() {
    - fileList.clear();
    - lastFileCursor = 0;
    - //System.out.println("cleared files");
    - }
    -
    - protected IStatus run(IProgressMonitor monitor) {
    - // System.out.println("indexer monitor" + monitor);
    - if (isCanceled(monitor) || frameworkIsShuttingDown()) {
    - setCanceledState();
    - return Status.CANCEL_STATUS;
    - }
    -
    - Thread.currentThread().setPriority(Thread.MIN_PRIORITY);
    - long start = System.currentTimeMillis();
    -
    - try {
    - IFile[] filesToBeProcessed = getFiles();
    -
    - if (DEBUG) {
    - System.out.println("JSPIndexManager indexing " + filesToBeProcessed.length + " files"); //$NON-NLS-2$ //$NON-NLS-1$
    - }
    - // API indicates that monitor is never null
    - monitor.beginTask("", filesToBeProcessed.length); //$NON-NLS-1$
    - JSPSearchSupport ss = JSPSearchSupport.getInstance();
    - String processingNFiles = ""; //$NON-NLS-1$
    -
    -
    - for (;lastFileCursor < filesToBeProcessed.length; lastFileCursor++) {
    -
    - if (isCanceled(monitor) || frameworkIsShuttingDown()) {
    - setCanceledState();
    - return Status.CANCEL_STATUS;
    - }
    - IFile file = filesToBeProcessed[lastFileCursor];
    - try {
    - IJavaProject project = JavaCore.create(file.getProject());
    - if (project.exists()) {
    - ss.addJspFile(file);
    - // JSP Indexer processing n files
    - processingNFiles = NLS.bind(JSPCoreMessages.JSPIndexManager_2, new String[]{Integer.toString((filesToBeProcessed.length - lastFileCursor))});
    - monitor.subTask(processingNFiles + " - " + file.getName()); //$NON-NLS-1$
    - monitor.worked(1);
    -
    - if (DEBUG) {
    - System.out.println("JSPIndexManager Job added file: " + file.getName()); //$NON-NLS-1$
    - }
    - }
    - }
    - catch (Exception e) {
    - // RATLC00284776
    - // ISSUE: we probably shouldn't be catching EVERY
    - // exception, but
    - // the framework only allows to return IStatus in
    - // order to communicate
    - // that something went wrong, which means the loop
    - // won't complete, and we would hit the same problem
    - // the next time.
    - //
    - // a possible solution is to keep track of the
    - // exceptions logged
    - // and only log a certain amt of the same one,
    - // otherwise skip it.
    - if (!frameworkIsShuttingDown()) {
    - String filename = file != null ? file.getFullPath().toString() : ""; //$NON-NLS-1$
    - Logger.logException("JSPIndexer problem indexing:" + filename, e); //$NON-NLS-1$
    - }
    - }
    - } // end for
    - }
    - finally {
    - // just in case something didn't follow API (monitor is null)
    - if (monitor != null)
    - monitor.done();
    - }
    -
    - // successfully finished, clear files list
    - clearFiles();
    -
    - long finish = System.currentTimeMillis();
    - long diff = finish - start;
    - if (DEBUG) {
    - fTotalTime += diff;
    - System.out.println("============================================================================"); //$NON-NLS-1$
    - System.out.println("this time: " + diff + " cumulative time for resource changed: " + fTotalTime); //$NON-NLS-1$ //$NON-NLS-2$
    - System.out.println("============================================================================"); //$NON-NLS-1$
    - }
    - return Status.OK_STATUS;
    - }
    -
    - private boolean isCanceled(IProgressMonitor runMonitor) {
    -
    - boolean canceled = false;
    - // check specific monitor passed into run method (the progress
    - // group in this case)
    - // check main search support canceled
    - if (runMonitor != null && runMonitor.isCanceled())
    - canceled = true;
    - else if (JSPSearchSupport.getInstance().isCanceled()) {
    - canceled = true;
    - if (runMonitor != null) {
    - runMonitor.setCanceled(true);
    - }
    - }
    - return canceled;
    - }
    -
    - }
    -
    - // end class ProcessFilesJob
    -
    - private static JSPIndexManager fSingleton = null;
    - private boolean initialized;
    - private boolean initializing = true;
    -
    - private IndexJobCoordinator indexJobCoordinator;
    - private IResourceChangeListener jspResourceChangeListener;
    -
    - private JSPResourceVisitor fVisitor = null;
    - private IContentType fContentTypeJSP = null;
    -
    - static long fTotalTime = 0;
    -
    - // Job for processing resource delta
    - private ProcessFilesJob processFilesJob = null;
    -
    - private JSPIndexManager() {
    - processFilesJob = new ProcessFilesJob(JSPCoreMessages.JSPIndexManager_0);
    - // only show in verbose mode
    - processFilesJob.setSystem(true);
    - processFilesJob.setPriority(Job.LONG);
    - processFilesJob.addJobChangeListener(new JobChangeAdapter() {
    - public void done(IJobChangeEvent event) {
    - super.done(event);
    - setStableState();
    - }
    - });
    - }
    -
    - public synchronized static JSPIndexManager getInstance() {
    -
    - if (fSingleton == null)
    - fSingleton = new JSPIndexManager();
    - return fSingleton;
    - }
    -
    - public void initialize() {
    -
    - JSPIndexManager singleInstance = getInstance();
    -
    -
    - if (!singleInstance.initialized) {
    - singleInstance.initialized = true;
    -
    - singleInstance.indexJobCoordinator = new IndexJobCoordinator();
    - singleInstance.jspResourceChangeListener = new JSPResourceChangeListener();
    -
    - // added as JobChange listener so JSPIndexManager can be smarter
    - // about when it runs
    - Platform.getJobManager().addJobChangeListener(singleInstance.indexJobCoordinator);
    -
    - // add JSPIndexManager to keep JSP Index up to date
    - // listening for IResourceChangeEvent.PRE_DELETE and
    - // IResourceChangeEvent.POST_CHANGE
    - ResourcesPlugin.getWorkspace().addResourceChangeListener(jspResourceChangeListener, IResourceChangeEvent.POST_CHANGE);
    -
    - // https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=5091
    - // makes sure IndexManager is aware of our indexes
    - saveIndexes();
    - singleInstance.initializing = false;
    -
    - }
    -
    - }
    -
    - synchronized void setIndexState(int state) {
    - if (DEBUG) {
    - System.out.println("JSPIndexManager setting index state to: " + state2String(state)); //$NON-NLS-1$
    - }
    - Plugin jspModelPlugin = JSPCorePlugin.getDefault();
    - jspModelPlugin.getPluginPreferences().setValue(PKEY_INDEX_STATE, state);
    - jspModelPlugin.savePluginPreferences();
    -
    - }
    -
    - private String state2String(int state) {
    - String s = "UNKNOWN"; //$NON-NLS-1$
    - switch (state) {
    - case (S_STABLE) :
    - s = "S_STABLE"; //$NON-NLS-1$
    - break;
    - case (S_UPDATING) :
    - s = "S_UPDATING"; //$NON-NLS-1$
    - break;
    - case (S_CANCELED) :
    - s = "S_CANCELED"; //$NON-NLS-1$
    - break;
    - case (S_REBUILDING) :
    - s = "S_REBUILDING"; //$NON-NLS-1$
    - break;
    - }
    - return s;
    - }
    -
    - int getIndexState() {
    - return JSPCorePlugin.getDefault().getPluginPreferences().getInt(PKEY_INDEX_STATE);
    - }
    -
    - void setUpdatingState() {
    - //if (getIndexState() != S_CANCELED)
    - setIndexState(S_UPDATING);
    - }
    -
    - void setCanceledState() {
    - setIndexState(JSPIndexManager.S_CANCELED);
    - }
    -
    - void setStableState() {
    - //if (getIndexState() != S_CANCELED)
    - setIndexState(S_STABLE);
    - }
    -
    - void setRebuildingState() {
    - setIndexState(S_REBUILDING);
    - }
    -
    - synchronized void rebuildIndexIfNeeded() {
    - if (getIndexState() != S_STABLE) {
    - rebuildIndex();
    - }
    - }
    -
    - void rebuildIndex() {
    -
    - if (DEBUG)
    - System.out.println("*** JSP Index unstable, requesting re-indexing"); //$NON-NLS-1$
    -
    - getIndexingJob().addJobChangeListener(new JobChangeAdapter() {
    - public void aboutToRun(IJobChangeEvent event) {
    - super.aboutToRun(event);
    - setRebuildingState();
    - }
    -
    - public void done(IJobChangeEvent event) {
    - super.done(event);
    - setStableState();
    - getIndexingJob().removeJobChangeListener(this);
    - }
    - });
    - // we're about to reindex everything anyway
    - getProcessFilesJob().clearFiles();
    - getIndexingJob().schedule();
    -
    - }
    -
    - /**
    - * Creates and schedules a Job to process collected files. All JSP
    - * indexing should be done through this method or processFiles(IFile file)
    - *
    - * @param files
    - */
    - final void indexFiles(IFile[] files) {
    - // don't use this rule
    - // https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=4931
    - // processFiles.setRule(new IndexFileRule());
    - processFilesJob.process(files);
    - }
    -
    -
    - /**
    - * Package protected for access by inner Job class in resourceChanged(...)
    - *
    - * @return
    - */
    - JSPResourceVisitor getVisitor() {
    -
    - if (this.fVisitor == null) {
    - this.fVisitor = new JSPResourceVisitor();
    - }
    - return this.fVisitor;
    - }
    -
    - // https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=5091
    - // makes sure IndexManager is aware of our indexes
    - void saveIndexes() {
    - IndexManager indexManager = JavaModelManager.getIndexManager();
    - IPath jspModelWorkingLocation = JSPSearchSupport.getInstance().getModelJspPluginWorkingLocation();
    -
    - File folder = new File(jspModelWorkingLocation.toOSString());
    - String[] files = folder.list();
    - String locay = ""; //$NON-NLS-1$
    - Index index = null;
    - try {
    - for (int i = 0; i < files.length; i++) {
    - if (files[i].toLowerCase().endsWith(".index")) { //$NON-NLS-1$
    - locay = jspModelWorkingLocation.toString() + "/" + files[i]; //$NON-NLS-1$
    - // reuse index file
    - index = new Index(locay, "Index for " + locay, true); //$NON-NLS-1$
    - indexManager.saveIndex(index);
    - }
    - }
    - }
    - catch (Exception e) {
    - // we should be shutting down, want to shut down quietly
    - if (DEBUG)
    - e.printStackTrace();
    - }
    - }
    -
    - IContentType getJspContentType() {
    - if (this.fContentTypeJSP == null)
    - this.fContentTypeJSP = Platform.getContentTypeManager().getContentType(ContentTypeIdForJSP.ContentTypeID_JSP);
    - return this.fContentTypeJSP;
    - }
    -
    - /**
    - * A check to see if the OSGI framework is shutting down.
    - *
    - * @return true if the System Bundle is stopped (ie. the framework is
    - * shutting down)
    - */
    - boolean frameworkIsShuttingDown() {
    - // in the Framework class there's a note:
    - // set the state of the System Bundle to STOPPING.
    - // this must be done first according to section 4.19.2 from the OSGi
    - // R3 spec.
    - boolean shuttingDown = Platform.getBundle(OSGI_FRAMEWORK_ID).getState() == Bundle.STOPPING;
    - if (DEBUG && shuttingDown) {
    - System.out.println("JSPIndexManager: system is shutting down!"); //$NON-NLS-1$
    - }
    - return shuttingDown;
    - }
    -
    -
    - public void shutdown() {
    -
    - // stop listening
    - ResourcesPlugin.getWorkspace().removeResourceChangeListener(jspResourceChangeListener);
    -
    -
    - // stop any searching
    - JSPSearchSupport.getInstance().setCanceled(true);
    -
    - // stop listening to jobs
    - Platform.getJobManager().removeJobChangeListener(indexJobCoordinator);
    -
    -
    - int maxwait = 5000;
    - if (processFilesJob != null) {
    - processFilesJob.cancel();
    - }
    - // attempt to make sure this indexing job is litterally
    - // done before continuing, since we are shutting down
    - waitTillNotRunning(maxwait, processFilesJob);
    -
    - if (indexingJob != null) {
    - indexingJob.cancel();
    - }
    - waitTillNotRunning(maxwait, processFilesJob);
    - }
    -
    - private void waitTillNotRunning(int maxSeconds, Job job) {
    - int pauseTime = 10;
    - int maxtries = maxSeconds / pauseTime;
    - int count = 0;
    - while (count++ < maxtries && job.getState() == Job.RUNNING) {
    - try {
    - Thread.sleep(pauseTime);
    - // System.out.println("count: " + count + " max: " +
    - // maxtries);
    - }
    - catch (InterruptedException e) {
    - Logger.logException(e);
    - }
    - }
    - }
    -
    - private class IndexJobCoordinator extends JobChangeAdapter {
    -
    - public void aboutToRun(IJobChangeEvent event) {
    - Job jobToCoordinate = event.getJob();
    - if (isJobToAvoid(jobToCoordinate)) {
    - // job will be rescheduled when the job we
    - // are avoiding (eg. build) is done
    - getProcessFilesJob().cancel();
    - //System.out.println("cancel:" + jobToCoordinate.getName());
    - }
    - }
    -
    - public void done(IJobChangeEvent event) {
    -
    - Job jobToCoordinate = event.getJob();
    - if (isJobToAvoid(jobToCoordinate)) {
    - if (getProcessFilesJob().getFiles().length > 0) {
    - getProcessFilesJob().schedule(500);
    - //System.out.println("schedule:" + jobToCoordinate.getName());
    - }
    -
    -
    - }
    - }
    -
    - private boolean isJobToAvoid(Job jobToCoordinate) {
    - boolean result = false;
    - if (jobToCoordinate.belongsTo(ResourcesPlugin.FAMILY_AUTO_BUILD) || jobToCoordinate.belongsTo(ResourcesPlugin.FAMILY_MANUAL_BUILD) || jobToCoordinate.belongsTo(ResourcesPlugin.FAMILY_AUTO_REFRESH)) {
    - result = true;
    - }
    - return result;
    -
    - }
    -
    - }
    -
    - private class JSPResourceChangeListener implements IResourceChangeListener {
    -
    -
    - /**
    - * @see org.eclipse.core.resources.IResourceChangeListener#resourceChanged(org.eclipse.core.resources.IResourceChangeEvent)
    - */
    - public void resourceChanged(IResourceChangeEvent event) {
    -
    - if (isInitializing())
    - return;
    -
    - // ignore resource changes if already rebuilding
    - if (getIndexState() == S_REBUILDING)
    - return;
    - // previously canceled, needs entire index rebuild
    - if (getIndexState() == S_CANCELED) {
    - // rebuildIndex();
    - // just resume indexing
    - getProcessFilesJob().schedule(500);
    - //System.out.println("schedule: resource changed, previously canceled");
    - return;
    - }
    -
    - IResourceDelta delta = event.getDelta();
    - if (delta != null) {
    - // only care about adds or changes right now...
    - int kind = delta.getKind();
    - boolean added = (kind & IResourceDelta.ADDED) == IResourceDelta.ADDED;
    - boolean changed = (kind & IResourceDelta.CHANGED) == IResourceDelta.CHANGED;
    - if (added || changed) {
    -
    - // only analyze the full (starting at root) delta
    - // hierarchy
    - if (delta.getFullPath().toString().equals("/")) { //$NON-NLS-1$
    - try {
    - JSPResourceVisitor v = getVisitor();
    - // clear from last run
    - v.reset();
    - // count files, possibly do this in a job too...
    - // don't include PHANTOM resources
    - delta.accept(v, false);
    -
    - // process files from this delta
    - IFile[] files = v.getFiles();
    - if (files.length > 0) {
    - /*
    - * Job change listener should set back to
    - * stable when finished
    - */
    - setUpdatingState();
    - // processFiles(files);
    - indexFiles(files);
    - }
    - }
    - catch (CoreException e) {
    - // need to set state here somehow, and reindex
    - // otherwise index will be unreliable
    - if (DEBUG)
    - Logger.logException(e);
    - }
    - catch (Exception e) {
    - // need to set state here somehow, and reindex
    - // otherwise index will be unreliable
    - if (DEBUG)
    - Logger.logException(e);
    - }
    - }
    - }
    -
    - }
    - }
    -
    - }
    -
    - IndexWorkspaceJob getIndexingJob() {
    - return indexingJob;
    - }
    -
    - ProcessFilesJob getProcessFilesJob() {
    - return processFilesJob;
    - }
    -
    - boolean isInitializing() {
    - return initializing;
    - }
    -
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPPathIndexer.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPPathIndexer.java
    deleted file mode 100644
    index 9afdda906b..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPPathIndexer.java
    +++ /dev/null
    @@ -1,109 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.java.search;
    -
    -import java.util.HashMap;
    -
    -import org.eclipse.core.resources.IFile;
    -import org.eclipse.core.resources.IResource;
    -import org.eclipse.core.resources.IResourceProxy;
    -import org.eclipse.core.resources.IResourceProxyVisitor;
    -import org.eclipse.core.resources.ResourcesPlugin;
    -import org.eclipse.core.runtime.CoreException;
    -import org.eclipse.core.runtime.IPath;
    -import org.eclipse.core.runtime.Platform;
    -import org.eclipse.core.runtime.content.IContentDescription;
    -import org.eclipse.core.runtime.content.IContentType;
    -import org.eclipse.jdt.core.search.IJavaSearchScope;
    -import org.eclipse.jdt.core.search.SearchPattern;
    -import org.eclipse.jst.jsp.core.internal.provisional.contenttype.ContentTypeIdForJSP;
    -
    -/**
    - * pa_TODO Still need to take into consideration:
    - * - focus in workspace
    - * - search pattern
    - *
    - * @author pavery
    - */
    -public class JSPPathIndexer {
    -
    - // for debugging
    - static final boolean DEBUG;
    - static {
    - String value= Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/jspsearch"); //$NON-NLS-1$
    - DEBUG= value != null && value.equalsIgnoreCase("true"); //$NON-NLS-1$
    - }
    -
    - // visitor that retrieves jsp project paths for all jsp files in the workspace
    - class JSPFileVisitor implements IResourceProxyVisitor {
    - // hash map forces only one of each file
    - private HashMap fPaths = new HashMap();
    - IJavaSearchScope fScope = null;
    - SearchPattern fPattern = null;
    -
    - public JSPFileVisitor(SearchPattern pattern, IJavaSearchScope scope) {
    - this.fPattern = pattern;
    - this.fScope = scope;
    - }
    -
    - public boolean visit(IResourceProxy proxy) throws CoreException {
    -
    - if(JSPSearchSupport.getInstance().isCanceled())
    - return false;
    -
    - if (proxy.getType() == IResource.FILE) {
    -
    - IContentType contentTypeJSP = Platform.getContentTypeManager().getContentType(ContentTypeIdForJSP.ContentTypeID_JSP);
    - // https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=3553
    - // check this before description
    - // check name before actually getting the file (less work)
    - if(contentTypeJSP.isAssociatedWith(proxy.getName())) {
    -
    - IFile file = (IFile)proxy.requestResource();
    - IContentDescription contentDescription = file.getContentDescription();
    - String ctId = null;
    - if (contentDescription != null) {
    - ctId = contentDescription.getContentType().getId();
    - }
    - if (ContentTypeIdForJSP.ContentTypeID_JSP.equals(ctId)) {
    - if (this.fScope.encloses(proxy.requestFullPath().toString())) {
    -
    - if (DEBUG)
    - System.out.println("adding selected index path:" + file.getParent().getFullPath()); //$NON-NLS-1$
    -
    - fPaths.put(file.getParent().getFullPath(), JSPSearchSupport.getInstance().computeIndexLocation(file.getParent().getFullPath()));
    - }
    - }
    - }
    - // don't search deeper for files
    - return false;
    - }
    - return true;
    - }
    -
    - public IPath[] getPaths() {
    - return (IPath[]) fPaths.values().toArray(new IPath[fPaths.size()]);
    - }
    - }
    -
    - public IPath[] getVisibleJspPaths(SearchPattern pattern, IJavaSearchScope scope) {
    -
    - JSPFileVisitor jspFileVisitor = new JSPFileVisitor(pattern, scope);
    - try {
    - ResourcesPlugin.getWorkspace().getRoot().accept(jspFileVisitor, 0);
    - }
    - catch (CoreException e) {
    - e.printStackTrace();
    - }
    - return jspFileVisitor.getPaths();
    - }
    -}
    -
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchDocument.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchDocument.java
    deleted file mode 100644
    index 78332d11ff..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchDocument.java
    +++ /dev/null
    @@ -1,257 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 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.jsp.core.internal.java.search;
    -
    -import java.io.IOException;
    -import java.util.HashMap;
    -import java.util.Iterator;
    -
    -import org.eclipse.core.resources.IFile;
    -import org.eclipse.core.resources.IResource;
    -import org.eclipse.core.resources.IWorkspaceRoot;
    -import org.eclipse.core.resources.ResourcesPlugin;
    -import org.eclipse.core.runtime.CoreException;
    -import org.eclipse.core.runtime.IPath;
    -import org.eclipse.core.runtime.NullProgressMonitor;
    -import org.eclipse.core.runtime.Path;
    -import org.eclipse.jdt.core.search.SearchParticipant;
    -import org.eclipse.jface.text.Position;
    -import org.eclipse.jst.jsp.core.internal.Logger;
    -import org.eclipse.jst.jsp.core.internal.java.IJSPTranslation;
    -import org.eclipse.jst.jsp.core.internal.java.JSPTranslation;
    -import org.eclipse.jst.jsp.core.internal.java.JSPTranslationAdapter;
    -import org.eclipse.jst.jsp.core.internal.java.JSPTranslationExtension;
    -import org.eclipse.jst.jsp.core.internal.modelhandler.ModelHandlerForJSP;
    -import org.eclipse.wst.sse.core.StructuredModelManager;
    -import org.eclipse.wst.sse.core.internal.exceptions.UnsupportedCharsetExceptionWithDetail;
    -import org.eclipse.wst.sse.core.internal.provisional.IModelManager;
    -import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
    -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
    -import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
    -
    -
    -/**
    - * Created with a .jsp file, but should appear to be a .java file for indexing
    - * and searching purposes. There are purposely few fields in this class, and
    - * those fields are lightweight since it's possible for many JSP search
    - * documents to exist in memory at one time (eg. after importing a project
    - * with a large number of JSP files)
    - *
    - * @author pavery
    - */
    -public class JSPSearchDocument {
    -
    - private String UNKNOWN_PATH = "**path unknown**"; //$NON-NLS-1$
    - private String fJSPPathString = UNKNOWN_PATH;
    - private String fCUPath = UNKNOWN_PATH;
    - private SearchParticipant fParticipant = null;
    - private long fLastModifiedStamp;
    - private char[] fCachedCharContents;
    -
    - /**
    - * @param file
    - * @param participant
    - * @throws CoreException
    - */
    - public JSPSearchDocument(String filePath, SearchParticipant participant) {
    -
    - this.fJSPPathString = filePath;
    - this.fParticipant = participant;
    - }
    -
    - public SearchParticipant getParticipant() {
    - return this.fParticipant;
    - }
    -
    - /**
    - * @see org.eclipse.jdt.core.search.SearchDocument#getCharContents()
    - */
    - public char[] getCharContents() {
    -
    - if(fCachedCharContents == null || isDirty()) {
    - JSPTranslation trans = getJSPTranslation();
    - fCachedCharContents = trans != null ? trans.getJavaText().toCharArray() : new char[0];
    - fCUPath = trans.getJavaPath();
    - }
    - return fCachedCharContents;
    - }
    -
    - public String getJavaText() {
    - return new String(getCharContents());
    - }
    -
    - private IModelManager getModelManager() {
    - return StructuredModelManager.getModelManager();
    - }
    -
    - /**
    - * It's not recommended for clients to hold on to this JSPTranslation
    - * since it's kind of large. If possible, hold on to the
    - * JSPSearchDocument, which is more of a lightweight proxy.
    - *
    - * @return the JSPTranslation for the jsp file, or null if it's an
    - * unsupported file.
    - */
    - public final JSPTranslationExtension getJSPTranslation() {
    - JSPTranslationExtension translation = null;
    - IFile jspFile = getFile();
    - if (!JSPSearchSupport.isJsp(jspFile))
    - return translation;
    -
    - IStructuredModel model = null;
    - try {
    - // get existing model for read, then get document from it
    - IModelManager modelManager = getModelManager();
    - if (modelManager != null) {
    - jspFile.refreshLocal(IResource.DEPTH_ZERO, new NullProgressMonitor());
    - model = modelManager.getModelForRead(jspFile);
    - }
    - // handle unsupported
    - if (model instanceof IDOMModel) {
    - IDOMModel xmlModel = (IDOMModel)model;
    - setupAdapterFactory(xmlModel);
    - IDOMDocument doc = xmlModel.getDocument();
    - JSPTranslationAdapter adapter = (JSPTranslationAdapter) doc.getAdapterFor(IJSPTranslation.class);
    - translation = adapter.getJSPTranslation();
    - }
    - }
    - catch (IOException e) {
    - Logger.logException(e);
    - }
    - catch (CoreException e) {
    - Logger.logException(e);
    - }
    - catch (UnsupportedCharsetExceptionWithDetail e) {
    - // no need to log this. Just consider it an invalid file for our
    - // purposes.
    - // Logger.logException(e);
    - }
    - finally {
    - if (model != null)
    - model.releaseFromRead();
    - }
    - return translation;
    - }
    -
    - /**
    - * add the factory for JSPTranslationAdapter here
    - *
    - * @param sm
    - */
    - private void setupAdapterFactory(IStructuredModel sm) {
    - ModelHandlerForJSP.ensureTranslationAdapterFactory(sm);
    - }
    -
    - /**
    - * the path to the Java compilation unit
    - *
    - * @see org.eclipse.jdt.core.search.SearchDocument#getPath()
    - */
    - public String getPath() {
    - // caching the path since it's expensive to get translation
    - // important that isDirty() check is second to cache modification stamp
    - if(this.fCUPath == null || isDirty() || this.fCUPath == UNKNOWN_PATH) {
    - JSPTranslation trans = getJSPTranslation();
    - if(trans != null) {
    - this.fCUPath = trans.getJavaPath();
    - // save since it's expensive to calculate again later
    - fCachedCharContents = trans.getJavaText().toCharArray();
    - }
    - }
    - return fCUPath != null ? fCUPath : UNKNOWN_PATH;
    - }
    -
    - public int getJspOffset(int javaOffset) {
    - // copied from JSPTranslation
    - int result = -1;
    - int offsetInRange = 0;
    - Position jspPos, javaPos = null;
    - JSPTranslation trans = getJSPTranslation();
    - if (trans != null) {
    - HashMap java2jspMap = trans.getJava2JspMap();
    -
    - // iterate all mapped java ranges
    - Iterator it = java2jspMap.keySet().iterator();
    - while (it.hasNext()) {
    - javaPos = (Position) it.next();
    - // need to count the last position as included
    - if (!javaPos.includes(javaOffset) && !(javaPos.offset + javaPos.length == javaOffset))
    - continue;
    -
    - offsetInRange = javaOffset - javaPos.offset;
    - jspPos = (Position) java2jspMap.get(javaPos);
    -
    - if (jspPos != null)
    - result = jspPos.offset + offsetInRange;
    - else {
    - Logger.log(Logger.ERROR, "jspPosition was null!" + javaOffset); //$NON-NLS-1$
    - }
    - break;
    - }
    - }
    - return result;
    - }
    -
    - public IFile getFile() {
    - IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
    - IPath jspPath = new Path(this.fJSPPathString);
    - IFile jspFile = root.getFile(jspPath);
    - if (!jspFile.exists()) {
    - // possibly outside workspace
    - jspFile = root.getFileForLocation(jspPath);
    - }
    - return jspFile;
    - }
    -
    -
    - private boolean isDirty() {
    - boolean modified = false;
    - IFile f = getFile();
    - if(f != null) {
    - long currentStamp = f.getModificationStamp();
    - if(currentStamp != fLastModifiedStamp)
    - modified = true;
    - fLastModifiedStamp = currentStamp;
    - }
    - return modified;
    - }
    -
    - public void release() {
    - // nothing to do now since JSPTranslation is created on the fly
    - }
    -
    - /**
    - * for debugging
    - */
    - public String toString() {
    - return "[JSPSearchDocument:" + this.fJSPPathString + "]"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
    - }
    -
    - /*
    - * (non-Javadoc)
    - *
    - * @see org.eclipse.jdt.core.search.SearchDocument#getEncoding()
    - */
    - public String getEncoding() {
    - // TODO Auto-generated method stub
    - return null;
    - }
    -
    - /*
    - * (non-Javadoc)
    - *
    - * @see org.eclipse.jdt.core.search.SearchDocument#getByteContents()
    - */
    - public byte[] getByteContents() {
    - // TODO Auto-generated method stub
    - return null;
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchParticipant.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchParticipant.java
    deleted file mode 100644
    index 6e84b2b1de..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchParticipant.java
    +++ /dev/null
    @@ -1,106 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2006 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.jsp.core.internal.java.search;
    -
    -import java.util.ArrayList;
    -import java.util.List;
    -
    -import org.eclipse.core.resources.IFile;
    -import org.eclipse.core.runtime.CoreException;
    -import org.eclipse.core.runtime.IPath;
    -import org.eclipse.core.runtime.IProgressMonitor;
    -import org.eclipse.core.runtime.Platform;
    -import org.eclipse.jdt.core.search.IJavaSearchScope;
    -import org.eclipse.jdt.core.search.SearchDocument;
    -import org.eclipse.jdt.core.search.SearchEngine;
    -import org.eclipse.jdt.core.search.SearchParticipant;
    -import org.eclipse.jdt.core.search.SearchPattern;
    -import org.eclipse.jdt.core.search.SearchRequestor;
    -
    -/**
    - * Integration of JSP w/ java search.
    - *
    - * @author pavery
    - */
    -public class JSPSearchParticipant extends SearchParticipant {
    -
    - // for debugging
    - private static final boolean DEBUG = calculateValue();
    -
    - private static boolean calculateValue() {
    - String value = Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/jspsearch"); //$NON-NLS-1$
    - boolean debug = value != null && value.equalsIgnoreCase("true"); //$NON-NLS-1$
    - return debug;
    - }
    -
    - /**
    - * Important to never return null here or else Java search participation
    - * will break.
    - */
    - public SearchDocument getDocument(String documentPath) {
    - SearchDocument sDoc = JSPSearchSupport.getInstance().getSearchDocument(documentPath);
    -
    - if (sDoc == null) {
    - // return a dummy doc here so search participation doesn't break
    - return new NullSearchDocument(documentPath);
    - }
    - return sDoc;
    - }
    -
    - public String getDescription() {
    - return "JSP"; //$NON-NLS-1$
    - }
    -
    - public IPath[] selectIndexes(SearchPattern pattern, IJavaSearchScope scope) {
    - JSPPathIndexer indexer = new JSPPathIndexer();
    - return indexer.getVisibleJspPaths(pattern, scope);
    - }
    -
    - public void indexDocument(SearchDocument document, IPath indexPath) {
    - if (!(document instanceof JavaSearchDocumentDelegate))
    - return;
    -
    - // use Java search indexing
    - SearchEngine.getDefaultSearchParticipant().indexDocument(document, indexPath);
    - }
    -
    - public void locateMatches(SearchDocument[] indexMatches, SearchPattern pattern, IJavaSearchScope scope, SearchRequestor requestor, IProgressMonitor monitor) throws CoreException {
    -
    - if (monitor != null && monitor.isCanceled())
    - return;
    -
    - // filter out null matches
    - List filtered = new ArrayList();
    - SearchDocument match = null;
    - for (int i = 0; i < indexMatches.length; i++) {
    - if (DEBUG)
    - System.out.println("found possible matching JavaSearchDocumentDelegate: " + indexMatches[i]); //$NON-NLS-1$
    - match = indexMatches[i];
    - if (match != null) {
    - // some matches may be null, or if the index is out of date,
    - // the file may not even exist
    - if (match instanceof JavaSearchDocumentDelegate && ((JavaSearchDocumentDelegate) match).getFile().exists())
    - filtered.add(match);
    - }
    - }
    -
    - indexMatches = (SearchDocument[]) filtered.toArray(new SearchDocument[filtered.size()]);
    - SearchEngine.getDefaultSearchParticipant().locateMatches(indexMatches, pattern, scope, requestor, monitor);
    - }
    -
    - /**
    - * @see org.eclipse.jdt.core.search.SearchParticipant#getDocument(org.eclipse.core.resources.IFile)
    - */
    - public SearchDocument getDocument(IFile file) {
    - // never gets called?
    - return null;
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchScope.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchScope.java
    deleted file mode 100644
    index 9e5cd4f227..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchScope.java
    +++ /dev/null
    @@ -1,125 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.java.search;
    -
    -import java.util.ArrayList;
    -import java.util.Arrays;
    -import java.util.List;
    -
    -import org.eclipse.core.resources.IResourceProxy;
    -import org.eclipse.core.runtime.IPath;
    -import org.eclipse.jdt.core.IJavaElement;
    -import org.eclipse.jdt.core.search.IJavaSearchScope;
    -
    -/**
    - * Used to constrain JSP/java search to certain paths and elements.
    - * @author pavery
    - */
    -public class JSPSearchScope implements IJavaSearchScope {
    -
    - private boolean fEnclosesAll = false;
    - private List fResourcePaths = null;
    - private List fJavaElements = null;
    -
    - public JSPSearchScope() {
    - // empty constructor just returns true for everything
    - // everything is in scope
    - this.fEnclosesAll = true;
    - init();
    - }
    -
    - public JSPSearchScope(String[] resourceStringPath) {
    - init();
    - fResourcePaths.addAll(Arrays.asList(resourceStringPath));
    - }
    -
    - public JSPSearchScope(IJavaElement[] javaElement) {
    - init();
    - fJavaElements.addAll(Arrays.asList(javaElement));
    - }
    -
    - private void init() {
    - this.fResourcePaths = new ArrayList();
    - this.fJavaElements = new ArrayList();
    - }
    -
    - public boolean encloses(String resourcePathString) {
    -
    - if (this.fEnclosesAll)
    - return true;
    - else if (enclosesPath(resourcePathString))
    - return true;
    -
    - return false;
    - }
    -
    - public boolean encloses(IJavaElement element) {
    -
    - // pa_TOD implement
    - if (this.fEnclosesAll)
    - return true;
    -
    - return true;
    - }
    -
    - public boolean encloses(IResourceProxy element) {
    -
    - if (this.fEnclosesAll)
    - return true;
    - else if (enclosesPath(element.requestFullPath().toOSString()))
    - return true;
    -
    - return true;
    - }
    -
    - public void addPath(String path) {
    - this.fResourcePaths.add(path);
    - }
    -
    - public void addElement(IJavaElement element) {
    - this.fJavaElements.add(element);
    - }
    -
    - private boolean enclosesPath(String possible) {
    -
    - String[] paths = (String[]) fResourcePaths.toArray(new String[fResourcePaths.size()]);
    - for (int i = 0; i < paths.length; i++) {
    - if (possible.equals(paths[i]))
    - return true;
    - }
    - return false;
    - }
    -
    - public String getDescription() {
    -
    - return "JSPSearchScope"; //$NON-NLS-1$
    - }
    -
    - public IPath[] enclosingProjectsAndJars() {
    - return (IPath[]) fResourcePaths.toArray(new IPath[fResourcePaths.size()]);
    - }
    -
    - public boolean includesBinaries() {
    - return false;
    - }
    -
    - public boolean includesClasspaths() {
    - return false;
    - }
    -
    - public void setIncludesBinaries(boolean includesBinaries) {
    - // do nothing
    - }
    -
    - public void setIncludesClasspaths(boolean includesClasspaths) {
    - // do nothing
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchSupport.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchSupport.java
    deleted file mode 100644
    index 398982ab0e..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchSupport.java
    +++ /dev/null
    @@ -1,554 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 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.jsp.core.internal.java.search;
    -
    -import java.io.File;
    -import java.util.zip.CRC32;
    -
    -import org.eclipse.core.resources.IFile;
    -import org.eclipse.core.resources.IWorkspaceRunnable;
    -import org.eclipse.core.resources.ResourcesPlugin;
    -import org.eclipse.core.runtime.CoreException;
    -import org.eclipse.core.runtime.IPath;
    -import org.eclipse.core.runtime.IProgressMonitor;
    -import org.eclipse.core.runtime.IStatus;
    -import org.eclipse.core.runtime.NullProgressMonitor;
    -import org.eclipse.core.runtime.Path;
    -import org.eclipse.core.runtime.Platform;
    -import org.eclipse.core.runtime.Status;
    -import org.eclipse.core.runtime.content.IContentType;
    -import org.eclipse.core.runtime.jobs.Job;
    -import org.eclipse.jdt.core.IJavaElement;
    -import org.eclipse.jdt.core.search.IJavaSearchConstants;
    -import org.eclipse.jdt.core.search.IJavaSearchScope;
    -import org.eclipse.jdt.core.search.SearchDocument;
    -import org.eclipse.jdt.core.search.SearchEngine;
    -import org.eclipse.jdt.core.search.SearchPattern;
    -import org.eclipse.jdt.core.search.SearchRequestor;
    -import org.eclipse.jdt.internal.core.JavaModelManager;
    -import org.eclipse.jst.jsp.core.internal.JSPCoreMessages;
    -import org.eclipse.jst.jsp.core.internal.JSPCorePlugin;
    -import org.eclipse.jst.jsp.core.internal.Logger;
    -import org.eclipse.jst.jsp.core.internal.java.JSP2ServletNameUtil;
    -import org.eclipse.jst.jsp.core.internal.provisional.contenttype.ContentTypeIdForJSP;
    -
    -/**
    - * Central access to java indexing and search. All contact between JDT indexing
    - * and Searching should be done through here.
    - *
    - * Clients should access the methods of this class via the single instance via
    - * <code>getInstance()</code>.
    - *
    - * @author pavery
    - */
    -public class JSPSearchSupport {
    -
    - // for debugging
    - static final boolean DEBUG;
    - static {
    - String value = Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/jspsearch"); //$NON-NLS-1$
    - DEBUG = value != null && value.equalsIgnoreCase("true"); //$NON-NLS-1$
    - }
    -
    - private static JSPSearchSupport singleton = null;
    -
    - private JSPSearchParticipant fParticipant = null;
    -
    - private IPath fJspPluginLocation = null;
    -
    - // pa_TODO may be slow (esp for indexing entire workspace)
    - private final CRC32 fChecksumCalculator = new CRC32();
    -
    - /** main cancel montior for all search support */
    - private final IProgressMonitor fMonitor = new NullProgressMonitor();
    -
    - private JSPSearchSupport() {
    - // force use of single instance
    - }
    -
    - /**
    - * This operation ensures that the live resource's search markers show up in
    - * the open editor. It also allows the ability to pass in a ProgressMonitor
    - */
    - private class SearchJob extends Job implements IJavaSearchConstants {
    -
    - String fSearchText = ""; //$NON-NLS-1$
    -
    - IJavaSearchScope fScope = null;
    -
    - int fSearchFor = FIELD;
    -
    - int fLimitTo = ALL_OCCURRENCES;
    -
    - int fMatchMode = SearchPattern.R_PATTERN_MATCH;
    -
    - boolean fIsCaseSensitive = false;
    -
    - SearchRequestor fRequestor = null;
    -
    - IJavaElement fElement = null;
    -
    - // constructor w/ java element
    - public SearchJob(IJavaElement element, IJavaSearchScope scope, SearchRequestor requestor) {
    -
    - super(JSPCoreMessages.JSP_Search + element.getElementName());
    - this.fElement = element;
    - this.fScope = scope;
    - this.fRequestor = requestor;
    - }
    -
    - // constructor w/ search text
    - public SearchJob(String searchText, IJavaSearchScope scope, int searchFor, int limitTo, int matchMode, boolean isCaseSensitive, SearchRequestor requestor) {
    -
    - super(JSPCoreMessages.JSP_Search + searchText);
    - this.fSearchText = searchText;
    - this.fScope = scope;
    - this.fSearchFor = searchFor;
    - this.fLimitTo = limitTo;
    - this.fMatchMode = matchMode;
    - this.fIsCaseSensitive = isCaseSensitive;
    - this.fRequestor = requestor;
    - }
    -
    - public IStatus run(IProgressMonitor jobMonitor) {
    -
    - if (jobMonitor != null && jobMonitor.isCanceled())
    - return Status.CANCEL_STATUS;
    - if (JSPSearchSupport.getInstance().isCanceled())
    - return Status.CANCEL_STATUS;
    -
    - SearchPattern javaSearchPattern = null;
    - // if an element is available, use that to create search pattern
    - // (eg. LocalVariable)
    - // otherwise use the text and other paramters
    - if (this.fElement != null)
    - javaSearchPattern = SearchPattern.createPattern(this.fElement, this.fLimitTo);
    - else
    - javaSearchPattern = SearchPattern.createPattern(this.fSearchText, this.fSearchFor, this.fLimitTo, this.fMatchMode);
    -
    - if (javaSearchPattern != null) {
    - JSPSearchParticipant[] participants = { getSearchParticipant() };
    - SearchEngine engine = new SearchEngine();
    - try {
    - if (jobMonitor != null)
    - jobMonitor.beginTask("", IProgressMonitor.UNKNOWN); //$NON-NLS-1$
    - engine.search(javaSearchPattern, participants, this.fScope, this.fRequestor, jobMonitor);
    - } catch (CoreException e) {
    - if (DEBUG)
    - Logger.logException(e);
    - }
    - // non-CoreExceptions will permanently stall the Worker thread
    - catch (Exception e) {
    - if (DEBUG)
    - Logger.logException(e);
    - } finally {
    - if (jobMonitor != null)
    - jobMonitor.done();
    - }
    - }
    - return Status.OK_STATUS;
    - }
    - }
    -
    - // end SearchJob
    - /**
    - * Runnable forces caller to wait until finished (as opposed to using a Job)
    - */
    - private class SearchRunnable implements IWorkspaceRunnable, IJavaSearchConstants {
    -
    - String fSearchText = ""; //$NON-NLS-1$
    -
    - IJavaSearchScope fScope = null;
    -
    - int fSearchFor = FIELD;
    -
    - int fLimitTo = ALL_OCCURRENCES;
    -
    - int fMatchMode = SearchPattern.R_PATTERN_MATCH;
    -
    - boolean fIsCaseSensitive = false;
    -
    - SearchRequestor fRequestor = null;
    -
    - IJavaElement fElement = null;
    -
    - // constructor w/ java element
    - public SearchRunnable(IJavaElement element, IJavaSearchScope scope, SearchRequestor requestor) {
    -
    - this.fElement = element;
    - this.fScope = scope;
    - this.fRequestor = requestor;
    - }
    -
    - // constructor w/ search text
    - public SearchRunnable(String searchText, IJavaSearchScope scope, int searchFor, int limitTo, int matchMode, boolean isCaseSensitive, SearchRequestor requestor) {
    -
    - this.fSearchText = searchText;
    - this.fScope = scope;
    - this.fSearchFor = searchFor;
    - this.fLimitTo = limitTo;
    - this.fMatchMode = matchMode;
    - this.fIsCaseSensitive = isCaseSensitive;
    - this.fRequestor = requestor;
    - }
    -
    - public void run(IProgressMonitor monitor) throws CoreException {
    -
    - if (monitor != null && monitor.isCanceled())
    - return;
    - if (JSPSearchSupport.getInstance().isCanceled())
    - return;
    -
    - SearchPattern javaSearchPattern = null;
    - // if an element is available, use that to create search pattern
    - // (eg. LocalVariable)
    - // otherwise use the text and other paramters
    - if (this.fElement != null)
    - javaSearchPattern = SearchPattern.createPattern(this.fElement, fLimitTo);
    - else
    - javaSearchPattern = SearchPattern.createPattern(fSearchText, fSearchFor, fLimitTo, fMatchMode);
    -
    - if (javaSearchPattern != null) {
    - JSPSearchParticipant[] participants = { getSearchParticipant() };
    - SearchEngine engine = new SearchEngine();
    - try {
    - if (monitor != null)
    - monitor.beginTask("", 0); //$NON-NLS-1$
    - engine.search(javaSearchPattern, participants, fScope, fRequestor, monitor);
    - } catch (CoreException e) {
    - Logger.logException(e);
    - //throw e;
    - }
    - // non-CoreExceptions will permanently stall the Worker thread
    - catch (Exception e) {
    - Logger.logException(e);
    - } finally {
    - if (monitor != null)
    - monitor.done();
    - }
    - }
    - }
    - }
    -
    - // end SearchRunnable
    -
    - /**
    - * Clients should access the methods of this class via the single instance
    - * via getInstance()
    - *
    - * @return
    - */
    - public synchronized static JSPSearchSupport getInstance() {
    -
    - if (singleton == null)
    - singleton = new JSPSearchSupport();
    - return singleton;
    - }
    -
    - /**
    - * Utility method to check if a file is a jsp file (since this is done
    - * frequently)
    - */
    - public static boolean isJsp(IFile file) {
    - // (pa) 20051025 removing deep content type check
    - // because this method is called frequently
    - // and IO is expensive
    - boolean isJsp = false;
    -
    - if (file != null && file.exists()) {
    -
    - IContentType contentTypeJSP = Platform.getContentTypeManager().getContentType(ContentTypeIdForJSP.ContentTypeID_JSP);
    - // check this before description, it's less expensive
    - if (contentTypeJSP.isAssociatedWith(file.getName())) {
    - isJsp = true;
    - }
    - }
    -
    - return isJsp;
    - }
    -
    - /**
    - * schedules a search document representing this JSP file for indexing (by
    - * the java indexer)
    - *
    - * @param file
    - * the JSP file
    - * @return true if indexing was successful, false otherwise
    - * @throws CoreException
    - */
    - public SearchDocument addJspFile(IFile file) {
    - if (JSPSearchSupport.getInstance().isCanceled() || !file.isAccessible()) {
    - return null;
    - }
    -
    - if (DEBUG)
    - System.out.println("adding JSP file:" + file.getFullPath()); //$NON-NLS-1$
    -
    - // create
    - SearchDocument delegate = createSearchDocument(file);
    - // null if not a jsp file
    - if (delegate != null) {
    - try {
    - getSearchParticipant().scheduleDocumentIndexing(delegate, computeIndexLocation(file.getParent().getFullPath()));
    - } catch (Exception e) {
    - // ensure that failure here doesn't keep other documents from
    - // being indexed
    - // if peformed in a batch call (like JSPIndexManager)
    - if (DEBUG)
    - e.printStackTrace();
    - }
    - }
    -
    - if (DEBUG)
    - System.out.println("scheduled" + delegate + "for indexing"); //$NON-NLS-1$ //$NON-NLS-2$
    -
    - return delegate;
    - }
    -
    - /**
    - * Perform a java search w/ the given parameters. Runs in a background Job
    - * (results may still come in after this method call)
    - *
    - * @param searchText
    - * the string of text to search on
    - * @param searchFor
    - * IJavaSearchConstants.TYPE, METHOD, FIELD, PACKAGE, etc...
    - * @param limitTo
    - * IJavaSearchConstants.DECLARATIONS,
    - * IJavaSearchConstants.REFERENCES,
    - * IJavaSearchConstants.IMPLEMENTORS, or
    - * IJavaSearchConstants.ALL_OCCURRENCES
    - * @param matchMode
    - * allow * wildcards or not
    - * @param isCaseSensitive
    - * @param requestor
    - * passed in to accept search matches (and do "something" with
    - * them)
    - */
    - public void search(String searchText, IJavaSearchScope scope, int searchFor, int limitTo, int matchMode, boolean isCaseSensitive, SearchRequestor requestor) {
    -
    - JSPIndexManager.getInstance().rebuildIndexIfNeeded();
    -
    - SearchJob job = new SearchJob(searchText, scope, searchFor, limitTo, matchMode, isCaseSensitive, requestor);
    - setCanceled(false);
    - job.setUser(true);
    - // https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=5032
    - // pops up user operation blocked dialog if you perform a long search,
    - // then open a file because it locks the workspace
    - //job.setRule(ResourcesPlugin.getWorkspace().getRoot());
    - job.schedule();
    - }
    -
    - /**
    - * Search for an IJavaElement, constrained by the given parameters. Runs in
    - * a background Job (results may still come in after this method call)
    - *
    - * @param element
    - * @param scope
    - * @param requestor
    - */
    - public void search(IJavaElement element, IJavaSearchScope scope, SearchRequestor requestor) {
    -
    - JSPIndexManager.getInstance().rebuildIndexIfNeeded();
    -
    - SearchJob job = new SearchJob(element, scope, requestor);
    - setCanceled(false);
    - job.setUser(true);
    - // https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=5032
    - //job.setRule(ResourcesPlugin.getWorkspace().getRoot());
    - job.schedule();
    - }
    -
    - /**
    - * Search for an IJavaElement, constrained by the given parameters. Runs in
    - * an IWorkspace runnable (results will be reported by the end of this
    - * method)
    - *
    - * @param element
    - * @param scope
    - * @param requestor
    - */
    - public void searchRunnable(IJavaElement element, IJavaSearchScope scope, SearchRequestor requestor) {
    -
    - JSPIndexManager.getInstance().rebuildIndexIfNeeded();
    -
    - SearchRunnable searchRunnable = new SearchRunnable(element, scope, requestor);
    - try {
    - setCanceled(false);
    - ResourcesPlugin.getWorkspace().run(searchRunnable, JSPSearchSupport.getInstance().getProgressMonitor());
    - } catch (CoreException e) {
    - e.printStackTrace();
    - }
    - }
    -
    - /**
    - * @param jspFile
    - * @return SearchDocument if the file is not null, exists, and is a JSP
    - * file, otherwise null.
    - */
    - private SearchDocument createSearchDocument(IFile jspFile) {
    -
    - JavaSearchDocumentDelegate delegate = null;
    - if (jspFile != null && jspFile.exists() && isJsp(jspFile)) {
    -
    - delegate = new JavaSearchDocumentDelegate(new JSPSearchDocument(jspFile.getFullPath().toString(), getSearchParticipant()));
    - }
    - return delegate;
    -
    - }
    -
    - /**
    - * Centralized place to access JSPSearchDocuments (used by
    - * JSPSearchParticipant and JSPSearchRequestor)
    - *
    - * @param searchDocPath
    - * @param doc
    - * @return the JSPSearchDocument or null if one is not found
    - */
    - public SearchDocument getSearchDocument(String searchDocPath) {
    -
    - SearchDocument delegate = null;
    - IFile f = fileForCUPath(searchDocPath);
    - if (f != null) {
    - delegate = createSearchDocument(f);
    - } else {
    - // handle failure case... (file deleted maybe?)
    - }
    - return delegate;
    - }
    -
    - /**
    - * Unmangles the searchDocPath and returns the corresponding JSP file.
    - *
    - * @param searchDocPath
    - */
    - private IFile fileForCUPath(String searchDocPath) {
    -
    - String[] split = searchDocPath.split("/"); //$NON-NLS-1$
    - String classname = split[split.length - 1];
    -
    - // ignore anything but .java matches (like .class binary matches)
    - if(!searchDocPath.endsWith(".java")) { //$NON-NLS-1$
    - return null;
    - }
    -
    - String filePath = JSP2ServletNameUtil.unmangle(classname);
    -
    - // try absolute path
    - IFile f = ResourcesPlugin.getWorkspace().getRoot().getFileForLocation(new Path(filePath));
    - // workspace relative then
    - if(f == null) {
    - // https://bugs.eclipse.org/bugs/show_bug.cgi?id=86009
    - // must have a project name as well
    - // which would mean >= 2 path segments
    - IPath path = new Path(filePath);
    - if(path.segmentCount() >= 2) {
    - f = ResourcesPlugin.getWorkspace().getRoot().getFile(path);
    - }
    - }
    - return f;
    - }
    -
    - JSPSearchParticipant getSearchParticipant() {
    -
    - if (this.fParticipant == null)
    - this.fParticipant = new JSPSearchParticipant();
    - return this.fParticipant;
    - }
    -
    - // This is called from JSPPathIndexer
    - // pa_TODO
    - //how can we make sure participant indexLocations are updated at startup?
    - public final IPath computeIndexLocation(IPath containerPath) {
    -
    - IPath indexLocation = null;
    - // we don't want to inadvertently use a JDT Index
    - // we want to be sure to use the Index from the JSP location
    - //Object obj = indexLocations.get(containerPath);
    - //if (obj != null) {
    - // indexLocation = (String) obj;
    - //} else {
    - // create index entry
    - String pathString = containerPath.toOSString();
    - this.fChecksumCalculator.reset();
    - this.fChecksumCalculator.update(pathString.getBytes());
    - String fileName = Long.toString(this.fChecksumCalculator.getValue()) + ".index"; //$NON-NLS-1$
    - // this is the only difference from
    - // IndexManager#computeIndexLocation(...)
    - indexLocation = getModelJspPluginWorkingLocation().append(fileName);
    -
    - // pa_TODO need to add to java path too, so JDT search support knows
    - // there should be a non internal way to do this.
    - // https://bugs.eclipse.org/bugs/show_bug.cgi?id=77564
    - JavaModelManager.getIndexManager().indexLocations.put(containerPath, indexLocation);
    - //}
    - return indexLocation;
    - }
    -
    - // copied from JDT IndexManager
    - public IPath getModelJspPluginWorkingLocation() {
    -
    - if (this.fJspPluginLocation != null)
    - return this.fJspPluginLocation;
    -
    - // Append the folder name "jspsearch" to keep the state location area cleaner
    - IPath stateLocation = JSPCorePlugin.getDefault().getStateLocation().append("jspsearch");
    -
    - // pa_TODO workaround for
    - // https://bugs.eclipse.org/bugs/show_bug.cgi?id=62267
    - // copied from IndexManager
    - String device = stateLocation.getDevice();
    - if (device != null && device.charAt(0) == '/')
    - stateLocation = stateLocation.setDevice(device.substring(1));
    -
    - // ensure that it exists on disk
    - File folder = new File(stateLocation.toOSString());
    - if (!folder.isDirectory()) {
    - try {
    - folder.mkdir();
    - }
    - catch (SecurityException e) {
    - }
    - }
    -
    - return this.fJspPluginLocation = stateLocation;
    - }
    -
    - /**
    - * JSP Indexing and Search jobs check this
    - *
    - * @return
    - */
    - public synchronized final void setCanceled(boolean cancel) {
    - //System.out.println("search support monitor" + fMonitor);
    - fMonitor.setCanceled(cancel);
    - }
    -
    - /**
    - * JSP Indexing and Search jobs check this
    - *
    - * @return
    - */
    - public synchronized final boolean isCanceled() {
    -
    - return fMonitor.isCanceled();
    - }
    -
    - /**
    - * JSP Indexing and Search jobs check this
    - *
    - * @return
    - */
    - public final IProgressMonitor getProgressMonitor() {
    -
    - return this.fMonitor;
    - }
    -}
    diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JavaSearchDocumentDelegate.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JavaSearchDocumentDelegate.java
    deleted file mode 100644
    index 2e07148e39..0000000000
    --- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JavaSearchDocumentDelegate.java
    +++ /dev/null
    @@ -1,71 +0,0 @@
    -/*******************************************************************************
    - * Copyright (c) 2004, 2005 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.jsp.core.internal.java.search;
    -
    -import org.eclipse.core.resources.IFile;
    -import org.eclipse.jdt.core.search.SearchDocument;
    -import org.eclipse.jst.jsp.core.internal.java.JSPTranslationExtension;
    -
    -
    -/**
    - * Wrapper method to set getPath() path to be the path of the compilation unit
    - * for the jsp file. (since it's a final method, it needs to be set via constructor)
    - *
    - * @author pavery
    - */
    -public class JavaSearchDocumentDelegate extends SearchDocument {
    -
    - private JSPSearchDocument fJSPSearchDoc = null;
    -
    - public JavaSearchDocumentDelegate(JSPSearchDocument jspSearchDoc) {
    -
    - super(jspSearchDoc.getPath(), jspSearchDoc.getParticipant());
    - this.fJSPSearchDoc = jspSearchDoc;