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/symbols/ValueExpressionSymbolFactory.java')
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/designtime/internal/symbols/ValueExpressionSymbolFactory.java169
1 files changed, 0 insertions, 169 deletions
diff --git a/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/designtime/internal/symbols/ValueExpressionSymbolFactory.java b/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/designtime/internal/symbols/ValueExpressionSymbolFactory.java
deleted file mode 100644
index 724fd9484..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/designtime/internal/symbols/ValueExpressionSymbolFactory.java
+++ /dev/null
@@ -1,169 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 Oracle Corporation.
- * 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:
- * Cameron Bateman/Oracle - initial API and implementation
- *
- ********************************************************************************/
-
-package org.eclipse.jst.jsf.designtime.internal.symbols;
-
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jst.jsf.common.internal.types.ValueType;
-import org.eclipse.jst.jsf.context.resolver.structureddocument.IDOMContextResolver;
-import org.eclipse.jst.jsf.context.resolver.structureddocument.IStructuredDocumentContextResolverFactory;
-import org.eclipse.jst.jsf.context.structureddocument.IStructuredDocumentContext;
-import org.eclipse.jst.jsf.context.structureddocument.IStructuredDocumentContextFactory;
-import org.eclipse.jst.jsf.context.symbol.ISymbol;
-import org.eclipse.jst.jsf.context.symbol.source.AbstractContextSymbolFactory;
-import org.eclipse.jst.jsf.context.symbol.source.IAdditionalContextSymbolInfo;
-import org.eclipse.jst.jsf.designtime.symbols.FileContextUtil;
-import org.eclipse.jst.jsf.designtime.symbols.JSFSymbolFactory;
-import org.eclipse.jst.jsf.validation.internal.appconfig.AppConfigValidationUtil;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMAttr;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-/**
- *
- * @author cbateman
- *
- */
-public class ValueExpressionSymbolFactory extends AbstractContextSymbolFactory
-{
- private final JSFSymbolFactory _factory = new JSFSymbolFactory();
-
- @Override
- protected ISymbol internalCreate(final String symbolName, final int scope,
- final IAdaptable context, final List problems,
- final IAdditionalContextSymbolInfo additionalInfo)
- {
- final Node node = getNode(context);
- final IStructuredDocumentContext sContext = getContext(context);
-
- final String valueAttrName = additionalInfo
- .getValueExpressionAttributeName();
- if (node != null && valueAttrName != null)
- {
- Element element = null;
-
- if (node instanceof Element)
- {
- element = (Element) node;
- }
- else
- {
- element = ((Attr) node).getOwnerElement();
- }
-
- return createSymbol(symbolName, sContext, valueAttrName, element);
- }
-
- return null;
- }
-
-
- private ISymbol createSymbol(final String name,
- final IStructuredDocumentContext sContext,
- final String valueAttrName, Element element)
- {
- if (element instanceof IDOMElement) // implicit null check.
- {
- final Attr attr = element.getAttributeNode(valueAttrName);
-
- if (attr instanceof IDOMAttr && attr.getValue() != null)
- {
- // TODO: the extract expression method belongs in more
- // generic code
- final String elText = AppConfigValidationUtil
- .extractELExpression(attr.getValue()).getElText();
- final IFile file = FileContextUtil
- .deriveIFileFromContext(sContext);
- final IStructuredDocumentContext elContext = IStructuredDocumentContextFactory.INSTANCE
- .getContext(sContext.getStructuredDocument(), attr);
- if (elText != null && file != null && elContext != null)
- {
- final ValueType valueExpr = _factory
- .getValueTypeFromEL(elText, elContext, file);
- if (valueExpr != null)
- {
- final IJavaProject javaProject = getJavaProject(sContext);
- return _factory.createJavaComponentSymbol(name, valueExpr, null, javaProject);
- }
- }
- }
- }
- return null;
- }
-
-
- @Override
- protected ISymbol internalCreate(final String symbolName, final int scope,
- final IAdaptable context, final List problems)
- {
- // need additionalInfo
- return null;
- }
-
- @Override
- public boolean supports(final IAdaptable context)
- {
- final Node node = getNode(context);
- final IJavaProject javaProject = getJavaProject(context);
- return javaProject != null && (node instanceof Element) || (node instanceof Attr);
- }
-
- private Node getNode(final IAdaptable context)
- {
- final IStructuredDocumentContext sContext = getContext(context);
- if (sContext != null)
- {
- final IDOMContextResolver domResolver = IStructuredDocumentContextResolverFactory.INSTANCE
- .getDOMContextResolver(sContext);
- if (domResolver != null)
- {
- return domResolver.getNode();
- }
- }
- return null;
- }
-
- private IJavaProject getJavaProject(final IAdaptable context)
- {
- final IStructuredDocumentContext sContext = getContext(context);
-
- if (sContext != null)
- {
- final IProject project = FileContextUtil
- .getProject((IStructuredDocumentContext) sContext
- .getAdapter(IStructuredDocumentContext.class));
- if (project != null)
- {
- return JavaCore.create(project);
- }
- }
- return null;
- }
-
- private IStructuredDocumentContext getContext(final IAdaptable context)
- {
- if (context != null)
- {
- return (IStructuredDocumentContext) context
- .getAdapter(IStructuredDocumentContext.class);
- }
- return null;
- }
-}

Back to the top