Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/designtime/internal/resolver/ViewBasedTaglibResolverFactory.java')
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/designtime/internal/resolver/ViewBasedTaglibResolverFactory.java248
1 files changed, 0 insertions, 248 deletions
diff --git a/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/designtime/internal/resolver/ViewBasedTaglibResolverFactory.java b/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/designtime/internal/resolver/ViewBasedTaglibResolverFactory.java
deleted file mode 100644
index 472f762e0..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/designtime/internal/resolver/ViewBasedTaglibResolverFactory.java
+++ /dev/null
@@ -1,248 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 Oracle 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:
- * Oracle Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.designtime.internal.resolver;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.jst.jsf.common.runtime.internal.view.model.common.ITagElement;
-import org.eclipse.jst.jsf.context.IModelContext;
-import org.eclipse.jst.jsf.context.resolver.structureddocument.IDOMContextResolver;
-import org.eclipse.jst.jsf.context.resolver.structureddocument.IMetadataContextResolver;
-import org.eclipse.jst.jsf.context.resolver.structureddocument.ITaglibContextResolver;
-import org.eclipse.jst.jsf.context.resolver.structureddocument.IWorkspaceContextResolver;
-import org.eclipse.jst.jsf.context.resolver.structureddocument.internal.IStructuredDocumentContextResolverFactory2;
-import org.eclipse.jst.jsf.context.resolver.structureddocument.internal.ITextRegionContextResolver;
-import org.eclipse.jst.jsf.context.structureddocument.IStructuredDocumentContext;
-import org.eclipse.jst.jsf.designtime.DTAppManagerUtil;
-import org.eclipse.jst.jsf.designtime.internal.view.XMLViewDefnAdapter;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-/**
- * A Taglib resolver that delegates to the design tieme view handler so that it
- * is independent of the tag definition type in use. Document must still be an
- * IStructuredDocument.
- *
- */
-public class ViewBasedTaglibResolverFactory implements
-IStructuredDocumentContextResolverFactory2, IAdaptable
-{
- public IDOMContextResolver getDOMContextResolver(
- final IStructuredDocumentContext context)
- {
- // no dom resolver
- return null;
- }
-
- public IMetadataContextResolver getMetadataContextResolver(
- final IStructuredDocumentContext context)
- {
- // no metadata resolver
- return null;
- }
-
- public ITaglibContextResolver getTaglibContextResolver(
- final IStructuredDocumentContext context)
- {
- if (context.getStructuredDocument() instanceof IStructuredDocument)
- {
- final IWorkspaceContextResolver resolver = INSTANCE
- .getWorkspaceContextResolver(context);
- if (resolver != null)
- {
- final IProject project = resolver.getProject();
- final IResource res = resolver.getResource();
-
- if (project != null && res instanceof IFile)
- {
- final IFile file = (IFile) res;
-
- try
- {
- return new ViewBasedTaglibResolver(context, file,
- project);
- }
- catch (final IllegalArgumentException e)
- {
- // the constructor will throw this if the view
- // definition
- // adapter for file is not of the base type it needs
- // just fall through, no need to log
- }
- }
- }
- }
-
- return null;
- }
-
- public ITaglibContextResolver getTaglibContextResolverFromDelegates(
- IStructuredDocumentContext context) {
- throw new UnsupportedOperationException();
- }
-
- public <T> T getResolver(final IStructuredDocumentContext context, final Class<T> clazz) {
- if (clazz.equals(ITagElementResolver.class) ||
- clazz.equals(ITaglibContextResolver.class)) {
- return (T)getTaglibContextResolver(context);
- }
- return null;
- }
- /**
- * A taglib resolver that goes through the design time view handler to
- * resolve tags. This allows us to abstract the definition format (XML) from
- * the kind of tag handlers that process it (JSP vs. Facelets vs. others).
- *
- */
- private static class ViewBasedTaglibResolver implements
- ITaglibContextResolver, ITagElementResolver
- {
- private final IProject _project;
- private final IFile _file;
- private final IStructuredDocumentContext _context;
-
- /**
- * @param context
- * @param file
- * @param project
- */
- private ViewBasedTaglibResolver(
- final IStructuredDocumentContext context, final IFile file,
- final IProject project)
- {
- super();
- _context = context;
- _file = file;
- _project = project;
-
- if (DTAppManagerUtil.getXMLViewDefnAdapter(project, file) == null)
- {
- throw new IllegalArgumentException(
- "View definition adapter not found"); //$NON-NLS-1$
- }
- }
-
- public String getTagPrefixForURI(final String uri)
- {
- final XMLViewDefnAdapter adapter = DTAppManagerUtil
- .getXMLViewDefnAdapter(_file);
-
- if (adapter != null)
- {
- return adapter.getPrefix(uri, _context.getStructuredDocument());
- }
- return null;
- }
-
- public String getTagURIForNodeName(final Node node)
- {
- final XMLViewDefnAdapter adapter = DTAppManagerUtil
- .getXMLViewDefnAdapter(_file);
- final Element element = getElement(node);
- if (element != null && adapter != null)
- {
- return adapter.getNamespace(element, _context.getStructuredDocument());
- }
- return null;
- }
-
- public NodeList getTagsByNamespaceURI(final String uri,
- final String tagName)
- {
- // TODO: what is the purpose of this API? deprecate?
- return null;
- }
-
- public boolean hasTag(final Node node)
- {
- // it is sufficient to check that the view adapter will give us
- // a non-null tag element
- return _getTagElement(node) != null;
- }
-
- public boolean canResolveContext(final IModelContext modelContext)
- {
- // must be a JSP page
- final Object adapter = modelContext.getAdapter(IStructuredDocumentContext.class);
-
- if (adapter instanceof IStructuredDocumentContext)
- {
- return ((IStructuredDocumentContext)adapter).getStructuredDocument() instanceof IStructuredDocument;
- }
- return false;
- }
-
- private Element getElement(final Node node)
- {
- Element checkNode = null;
-
- if (node instanceof Element)
- {
- checkNode = (Element) node;
- }
- else if (node instanceof Attr)
- {
- checkNode = ((Attr) node).getOwnerElement();
- }
- return checkNode;
- }
-
- private ITagElement _getTagElement(final Node node)
- {
- final Element element = getElement(node);
-
- final XMLViewDefnAdapter adapter =
- DTAppManagerUtil.getXMLViewDefnAdapter(_project, _file);
-
- if (element != null && adapter != null)
- {
- return adapter.mapToTagElement(element, _context
- .getStructuredDocument());
- }
- return null;
- }
-
- public ITagElement getTagElement(final Node node) {
- return _getTagElement(node);
- }
-
- }
-
-
- public ITextRegionContextResolver getTextRegionResolver(
- final IStructuredDocumentContext context)
- {
- // no text region resolver
- return null;
- }
-
- public IWorkspaceContextResolver getWorkspaceContextResolver(
- final IStructuredDocumentContext context)
- {
- // no workspace resolver
- return null;
- }
-
- public Object getAdapter(final Class adapter)
- {
- if (adapter.isInstance(this))
- {
- return this;
- }
- return null;
- }
-
-}

Back to the top