diff options
Diffstat (limited to 'jsf/plugins/org.eclipse.jst.jsf.common/src/org/eclipse/jst/jsf/context/symbol/source/AbstractContextSymbolFactory.java')
-rw-r--r-- | jsf/plugins/org.eclipse.jst.jsf.common/src/org/eclipse/jst/jsf/context/symbol/source/AbstractContextSymbolFactory.java | 148 |
1 files changed, 0 insertions, 148 deletions
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common/src/org/eclipse/jst/jsf/context/symbol/source/AbstractContextSymbolFactory.java b/jsf/plugins/org.eclipse.jst.jsf.common/src/org/eclipse/jst/jsf/context/symbol/source/AbstractContextSymbolFactory.java deleted file mode 100644 index 149250c71..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common/src/org/eclipse/jst/jsf/context/symbol/source/AbstractContextSymbolFactory.java +++ /dev/null @@ -1,148 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 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.context.symbol.source; - -import java.util.List; - -import org.eclipse.core.runtime.IAdaptable; -import org.eclipse.jst.jsf.common.JSFCommonPlugin; -import org.eclipse.jst.jsf.context.symbol.ISymbol; - -/** - * Must be sub-classed by all contextSymbolFactory extension point implementors - * to create context configured symbols - * - * <p><b>Provisional API - subject to change</b></p> - * - * @author cbateman - * - */ -public abstract class AbstractContextSymbolFactory -{ - /** - * @param symbolName -- the symbol name - * @param scope -- the scope of the symbol - * @param context -- the context; must be supported (call supports(context)) - * @param problems -- populated with problems found during symbol construction. - * @return a new ISymbol configured for the name, scope and context or null - * if the arguments are invalid but some other reason a symbol cannot be created. - * @throws IllegalArgumentException if this method is called with context - * for which supports(context) == false or if scope does not conform - * to exactly one of the ISymbolConstants.SYMBOL_SCOPE_* constants - * @deprecated Use the new create method instead. - */ - @Deprecated - public final ISymbol create(final String symbolName, final int scope, final IAdaptable context, final List problems) - { - if (!supports(context)) - { - throw new IllegalArgumentException("Unsupported context"); //$NON-NLS-1$ - } - else if (!ISymbolConstants.isValid(scope)) - { - throw new IllegalArgumentException("Unsupported symbol constant:"+scope); //$NON-NLS-1$ - } - - try - { - return internalCreate(symbolName, scope, context, problems, null); - } - catch (final Exception e) - { - JSFCommonPlugin.log(e, "During execution of context symbol factory: "+this.getClass().getName()); //$NON-NLS-1$ - return null; - } - } - - /** - * The same as create(symbolName, scope, context, problems), except it calls - * the internalCreate with additionalInfo. By default this has the same - * effect. - * - * @param symbolName - * @param scope - * @param context - * @param problems - * @param additionalInfo - * @return the new Symbol - */ - public final ISymbol create(final String symbolName, final int scope, final IAdaptable context, final List problems, final IAdditionalContextSymbolInfo additionalInfo) - { - if (!supports(context)) - { - throw new IllegalArgumentException("Unsupported context"); //$NON-NLS-1$ - } - else if (!ISymbolConstants.isValid(scope)) - { - throw new IllegalArgumentException("Unsupported symbol constant:"+scope); //$NON-NLS-1$ - } - - try - { - return internalCreate(symbolName, scope, context, problems, additionalInfo); - } - catch (final Exception e) - { - JSFCommonPlugin.log(e, "During execution of context symbol factory: "+this.getClass().getName()); //$NON-NLS-1$ - return null; - } - } - - - /** - * Use of this method is DISCOURAGED. It is preferable to move functionality - * to the new internalCreate method and have this one call it with null. - * - * This method will eventually be deprecated and removed - * - * @param symbolName - * @param scope - * @param context - * @param problems -- see problems arg on create - * @return a new ISymbol for the name, scope and context; may return null - * @deprecated Use the new internalCreate instead. Ignore the new - * additionalInfo parameter if you do not need it. - */ - @Deprecated - protected ISymbol internalCreate(final String symbolName, final int scope, final IAdaptable context, final List problems) - { - // do nothing by default - return null; - } - - /** - * NOTE: when migrating to this method, ensure that the other internalCreate - * method in your implementation doesn't create inconsistent behaviour. - * - * @param symbolName - * @param scope - * @param context Will conform to restrictions you set out in supports(). - * @param problems CURRENTLY IGNORED. - * @param additionalInfo May be null - * @since 3.0 - * @return a new ISymbol for the name, scope and context, but with the option - * to also consult additionalInfo passed by the framework. may return null. - */ - protected ISymbol internalCreate(final String symbolName, final int scope, final IAdaptable context, final List problems, final IAdditionalContextSymbolInfo additionalInfo) - { - // by default, call the other internalCreate for backward compatibility. - // implementers can override to do things with the additional info - return internalCreate(symbolName, scope, context, problems); - } - - /** - * @param context - * @return true if this factory supports the context - */ - public abstract boolean supports(IAdaptable context); -} |