diff options
Diffstat (limited to 'jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal')
61 files changed, 0 insertions, 5760 deletions
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/JSFCommonRuntimePlugin.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/JSFCommonRuntimePlugin.java deleted file mode 100644 index 6f9d5f14c..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/JSFCommonRuntimePlugin.java +++ /dev/null @@ -1,76 +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.common.runtime.internal; - -import org.eclipse.core.runtime.ILog; -import org.eclipse.core.runtime.IStatus; -import org.eclipse.core.runtime.Plugin; -import org.eclipse.core.runtime.Status; -import org.osgi.framework.BundleContext; - -/** - * The activator class controls the plug-in life cycle - */ -public class JSFCommonRuntimePlugin extends Plugin { - - /** - * The plug-in ID - */ - public static final String PLUGIN_ID = "CommonComponentPlugin"; //$NON-NLS-1$ - - // The shared instance - private static JSFCommonRuntimePlugin plugin; - - /** - * The constructor - */ - public JSFCommonRuntimePlugin() { - // empty constructor - } - - /* - * (non-Javadoc) - * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext) - */ - public void start(final BundleContext context) throws Exception { - super.start(context); - plugin = this; - } - - /* - * (non-Javadoc) - * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext) - */ - public void stop(final BundleContext context) throws Exception { - plugin = null; - super.stop(context); - } - - /** - * Returns the shared instance - * - * @return the shared instance - */ - public static JSFCommonRuntimePlugin getDefault() { - return plugin; - } - - /** - * @param message - * @param t - */ - public static void log(final String message, final Throwable t) - { - final ILog log = getDefault().getLog(); - final IStatus status = new Status(IStatus.ERROR, PLUGIN_ID, message, t); - log.log(status); - } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/debug/ComponentTreeMessage.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/debug/ComponentTreeMessage.java deleted file mode 100644 index f6687f461..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/debug/ComponentTreeMessage.java +++ /dev/null @@ -1,246 +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.common.runtime.internal.debug; - -import org.eclipse.jst.jsf.common.runtime.internal.model.component.ComponentInfo; - - -/** - * Represents a component tree in message for that can be serialized. - * - * @author cbateman - * - */ -public class ComponentTreeMessage extends JSFMonitorMessage -{ - /** - * - */ - private static final long serialVersionUID = -6282344329821994209L; - private String _viewId; - private ComponentInfo _treeRoot; - private RenderNode _renderRoot; - // private HashMap<String, ComponentInfo> _idIndex; - - /** - * default constructor - */ - public ComponentTreeMessage() - { - //_idIndex = new HashMap<String, ComponentInfo>(); - } - - /** - * @return the view id - */ - public final String getViewId() { - return _viewId; - } - - /** - * @return the componentinfo at the root of the component tree - */ - public final ComponentInfo getTreeRoot() { - return _treeRoot; - } - - /** - * @return the rendered root node - */ - public final RenderNode getRenderRoot() { - return _renderRoot; - } - - final void setRenderRoot(RenderNode renderRoot) { - _renderRoot = renderRoot; - } - - final void setTreeRoot(ComponentInfo treeRoot) - { - _treeRoot = treeRoot; - } - - final void setViewId(final String viewId) - { - _viewId = viewId; - } - -// @Override -// protected void deserialize(InputStream inStream) throws IOException, ClassNotFoundException -// { -// ObjectInputStream objectInputStream = new ObjectInputStream(inStream); -// -// Object obj = objectInputStream.readObject(); -// int bytesRead = super.deserialize(inStream); -// -// // first line must be startView -// final BufferedReader reader = -// new BufferedReader(new InputStreamReader(inStream)); -// -// String line = reader.readLine(); -// -// if (line != null -// && line.startsWith(START_VIEW)) -// { -// _viewId = line.substring(START_VIEW.length()).trim(); -// bytesRead += line.length()+1; -// } -// -// // loop until EOF -// while ((line = reader.readLine())!=null) -// { -// bytesRead += line.length()+1; -// -// if (line.startsWith("component:")) -// { -// parseComponent(line.substring("component:".length()).trim()); -// } -// else if (line.startsWith("facet:")) -// { -// parseFacet(line.substring("facet:".length()).trim()); -// } -// else if (line.startsWith("uiInput:")) -// { -// parseUIInput(line.substring("uiInput:".length()).trim()); -// } -// else if (line.startsWith("uiOutput:")) -// { -// parseUIOutput(line.substring("uiOutput:".length()).trim()); -// } -// else if (line.startsWith("endView")) -// { -// // -// } -// } -// return bytesRead; -// } - -// private ComponentInfo parseComponent(final String line) -// { -// final String[] fields = line.split(","); -// if (fields.length >= 4) -// { -// String parentId = "!".equals(fields[0]) ? null : fields[0]; -// String id = "!".equals(fields[1]) ? null : fields[1]; -// String componentFamily = fields[2]; -// String renderFamily = fields[3]; -// -// ComponentInfo componentInfo = -// ComponentFactory.createComponentInfo -// (id, parentId, componentFamily, renderFamily); -// -// if (id == null) -// { -// _treeRoot = componentInfo; -// _idIndex.put(null, componentInfo); -// } -// else -// { -// _idIndex.put(id, componentInfo); -// -// ComponentInfo parent = -// (ComponentInfo)_idIndex.get(parentId); -// -// if (parent != null) -// { -// parent.getChildren().add(componentInfo); -// } -// else -// { -// _treeRoot.getChildren().add(componentInfo); -// } -// } -// } -// return null; -// } -// -// private FacetInfo parseFacet(final String line) -// { -// final String[] fields = line.split(","); -// -// if (fields.length >= 4) -// { -// String parentId = "!".equals(fields[0]) ? null : fields[0]; -// String id = "!".equals(fields[1]) ? null : fields[1]; -// String componentFamily = fields[2]; -// String renderFamily = fields[3]; -// -// FacetInfo facetInfo = -// ComponentFactory.createFacetInfo(id, parentId, componentFamily, renderFamily); -// ComponentInfo parent = _idIndex.get(parentId); -// -// if (parent != null) -// { -// parent.getChildren().add(facetInfo); -// } -// -// return facetInfo; -// } -// return null; -// } -// -// private UIInputInfo parseUIInput(final String line) -// { -// final String[] fields = line.split(","); -// -// if (fields.length >= 7) -// { -// String parentId = "!".equals(fields[0]) ? null : fields[0]; -// String id = "!".equals(fields[1]) ? null : fields[1]; -// String componentFamily = fields[2]; -// String renderFamily = fields[3]; -// String isValid = fields[4]; -// String isImmediate = fields[5]; -// String isRequired = fields[6]; -// String isRendered = fields[7]; -// -// UIInputInfo uiInputInfo = -// ComponentFactory.createUIInputInfo -// (id, parentId, componentFamily, renderFamily, isValid, isImmediate, isRequired, isRendered); -// ComponentInfo parent = _idIndex.get(parentId); -// -// if (parent != null) -// { -// parent.getChildren().add(uiInputInfo); -// } -// -// return uiInputInfo; -// } -// return null; -// } -// -// private UIOutputInfo parseUIOutput(final String line) -// { -// final String[] fields = line.split(","); -// -// if (fields.length >= 4) -// { -// String parentId = "!".equals(fields[0]) ? null : fields[0]; -// String id = "!".equals(fields[1]) ? null : fields[1]; -// String componentFamily = fields[2]; -// String renderFamily = fields[3]; -// String isRendered = fields[4]; -// -// UIOutputInfo uiOutputInfo = -// ComponentFactory.createUIOutputInfo(id, parentId, componentFamily, renderFamily, isRendered); -// -// ComponentInfo parent = _idIndex.get(parentId); -// -// if (parent != null) -// { -// parent.getChildren().add(uiOutputInfo); -// } -// -// return uiOutputInfo; -// } -// return null; -// } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/debug/JSFMonitorMessage.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/debug/JSFMonitorMessage.java deleted file mode 100644 index 4b2be53fb..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/debug/JSFMonitorMessage.java +++ /dev/null @@ -1,26 +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.common.runtime.internal.debug; - -import java.io.Serializable; - -/** - * Super of all messages that are sent by the JSF debug monitor - * @author cbateman - * - */ -public abstract class JSFMonitorMessage implements Serializable -{ - /** - * - */ - private static final long serialVersionUID = -5417558019077000040L; -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/debug/MonitorMessageFactory.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/debug/MonitorMessageFactory.java deleted file mode 100644 index eb5767780..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/debug/MonitorMessageFactory.java +++ /dev/null @@ -1,37 +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.common.runtime.internal.debug; - -import org.eclipse.jst.jsf.common.runtime.internal.model.component.ComponentInfo; - -/** - * Creates JSF remote monitor messages. - * - * @author cbateman - * - */ -public class MonitorMessageFactory -{ - /** - * @param viewId - * @param root - * @param renderRoot - * @return a new component tree message for the parameters - */ - public static ComponentTreeMessage createTreeMessage(final String viewId, final ComponentInfo root, final RenderNode renderRoot) - { - ComponentTreeMessage message = new ComponentTreeMessage(); - message.setViewId(viewId); - message.setTreeRoot(root); - message.setRenderRoot(renderRoot); - return message; - } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/debug/RenderAttribute.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/debug/RenderAttribute.java deleted file mode 100644 index e0c1b9176..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/debug/RenderAttribute.java +++ /dev/null @@ -1,59 +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.common.runtime.internal.debug; - -/** - * Information about a rendered XML attribute - * - * @author cbateman - * - */ -public class RenderAttribute extends JSFMonitorMessage { - - /** - * - */ - private static final long serialVersionUID = -4601065346261130623L; - - private final String _name; // the name of the attribute. TODO: local vs. namespace? - private final String _value; // the rendered value of the node - private final String _propertyName; // the property name on the corresponding component - // may be null - /** - * @param name - * @param value - * @param propertyName - */ - public RenderAttribute(String name, String value, String propertyName) { - super(); - _name = name; - _propertyName = propertyName; - _value = value; - } - /** - * @return the name of the attribute - */ - public final String getName() { - return _name; - } - /** - * @return the attribute's value - */ - public final String getValue() { - return _value; - } - /** - * @return the name of the corresponding component property if any. - */ - public final String getPropertyName() { - return _propertyName; - } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/debug/RenderNode.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/debug/RenderNode.java deleted file mode 100644 index 2679c622b..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/debug/RenderNode.java +++ /dev/null @@ -1,85 +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.common.runtime.internal.debug; - -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; - -/** - * A rendered XML node. - * - * @author cbateman - * - */ -public class RenderNode extends JSFMonitorMessage -{ - /** - * - */ - private static final long serialVersionUID = -2843929405836710015L; - - private final String _componentId; // the id of the component id that caused the node to render - private final String _renderedNodeName; // the node - private final List/*<RenderedAttribute>*/ _renderedAttributes; // attributes - private final List _children; // the rendered children of renderedNode based - // on the output document hiearchy - /** - * @param componentId - * @param renderedNodeName - */ - public RenderNode(String componentId, String renderedNodeName) { - super(); - _componentId = componentId; - _renderedNodeName = renderedNodeName; - - _children = new ArrayList(); - _renderedAttributes = new ArrayList(); - } - /** - * @return the corresponding component's id - */ - public final String getComponentId() { - return _componentId; - } - /** - * @return the node's children - */ - public final List getChildren() { - return _children; - } - /** - * @return the name of the rendered node (element) - */ - public final String getRenderedNodeName() { - return _renderedNodeName; - } - /** - * @return the attributes of this node as rendered. - */ - public final List getRenderedAttributes() { - return _renderedAttributes; - } - public String toString() - { - String toString = "Root node: "+_renderedNodeName+", attributes: ["; //$NON-NLS-1$ //$NON-NLS-2$ - - for (Iterator it = _renderedAttributes.iterator(); it.hasNext();) - { - final RenderAttribute attribute = (RenderAttribute) it.next(); - toString+=attribute.getName() + "=" + attribute.getValue(); //$NON-NLS-1$ - - toString+=it.hasNext() ? ", " : "]"; //$NON-NLS-1$ //$NON-NLS-2$ - } - - return toString; - } -}
\ No newline at end of file diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/IDesigntimeAdapter.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/IDesigntimeAdapter.java deleted file mode 100644 index bd427e6a3..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/IDesigntimeAdapter.java +++ /dev/null @@ -1,26 +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.common.runtime.internal.model; - -/** - * Implemented by design time adapters that represent runtime interfaces. - * - * @author cbateman - * - */ -public interface IDesigntimeAdapter -{ - /** - * @return the list of runtime interfaces that this runtime adapter - * represents. - */ - String[] getInterfaces(); -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/ViewObject.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/ViewObject.java deleted file mode 100644 index 9c36f726c..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/ViewObject.java +++ /dev/null @@ -1,542 +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.common.runtime.internal.model; - -import java.io.Serializable; -import java.util.ArrayList; -import java.util.Collections; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; - -import org.eclipse.jst.jsf.common.runtime.internal.model.decorator.Decorator; - -/** - * The base type of all objects that participate in the lifecycle of a view. - * This may be used to hold either design time or runtime information. - * - * @author cbateman - * - */ -public abstract class ViewObject implements Serializable /* IAdaptable? */ -{ - private final ViewObjectData _data; - - /** - * - */ - private static final long serialVersionUID = 1592205691642453075L; - - /** - * - */ - protected ViewObject() - { - this(new ViewObjectData(false)); - } - - /** - * @param delegate - */ - protected ViewObject(final ViewObjectData delegate) - { - _data = delegate; - _data.setOwner(this); - } - - /** - * @return the object containing all this view object's data - */ - protected ViewObjectData getData() - { - return _data; - } - - /** - * IMPORTANT: if this method returns false, then calling a mutator method - * (basically anything that is not a get/isX() will throw any - * IllegalStateException). - * - * @return if the object can still be modified. - */ - public final boolean isModifiable() - { - return !getData().isProtected(); - } - - /** - * Calling this method sets the state to not modifiable - */ - public final void setProtected() - { - getData().setLocked(); - } - - /** - * This call may be create a new data structure and should be considered of - * much higher cost than most calls. - * - * @return all decorators of this object. List should be assumed by clients - * to be unmodifiable and may throw mutation exceptions - */ - public List getAllDecorators() - { - final int size = getDecoratorMap().size(); - - if (size == 0) - { - return Collections.EMPTY_LIST; - } - - final List allDecorators = new ArrayList(); - for (final Iterator entryIt = getDecoratorMap().entrySet().iterator(); entryIt - .hasNext();) - { - final Map.Entry entry = (Map.Entry) entryIt.next(); - final List decorators = (List) entry.getValue(); - allDecorators.addAll(decorators); - } - - return Collections.unmodifiableList(allDecorators); - } - - /** - * @param decoratorType - * @return all decorators of this object associated with the class type. The - * returned list should be assumed to be unmodifiable. Returns an - * empty list if no decorators are associated with decoratorType - */ - public List getDecorators(final Class decoratorType) - { - final List decorators = (List) getDecoratorMap().get(decoratorType); - - if (decorators == null) - { - return Collections.EMPTY_LIST; - } - return Collections.unmodifiableList(decorators); - } - - /** - * Add the decorator using decorator.getClass to associate the type. Must be - * equivalent to addDecorator(decorator, decorator.getClass()); - * - * @param decorator - * the decorator to add. <b>Must NOT be null.</b> - * @throws IllegalArgumentException - * if decorator is null. - */ - public void addDecorator(final Decorator decorator) - { - _data.addDecorator(decorator); - } - - /** - * Add the decorator using the associatedType. Normally you should call - * {@link #addDecorator(Decorator)} however in some cases you may wish to - * associated a decorator with a class type other than its own. For example, - * sub-classes of ValidatorDecorator will want to associated with - * ValidatorDecorator.getClass() in most cases so that it is included in any - * common examination of component validators. - * - * @param decorator - * to add. <b>Must NOT be null.</b> - * @param associatedType - * the key to store decorator <b>Must NOT be null</b> - * @throws IllegalArgumentException - * if decorator or associatedType is null - */ - public void addDecorator(final Decorator decorator, - final Class associatedType) - { - _data.addDecorator(decorator, associatedType); - } - - /** - * Removes decorator if it is associated to associatedType on this view - * object. - * - * @param decorator - * @param associatedType - * @return true if the decorator was found and removed. - * @throws IllegalArgumentException - * if decorator or associatedType is null - */ - public boolean removeDecorator(final Decorator decorator, - final Class associatedType) - { - return _data.removeDecorator(decorator, associatedType); - } - - /** - * <p> - * Get the adapter associated the class key. - * </p> - * - * <p> - * If addAdapter has been called with adapterType, then this adapter object - * should always be called. In the default implementation, if there is no - * explicit adapter, "this" is returned if (this instanceof adapterType). - * - * @param adapterType - * @return the interface adapter associated with the class key or null if - * not found - */ - public Object getAdapter(final Class adapterType) - { - if (adapterType == null) - { - return null; - } - - Object adapter = getAdapterMap().get(adapterType); - - if (adapter == null) - { - if (adapterType.isInstance(this)) - { - adapter = this; - } - } - - return adapter; - } - - /** - * Adds the interface adapter object under adapterType key. There can be at - * most one adapter registered for each class key. - * - * It is an error (throws exception) to try to add an adapter for - * adapterType which this is already instance. This restriction is necessary - * because otherwise local getters/setters would need to be aware of the - * adapter mechanism and verify inheritance hierarchies on every calls. This - * mechanism is intended only for adding interfaces to view object impls - * that don't already have them. - * - * @param adapterType - * @param adapter - * @throws IllegalArgumentException - * if adapterType or adapter is null or if casting adapter to - * adapterType would * cause a ClassCastException (i.e. if - * !(adapter instanceof adapterType)) OR if this is already an - * instance of adapterType. - */ - public void addAdapter(final Class adapterType, final Object adapter) - { - _data.addAdapter(adapterType, adapter); - } - - /** - * Note that {@link #getAdapter(Class)} may still return non-null after this - * is called if (this instanceof adapterType). - * - * @param adapterType - * @return the adapter for adapterType that was just removed or null if not - * found - */ - public Object removeAdapter(final Class adapterType) - { - return getAdapterMap().remove(adapterType); - } - - /** - * Note that this only returns those adapters added using - * {@link #addAdapter(Class, Object)}. It does not return any implicit - * adapters resulting from (this instanceof type). - * - * @return the map of all adapters. Maps is immutable and may throw - * exceptions on attempts to mutate. - */ - public Map getAllAdapters() - { - if (getAdapterMap().size() == 0) - { - return Collections.EMPTY_MAP; - } - return Collections.unmodifiableMap(getAdapterMap()); - } - - /** - * <p> - * The contract for this method is that it must always return a usable Map - * and that map must be the same on every call. Lazy construction may be - * used (as it is by default). The default map size is 4 and load factor is - * 3 meaning that there should be decent tradeoff between wasted table size - * and overhead used to increase it should the number of decorators exceed - * 3. <b>Must never return null.</b> - * </p> - * - * <p> - * Generally, the method should not need to be overridden, however it is - * provided to allow sub-classes to change the way the decorators map is - * constructed. - * </p> - * - * @return the map containing lists of decorators keyed by class. - * - */ - protected Map getDecoratorMap() - { - return _data.getDecoratorMap(); - } - - /** - * <p> - * The contract for this method is that it must always return a usable Map - * and that map must be the same on every call. Lazy construction may be - * used (as it is by default). The default map size is 4 and load factor is - * 3 meaning that there should be decent tradeoff between wasted table size - * and overhead used to increase it should the number of decorators exceed - * 3. <b>Must never return null.</b> - * </p> - * - * <p> - * Generally, the method should not need to be overridden, however it is - * provided to allow sub-classes to change the way the decorators map is - * constructed. - * </p> - * - * @return the map containing lists of adapters keyed by class. - * - */ - protected Map getAdapterMap() - { - return _data.getAdapterMap(); - } - - // ALL ViewObject's must use reference equals - public final boolean equals(final Object obj) - { - return super.equals(obj); - } - - public final int hashCode() - { - return super.hashCode(); - } - - /** - * The protectable view object data. - * - */ - public static class ViewObjectData extends ProtectedDataObject - { - /** - * - */ - private static final long serialVersionUID = -4216980607447926035L; - private Map _decorators; - private Map _adapters; - private Object _owner; - - /** - * @param isProtected - */ - public ViewObjectData(final boolean isProtected) - { - super(isProtected); - } - - private void setOwner(final ViewObject viewObject) - { - _owner = viewObject; - } - - /** - * For serialization only. - */ - // public ViewObjectData() - // { - // // for serializability - // super(false); - // } - - /** - * @param decorator - * @param associatedType - * @return true if the decorator was removed. - */ - public boolean removeDecorator(final Decorator decorator, final Class associatedType) - { - enforceProtection(); - - if (decorator == null || associatedType == null) - { - throw new IllegalArgumentException("Arguments must not be null"); //$NON-NLS-1$ - } - - final List decoratorsByType = (List) getDecoratorMap().get( - associatedType); - - if (decoratorsByType != null) - { - return decoratorsByType.remove(decorator); - } - - return false; - } - - /** - * @param adapterType - * @param adapter - */ - public void addAdapter(final Class adapterType, final Object adapter) - { - enforceProtection(); - - if (adapterType == null || adapter == null) - { - throw new IllegalArgumentException("Arguments must not be null"); //$NON-NLS-1$ - } - - if (!adapterType.isInstance(adapter)) - { - throw new IllegalArgumentException("adapter: " + adapter //$NON-NLS-1$ - + " must be cast compatible to class: " + adapterType); //$NON-NLS-1$ - } - else if (adapterType.isInstance(_owner)) - { - throw new IllegalArgumentException("this: " + _owner //$NON-NLS-1$ - + " must not already be an instance of class: " //$NON-NLS-1$ - + adapterType); - } - getAdapterMap().put(adapterType, adapter); - } - - /** - * @param decorator - */ - public void addDecorator(final Decorator decorator) - { - enforceProtection(); - - if (decorator == null) - { - throw new IllegalArgumentException("Arguments must not be null"); //$NON-NLS-1$ - } - final Class associationType = decorator.getClass(); - addDecorator(decorator, associationType); - } - - /** - * @param decorator - * @param associatedType - */ - public void addDecorator(final Decorator decorator, final Class associatedType) - { - enforceProtection(); - - if (decorator == null || associatedType == null) - { - throw new IllegalArgumentException("Arguments must not be null"); //$NON-NLS-1$ - } - - List decoratorsByType = (List) getDecoratorMap().get(associatedType); - - if (decoratorsByType == null) - { - decoratorsByType = new ArrayList(2); - getDecoratorMap().put(associatedType, decoratorsByType); - } - - decoratorsByType.add(decorator); - } - - /** - * @return the decorator map, creating it if necessary - */ - protected synchronized Map getDecoratorMap() - { - if (_decorators == null) - { - if (isProtected()) - { - _decorators = Collections.EMPTY_MAP; - } - _decorators = new HashMap(4); - } - return _decorators; - } - - /** - * @return the adapter map, creating if necessary. - */ - protected synchronized Map getAdapterMap() - { - if (_adapters == null) - { - _adapters = new HashMap(4); - } - - return _adapters; - } - } - - /** - * An object that enforces that mutation can only happen up to point where - * the object is designated protected at which point is it is forever - * immutable. - * - */ - public static abstract class ProtectedDataObject implements Serializable - { - /** - * - */ - private static final long serialVersionUID = 4470279408370430399L; - private boolean _isProtected; - - /** - * @param isProtected - */ - public ProtectedDataObject(final boolean isProtected) - { - _isProtected = isProtected; - } - - /** - * @throws UnsupportedOperationException - */ - protected final synchronized void enforceProtection() throws UnsupportedOperationException - { - if (isProtected()) - { - throw new UnsupportedOperationException("Object "+this.toString()+ " is locked for modification"); //$NON-NLS-1$ //$NON-NLS-2$ - } - } - - /** - * @return true if this object is protected and irrevocablly immutable. - */ - public final synchronized boolean isProtected() - { - return _isProtected; - } - - /** - * Executed right before setProtected irrevocably sets the protection - * flag. Does nothing by default - */ - protected void doBeforeProtecting() - { - // do nothing by default - } - /** - * Makes this object irrevocably immutable. - */ - public final synchronized void setLocked() - { - doBeforeProtecting(); - _isProtected = true; - } - } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/bean/DataModelInfo.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/bean/DataModelInfo.java deleted file mode 100644 index e7c2e93c0..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/bean/DataModelInfo.java +++ /dev/null @@ -1,82 +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.common.runtime.internal.model.bean; - -import java.io.Serializable; - -/** - * Design time analog of runtime DataModel bean - * - * @author cbateman - * - */ -public class DataModelInfo implements Serializable -{ - /** - * serializable id - */ - private static final long serialVersionUID = 6461056497382677871L; - - private final boolean _rowAvailable; - private final int _rowCount; - private final SerializableObject _rowData; - private final int _rowIndex; - private final SerializableObject _wrappedData; - - /** - * @param rowAvailable - * @param rowCount - * @param rowData - * @param rowIndex - * @param wrappedData - */ - public DataModelInfo(boolean rowAvailable, int rowCount, Object rowData, - int rowIndex, Object wrappedData) { - super(); - _rowAvailable = rowAvailable; - _rowCount = rowCount; - _rowData = new SerializableObject(rowData); - _rowIndex = rowIndex; - _wrappedData = new SerializableObject(wrappedData); - } - - /** - * @return true if the current row is available - */ - public final boolean isRowAvailable() { - return _rowAvailable; - } - /** - * @return the row count of this model - */ - public final int getRowCount() { - return _rowCount; - } - /** - * @return the row data - */ - public final Object getRowData() { - return _rowData.getMaybeSerializable(); - } - /** - * @return the row index - */ - public final int getRowIndex() { - return _rowIndex; - } - /** - * @return the wrapped data. may be null if wrapped object was not - * serializable. - */ - public final Object getWrappedData() { - return _wrappedData.getMaybeSerializable(); - } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/bean/SerializableObject.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/bean/SerializableObject.java deleted file mode 100644 index e3b066a1f..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/bean/SerializableObject.java +++ /dev/null @@ -1,79 +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.common.runtime.internal.model.bean; - -import java.io.IOException; -import java.io.NotSerializableException; -import java.io.Serializable; - -/** - * A special object used in place of Object to ensure that when an interface - * requires a generic #{@link java.lang.Object}, it won't throw serialization - * exception when a containing object is serialized. - * - * @author cbateman - * - */ -public class SerializableObject implements Serializable -{ - /** - * - */ - private static final long serialVersionUID = 9133733048469500692L; - private Object _maybeSerializable; - - /** - * @param maybeSerializable - */ - public SerializableObject(Object maybeSerializable) - { - _maybeSerializable = maybeSerializable; - } - - -// /** -// * Provided to support serialization. Should not be used by sub-classes -// * or clients except in this regard. -// */ -// protected SerializableObject() -// { -// _maybeSerializable = null; -// } - - /** - * @return the actual value - */ - public final Object getMaybeSerializable() { - return _maybeSerializable; - } - - - private void writeObject(java.io.ObjectOutputStream out) - throws IOException - { - try - { - out.writeObject(_maybeSerializable); - } - catch (NotSerializableException nse) - { - // do nothing, the object isn't guaranteed to be serializable, - // but we don't want this be an error - out.writeObject(null); - } - } - - private void readObject(java.io.ObjectInputStream in) - throws IOException, ClassNotFoundException - { - _maybeSerializable = in.readObject(); - } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/ActionSourceInfo.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/ActionSourceInfo.java deleted file mode 100644 index 6e7348d65..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/ActionSourceInfo.java +++ /dev/null @@ -1,85 +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.common.runtime.internal.model.behavioural; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; - -import org.eclipse.jst.jsf.common.runtime.internal.model.IDesigntimeAdapter; -import org.eclipse.jst.jsf.common.runtime.internal.model.component.ComponentFactory; -import org.eclipse.jst.jsf.common.runtime.internal.model.decorator.ActionListenerDecorator; - -/** - * Implementation of the ActionSourceInfo. - * - * @author cbateman - * - */ -public class ActionSourceInfo implements IActionSourceInfo, IDesigntimeAdapter -{ - /** - * serializable id - */ - private static final long serialVersionUID = 6531166406473466685L; - private static final String[] INTERFACE = new String[]{ComponentFactory.INTERFACE_ACTIONSOURCE}; - private final String _action; - private final String _actionListener; - private final boolean _immediate; - private List/*<ActionListenerDecorator>*/ _actionListeners; - - /** - * @param action - * @param actionListener - * @param immediate - */ - public ActionSourceInfo(final String action, final String actionListener, - final boolean immediate) - { - super(); - _action = action; - _actionListener = actionListener; - _immediate = immediate; - } - - public void addActionListener(final ActionListenerDecorator actionListener) { - if (_actionListeners == null) - { - _actionListeners = new ArrayList(2); - } - _actionListeners.add(actionListener); - } - - public String getAction() { - return _action; - } - - public String getActionListener() { - return _actionListener; - } - - public List getActionListeners() { - if (_actionListeners == null) - { - return Collections.EMPTY_LIST; - } - return Collections.unmodifiableList(_actionListeners); - } - - public boolean isImmediate() { - return _immediate; - } - - public String[] getInterfaces() - { - return INTERFACE; - } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/ActionSourceInfo2.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/ActionSourceInfo2.java deleted file mode 100644 index d36b95b76..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/ActionSourceInfo2.java +++ /dev/null @@ -1,54 +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.common.runtime.internal.model.behavioural; - -import org.eclipse.jst.jsf.common.runtime.internal.model.IDesigntimeAdapter; -import org.eclipse.jst.jsf.common.runtime.internal.model.component.ComponentFactory; - -/** - * Implementation of the IActionSource2Info - * - * @author cbateman - * - */ -public class ActionSourceInfo2 extends ActionSourceInfo implements - IActionSource2Info, IDesigntimeAdapter -{ - /** - * serializable id - */ - private static final long serialVersionUID = 5811194815559772378L; - private static final String[] INTERFACE = new String[]{ComponentFactory.INTERFACE_ACTIONSOURCE2}; - - private final String _actionExpression; - - /** - * @param action - * @param actionListener - * @param immediate - * @param actionExpression - */ - public ActionSourceInfo2(final String action, final String actionListener, - final boolean immediate, final String actionExpression) { - super(action, actionListener, immediate); - _actionExpression = actionExpression; - } - - public String getActionExpression() { - return _actionExpression; - } - - public String[] getInterfaces() - { - return INTERFACE; - } - -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/EditableValueHolderInfo.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/EditableValueHolderInfo.java deleted file mode 100644 index 8b07c45a5..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/EditableValueHolderInfo.java +++ /dev/null @@ -1,144 +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.common.runtime.internal.model.behavioural; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; - -import org.eclipse.jst.jsf.common.runtime.internal.model.IDesigntimeAdapter; -import org.eclipse.jst.jsf.common.runtime.internal.model.component.ComponentFactory; -import org.eclipse.jst.jsf.common.runtime.internal.model.decorator.ConverterDecorator; -import org.eclipse.jst.jsf.common.runtime.internal.model.decorator.ValidatorDecorator; -import org.eclipse.jst.jsf.common.runtime.internal.model.decorator.ValueChangeListenerDecorator; - -/** - * Implementation of the IEditableValueHolderInfo - * - * @author cbateman - * - */ -public class EditableValueHolderInfo extends ValueHolderInfo implements - IEditableValueHolderInfo, IDesigntimeAdapter -{ - /** - * - */ - private static final long serialVersionUID = -2115990809157328451L; - private static final String[] INTERFACE = new String[] {ComponentFactory.INTERFACE_EDITABLEVALUEHOLDER}; - - private final boolean _localSetValue; - private final Object _submittedValue; - private final String _validator; - private final String _valueChangeListener; - private final boolean _isImmediate; - private final boolean _isRequired; - private final boolean _isValid; - private List _validators; - private List _valueChangeListeners; - - /** - * @param converterDecorator - * @param localValue - * @param value - * @param isImmediate - * @param isRequired - * @param isValid - * @param localSetValue - * @param submittedValue - * @param validator - * @param valueChangeListener - */ - public EditableValueHolderInfo(final ConverterDecorator converterDecorator, - final Object localValue, final Object value, final boolean isImmediate, - final boolean isRequired, final boolean isValid, final boolean localSetValue, - final Object submittedValue, final String validator, final String valueChangeListener) - { - super(converterDecorator, localValue, value); - _isImmediate = isImmediate; - _isRequired = isRequired; - _isValid = isValid; - _localSetValue = localSetValue; - _submittedValue = submittedValue; - _validator = validator; - _valueChangeListener = valueChangeListener; - } - - public final boolean isLocalSetValue() { - return _localSetValue; - } - - public final Object getSubmittedValue() { - return _submittedValue; - } - - public final String getValidator() { - return _validator; - } - - public final String getValueChangeListener() { - return _valueChangeListener; - } - - public final boolean isImmediate() { - return _isImmediate; - } - - public final boolean isRequired() { - return _isRequired; - } - - public final boolean isValid() { - return _isValid; - } - - public void addValidator(final ValidatorDecorator validator) - { - if (_validators == null) - { - _validators = new ArrayList(2); - } - _validators.add(validator); - } - - public void addValueChangeListener( - final ValueChangeListenerDecorator valueChangeListenerInfo) - { - if (_valueChangeListeners == null) - { - _valueChangeListeners = new ArrayList(2); - } - _valueChangeListeners.add(valueChangeListenerInfo); - } - - public List getValidators() { - if (_validators == null) - { - return Collections.EMPTY_LIST; - } - - return Collections.unmodifiableList(_validators); - } - - public List getValueChangeListeners() { - if (_valueChangeListeners == null) - { - return Collections.EMPTY_LIST; - } - - return Collections.unmodifiableList(_valueChangeListeners); - } - - public String[] getInterfaces() - { - return INTERFACE; - } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/IActionSource2Info.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/IActionSource2Info.java deleted file mode 100644 index 21966e118..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/IActionSource2Info.java +++ /dev/null @@ -1,30 +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.common.runtime.internal.model.behavioural; - -/** - * Design-time analog for the ActionSource2 interface. - * - * @author cbateman - * - */ -public interface IActionSource2Info extends IActionSourceInfo -{ - /** - * TODO: this method is similar to getAction on ActionSource from - * our perspective since the actual string rep of the EL is basically - * the same... - * - * @return an EL method expression that represents a call to - * an action method. - */ - String getActionExpression(); -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/IActionSourceInfo.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/IActionSourceInfo.java deleted file mode 100644 index 3d2dd2e61..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/IActionSourceInfo.java +++ /dev/null @@ -1,66 +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.common.runtime.internal.model.behavioural; - -import java.io.Serializable; -import java.util.List; - -import org.eclipse.jst.jsf.common.runtime.internal.model.decorator.ActionListenerDecorator; - -/** - * A design time analog for the runtime ActionSource interface. - * - * @author cbateman - * - */ -public interface IActionSourceInfo extends Serializable -{ - /** - * @return true if action listener associated with this action source - * should be executed immediately after the apply request values phase. - * Default is false. - */ - boolean isImmediate(); - - - /** - * Add the action listener to the list - * - * @param actionListener - */ - void addActionListener(ActionListenerDecorator actionListener); - - /** - * @return all action listeners registered. List should be considered - * immutable and may throw exceptions if modified. - */ - List/*<ActionListenerDecorator>*/ getActionListeners(); - - /** - * <b> NOTE: this method is deprecated in the runtime spec and exists for - * backward compatibility with JSF 1.1. You should avoid using it except in - * conjunction with JSF 1.1 tooling support. This method will be deprecated - * once the runtime spec removes the underlying API</b> - - * @return a method binding expression describing an action handler - */ - String getAction(); - - /** - * <b> NOTE: this method is deprecated in the runtime spec and exists for - * backward compatibility with JSF 1.1. You should avoid using it except in - * conjunction with JSF 1.1 tooling support. This method will be deprecated - * once the runtime spec removes the underlying API</b> - * - * @return a method binding expression describing an action listener - */ - String getActionListener(); -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/IEditableValueHolderInfo.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/IEditableValueHolderInfo.java deleted file mode 100644 index 53403d12a..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/IEditableValueHolderInfo.java +++ /dev/null @@ -1,103 +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.common.runtime.internal.model.behavioural; - -import java.util.List; - -import org.eclipse.jst.jsf.common.runtime.internal.model.decorator.ValidatorDecorator; -import org.eclipse.jst.jsf.common.runtime.internal.model.decorator.ValueChangeListenerDecorator; - -/** - * A design time analog for the JSF runtime EditableValueHolder interface. - * - * @author cbateman - * - */ -public interface IEditableValueHolderInfo extends IValueHolderInfo { - /** - * @return the flag indicating whether the value of the value holder should - * be evaluated in the apply request values phase instead of the - * process validations phase - */ - boolean isImmediate(); - - /** - * @return true if the value has been set - */ - boolean isLocalSetValue(); - - /** - * @return true if validation should consider this field required (must be - * non-empty). - */ - boolean isRequired(); - - /** - * @return the submitted, unconverted value of the component. - */ - Object getSubmittedValue(); - - /** - * @return false if validation has determined that the value property of - * this component is not valid. - */ - boolean isValid(); - - /** - * <b> NOTE: this method is deprecated in the runtime spec and exists for - * backward compatibility with JSF 1.1. You should avoid using it except in - * conjunction with JSF 1.1 tooling support. This method will be deprecated - * once the runtime spec removes the underlying API</b> - * - * @return a method binding expression that refers to a validator method - */ - String getValidator(); - - /** - * <b> NOTE: this method is deprecated in the runtime spec and exists for - * backward compatibility with JSF 1.1. You should avoid using it except in - * conjunction with JSF 1.1 tooling support. This method will be deprecated - * once the runtime spec removes the underlying API</b> - * - * @return a method binding expression that refers to a value change - * listener - */ - String getValueChangeListener(); - - /** - * Add validator to the list of validators for this component. Should be - * equivalent to - * {@link org.eclipse.jst.jsf.common.runtime.internal.model.ViewObject#addDecorator(org.eclipse.jst.jsf.common.runtime.internal.model.decorator.Decorator, Class)}. - * - * @param validator - */ - void addValidator(ValidatorDecorator validator); - - /** - * @return the list of validators for this component. Should be considered - * unmodifiable (may throw exception). - */ - List/* <ValidatorDecorator> */getValidators(); - - /** - * Add the value change listener to this component. - * - * @param valueChangeListenerInfo - */ - void addValueChangeListener( - ValueChangeListenerDecorator valueChangeListenerInfo); - - /** - * @return the list of value change listeners. Should be considered - * unmodifiable (may throw exception). - */ - List/* <ValueChangeListenerDecorator> */getValueChangeListeners(); -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/INamingContainerInfo.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/INamingContainerInfo.java deleted file mode 100644 index aeb1e985c..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/INamingContainerInfo.java +++ /dev/null @@ -1,51 +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.common.runtime.internal.model.behavioural; - -import java.io.Serializable; - -import org.eclipse.jst.jsf.common.runtime.internal.model.IDesigntimeAdapter; -import org.eclipse.jst.jsf.common.runtime.internal.model.component.ComponentFactory; - -/** - * Design time analog for the NamingContainer interface. - * - * @author cbateman - * - */ -public interface INamingContainerInfo extends Serializable -{ - // tagging interface - - /** - * Used as an adapter impl - */ - public final static INamingContainerInfo ADAPTER = new NamingContainerInfo(); - - /** - * A default naming container info - * @author cbateman - * - */ - public static class NamingContainerInfo implements INamingContainerInfo, IDesigntimeAdapter - { - /** - * - */ - private static final long serialVersionUID = 7214529928361444126L; - - public String[] getInterfaces() - { - return new String[] {ComponentFactory.INTERFACE_NAMINGCONTAINER}; - } - - } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/IValueHolderInfo.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/IValueHolderInfo.java deleted file mode 100644 index 661dd8192..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/IValueHolderInfo.java +++ /dev/null @@ -1,42 +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.common.runtime.internal.model.behavioural; - -import java.io.Serializable; - -import org.eclipse.jst.jsf.common.runtime.internal.model.decorator.ConverterDecorator; - -/** - * Represents design time information about the ValueHolder behavioural - * interface. - * - * @author cbateman - * - */ -public interface IValueHolderInfo extends Serializable -{ - /** - * @return the value, may be null - */ - Object getValue(); - - /** - * @return the raw value without expression value evaluation. Note that - * {@link #getValue()} may return the same value in cases where this value - * holder is derived at design time without EL expression evaluation. May be null. - */ - Object getLocalValue(); - - /** - * @return the converter for this value holder or null if none. - */ - ConverterDecorator getConverter(); -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/ValueHolderInfo.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/ValueHolderInfo.java deleted file mode 100644 index 25c8e2ea6..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/behavioural/ValueHolderInfo.java +++ /dev/null @@ -1,68 +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.common.runtime.internal.model.behavioural; - -import org.eclipse.jst.jsf.common.runtime.internal.model.IDesigntimeAdapter; -import org.eclipse.jst.jsf.common.runtime.internal.model.component.ComponentFactory; -import org.eclipse.jst.jsf.common.runtime.internal.model.decorator.ConverterDecorator; - -/** - * Implementation of the IValueHolderInfo. - * - * @author cbateman - * - */ -public class ValueHolderInfo implements IValueHolderInfo, IDesigntimeAdapter -{ - /** - * - */ - private static final long serialVersionUID = 5000699728360703727L; - - /** - * the value (may include EL evaluation) - */ - protected final Object _value; - /** - * the raw value before EL evaluation. - */ - protected final Object _localValue; - /** - * the converter or null if none. - */ - protected final ConverterDecorator _converterDecorator; - - /** - * @param converterDecorator - * @param localValue - * @param value - */ - public ValueHolderInfo(final ConverterDecorator converterDecorator, - final Object localValue, final Object value) { - super(); - _converterDecorator = converterDecorator; - _localValue = localValue; - _value = value; - } - public final Object getValue() { - return _value; - } - public final Object getLocalValue() { - return _localValue; - } - public final ConverterDecorator getConverter() { - return _converterDecorator; - } - public String[] getInterfaces() - { - return new String[] {ComponentFactory.INTERFACE_VALUEHOLDER}; - } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/AbstractVisitor.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/AbstractVisitor.java deleted file mode 100644 index a18b04fc0..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/AbstractVisitor.java +++ /dev/null @@ -1,96 +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.common.runtime.internal.model.component; - -/** - * Implemented by visitors - * - * @author cbateman - * - */ -public abstract class AbstractVisitor -{ - /** - * A policy to control visitation - */ - protected final VisitationPolicy _policy; - - /** - * @param policy - */ - protected AbstractVisitor(final VisitationPolicy policy) - { - super(); - _policy = policy; - } - - /** - * @param object - */ - public abstract void visit(Object object); - - /** - * @return the visitation policy - */ - public VisitationPolicy getPolicy() - { - return _policy; - } - - /** - * A policy that allows a visitor to configure how it will visit a tree. - * - */ - public static final class VisitationPolicy - { - /** - * indicates pre-order, parent first traversal (root visited first) - */ - public static final int VISIT_PARENT_FIRST = 0; // pre-order - // tree - // visit - /** - * indicates post-order, children first traveral (root visited last) - */ - public static final int VISIT_CHILDREN_FIRST = 1; // post-order - // tree - // visit - /** - * A default parent first policy - */ - public final static VisitationPolicy ParentFirstPolicy = new VisitationPolicy( - VISIT_PARENT_FIRST); - /** - * A default children first policy - */ - public final static VisitationPolicy ChildrenFirstPolicy = new VisitationPolicy( - VISIT_CHILDREN_FIRST); - - private final int _ordering; - - /** - * @param ordering - */ - public VisitationPolicy(final int ordering) - { - _ordering = ordering; - } - - /** - * @return the ordering - */ - public final int getOrdering() - { - return _ordering; - } - } - -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/ComponentFactory.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/ComponentFactory.java deleted file mode 100644 index a3c376252..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/ComponentFactory.java +++ /dev/null @@ -1,399 +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.common.runtime.internal.model.component; - -import java.util.Map; - -import org.eclipse.jst.jsf.common.runtime.internal.model.bean.DataModelInfo; -import org.eclipse.jst.jsf.common.runtime.internal.model.behavioural.IActionSource2Info; -import org.eclipse.jst.jsf.common.runtime.internal.model.behavioural.IActionSourceInfo; -import org.eclipse.jst.jsf.common.runtime.internal.model.behavioural.IEditableValueHolderInfo; -import org.eclipse.jst.jsf.common.runtime.internal.model.behavioural.INamingContainerInfo; -import org.eclipse.jst.jsf.common.runtime.internal.model.behavioural.IValueHolderInfo; -import org.eclipse.jst.jsf.common.runtime.internal.model.decorator.ConverterDecorator; -import org.eclipse.jst.jsf.common.runtime.internal.model.decorator.FacetDecorator; -import org.eclipse.jst.jsf.common.runtime.internal.model.decorator.ValidatorDecorator; -import org.eclipse.jst.jsf.common.runtime.internal.model.event.IActionListenerInfo; -import org.eclipse.jst.jsf.common.runtime.internal.model.event.IValueChangeListenerInfo; - -/** - * Factory for creating component related objects. - * - * @author cbateman - * - */ -public class ComponentFactory -{ - - /** - * The key for the standard ValueHolder adapter interface - */ - public final static Class VALUE_HOLDER = IValueHolderInfo.class; - /** - * The key for the standard EditableValueHolder adapter interface - */ - public final static Class EDITABLE_VALUE_HOLDER = IEditableValueHolderInfo.class; - /** - * The key for the standard ActionSource adapter interface - */ - public final static Class ACTION_SOURCE = IActionSourceInfo.class; - /** - * The key for the standard ActionSource2 adapter interface - */ - public final static Class ACTION_SOURCE2 = IActionSource2Info.class; - /** - * The key for the standard NamingContainer adapter interface - */ - public final static Class NAMING_CONTAINER = INamingContainerInfo.class; - - /** - * The key for the standard Converter decorator - */ - public final static Class CONVERTER = ConverterDecorator.class; - /** - * The key for the standard Facet decorator - */ - public final static Class FACET = FacetDecorator.class; - /** - * The key for the standard Validator decorator - */ - public final static Class VALIDATOR = ValidatorDecorator.class; - /** - * The key for the standard ValueChangeListener decorator - */ - public final static Class VALUE_CHANGE_LISTENER = IValueChangeListenerInfo.class; - /** - * The key for the standard ActionListener decorator - */ - public final static Class ACTION_LISTENER = IActionListenerInfo.class; - - /** - * Base class name for UIInput's - */ - public final static String BASE_CLASS_UIINPUT = "javax.faces.component.UIInput"; //$NON-NLS-1$ - /** - * Base class name for UIOutput's - */ - public final static String BASE_CLASS_UIOUTPUT = "javax.faces.component.UIOutput"; //$NON-NLS-1$ - /** - * Base class name for UICommand's - */ - public final static String BASE_CLASS_UICOMMAND = "javax.faces.component.UICommand"; //$NON-NLS-1$ - /** - * Base class name for UIData's - */ - public final static String BASE_CLASS_UIDATA = "javax.faces.component.UIData"; //$NON-NLS-1$ - /** - * Base class name for UIForm's - */ - public final static String BASE_CLASS_UIFORM = "javax.faces.component.UIForm"; //$NON-NLS-1$ - - /** - * Interface name for ValueHolder's - */ - public final static String INTERFACE_VALUEHOLDER = "javax.faces.component.ValueHolder"; //$NON-NLS-1$ - /** - * Interface name for EditableValueHolder's - */ - public final static String INTERFACE_EDITABLEVALUEHOLDER = "javax.faces.component.EditableValueHolder"; //$NON-NLS-1$ - /** - * Interface name for ActionSource's - */ - public final static String INTERFACE_ACTIONSOURCE = "javax.faces.component.ActionSource"; //$NON-NLS-1$ - /** - * Interface name for ActionSource2's - */ - public final static String INTERFACE_ACTIONSOURCE2 = "javax.faces.component.ActionSource2"; //$NON-NLS-1$ - /** - * Interface name for NamingContainer's - */ - public final static String INTERFACE_NAMINGCONTAINER = "javax.faces.component.NamingContainer"; //$NON-NLS-1$ - - /** - * @param id - * @param parent - * @param typeInfo - * @param isRendered - * @return a new component info - */ - public static ComponentInfo createComponentInfo(final String id, - final ComponentInfo parent, final ComponentTypeInfo typeInfo, - final boolean isRendered) - { - return new ComponentInfo(id, parent, typeInfo, isRendered); - } - - /** - * If the rendered attribute isn't set, defaults it. - * - * @param attributes - */ - public static void maybeDefaultRendered(final Map attributes) - { - if (!(attributes.get("rendered") instanceof Boolean)) //$NON-NLS-1$ - { - attributes.put("rendered", Boolean.TRUE); //$NON-NLS-1$ - } - } - - /** - * @param parent - * @param componentTypeInfo - * @param attributes - * @return a new component info - */ - public static ComponentInfo createComponentInfo(final ComponentInfo parent, - final ComponentTypeInfo componentTypeInfo, final Map attributes) - { - maybeDefaultRendered(attributes); - return new ComponentInfo(parent, componentTypeInfo, attributes); - } - - /** - * @param id - * @param parent - * @param typeInfo - * @param editableValueHolder - * @param isRendered - * @return a new UIInputInfo - */ - public static UIInputInfo createUIInputInfo(final String id, - final ComponentInfo parent, final ComponentTypeInfo typeInfo, - final IEditableValueHolderInfo editableValueHolder, - final boolean isRendered) - { - return new UIInputInfo(id, parent, typeInfo, editableValueHolder, - isRendered); - } - - /** - * @param parent - * @param typeInfo - * @param attributes - * @return a new UIInputInfo - */ - public static UIInputInfo createUIInputInfo(final ComponentInfo parent, - final ComponentTypeInfo typeInfo, final Map attributes) - { - maybeDefaultRendered(attributes); - return new UIInputInfo(parent, typeInfo, attributes); - } - - /** - * @param id - * @param parent - * @param typeInfo - * @param valueHolderInfo - * @param isRendered - * @return a new UIOutputInfo - */ - public static UIOutputInfo createUIOutputInfo(final String id, - final ComponentInfo parent, final ComponentTypeInfo typeInfo, - final IValueHolderInfo valueHolderInfo, final boolean isRendered) - { - return new UIOutputInfo(id, parent, typeInfo, valueHolderInfo, - isRendered); - } - - /** - * @param parent - * @param typeInfo - * @param attributes - * @return a new UIOutputInfo - */ - public static UIOutputInfo createUIOutputInfo(final ComponentInfo parent, - final ComponentTypeInfo typeInfo, final Map attributes) - { - maybeDefaultRendered(attributes); - return new UIOutputInfo(parent, typeInfo, attributes); - } - - /** - * @param id - * @param parent - * @param typeInfo - * @param actionSourceInfo - * @param isRendered - * @return a new UICommandInfo - */ - public static UICommandInfo createUICommandInfo(final String id, - final ComponentInfo parent, final ComponentTypeInfo typeInfo, - final IActionSourceInfo actionSourceInfo, final boolean isRendered) - { - return new UICommandInfo(id, parent, typeInfo, isRendered, - actionSourceInfo); - } - - /** - * @param parent - * @param typeInfo - * @param attributes - * @return a new UICommandInfo - */ - public static UICommandInfo createUICommandInfo(final ComponentInfo parent, - final ComponentTypeInfo typeInfo, final Map attributes) - { - maybeDefaultRendered(attributes); - return new UICommandInfo(parent, typeInfo, attributes); - } - - /** - * @param id - * @param parent - * @param typeInfo - * @param isRendered - * @param prependId - * @param submitted - * @return a new UIFormInfo - */ - public static UIFormInfo createUIFormInfo(final String id, - final ComponentInfo parent, final ComponentTypeInfo typeInfo, - final boolean isRendered, final boolean prependId, - final boolean submitted) - { - return new UIFormInfo(id, parent, typeInfo, isRendered, prependId, - submitted); - } - - /** - * @param parent - * @param typeInfo - * @param attributes - * @return a new UIFormInfo - */ - public static UIFormInfo createUIFormInfo(final ComponentInfo parent, - final ComponentTypeInfo typeInfo, final Map attributes) - { - maybeDefaultRendered(attributes); - maybeDefaultPrependId(attributes); - maybeDefaultSubmitted(attributes); - return new UIFormInfo(parent, typeInfo, attributes); - } - - private static void maybeDefaultSubmitted(Map attributes) - { - if (!(attributes.get("submitted") instanceof Boolean)) //$NON-NLS-1$ - { - attributes.put("submitted", Boolean.FALSE); //$NON-NLS-1$ - } - } - - private static void maybeDefaultPrependId(Map attributes) - { - if (!(attributes.get("prependId") instanceof Boolean)) //$NON-NLS-1$ - { - attributes.put("prependId", Boolean.FALSE); //$NON-NLS-1$ - } - } - - /** - * @param id - * @param parent - * @param typeInfo - * @param isRendered - * @param dataModel - * @param first - * @param footer - * @param header - * @param rowCount - * @param rowAvailable - * @param rowData - * @param rowIndex - * @param rows - * @param value - * @param var - * @return a new UIDataInfo - */ - public static UIDataInfo createUIDataInfo(final String id, - final ComponentInfo parent, final ComponentTypeInfo typeInfo, - final boolean isRendered, final DataModelInfo dataModel, - final int first, final ComponentInfo footer, - final ComponentInfo header, final int rowCount, - final boolean rowAvailable, final Object rowData, - final int rowIndex, final int rows, final Object value, - final String var) - { - return new UIDataInfo(id, parent, typeInfo, isRendered, dataModel, - first, footer, header, rowCount, rowAvailable, rowData, - rowIndex, rows, value, var); - } - - /** - * @param parent - * @param typeInfo - * @param attributes - * @return the UIDataInfo - */ - public static UIDataInfo createUIDataInfo(final ComponentInfo parent, - final ComponentTypeInfo typeInfo, final Map attributes) - { - maybeDefaultRendered(attributes); - maybeDefaultFirst(attributes); - maybeDefaultRowCount(attributes); - maybeDefaultRowAvailable(attributes); - maybeDefaultRowIndex(attributes); - maybeDefaultRows(attributes); - maybeDefaultVar(attributes); - return new UIDataInfo(parent, typeInfo, attributes); - } - - - private static final Integer ZERO = new Integer(0); - private static final Integer MINUS_ONE = new Integer(-1); - - private static void maybeDefaultFirst(Map attributes) - { - if (!(attributes.get("first") instanceof Integer)) //$NON-NLS-1$ - { - attributes.put("first", ZERO); //$NON-NLS-1$ - } - } - - private static void maybeDefaultRowCount(Map attributes) - { - if (!(attributes.get("rowCount") instanceof Integer)) //$NON-NLS-1$ - { - attributes.put("rowCount", MINUS_ONE); //$NON-NLS-1$ - } - } - - private static void maybeDefaultRowAvailable(Map attributes) - { - if (! (attributes.get("rowAvailable") instanceof Boolean)) //$NON-NLS-1$ - { - attributes.put("rowAvailable", Boolean.FALSE); //$NON-NLS-1$ - } - } - - private static void maybeDefaultRowIndex(Map attributes) - { - if (! (attributes.get("rowIndex") instanceof Integer)) //$NON-NLS-1$ - { - attributes.put("rowIndex", MINUS_ONE); //$NON-NLS-1$ - } - } - - private static void maybeDefaultRows(Map attributes) - { - if (! (attributes.get("rows") instanceof Integer)) //$NON-NLS-1$ - { - attributes.put("rows", ZERO); //$NON-NLS-1$ - } - } - - private static void maybeDefaultVar(Map attributes) - { - if (! (attributes.get("var") instanceof String)) //$NON-NLS-1$ - { - attributes.put("var", "** default variable **"); //$NON-NLS-1$ //$NON-NLS-2$ - } - } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/ComponentInfo.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/ComponentInfo.java deleted file mode 100644 index 6bb462940..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/ComponentInfo.java +++ /dev/null @@ -1,930 +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.common.runtime.internal.model.component; - -import java.beans.BeanInfo; -import java.beans.IntrospectionException; -import java.beans.Introspector; -import java.beans.PropertyDescriptor; -import java.io.Serializable; -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.HashMap; -import java.util.HashSet; -import java.util.Iterator; -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.Map.Entry; - -import org.eclipse.jst.jsf.common.runtime.internal.model.ViewObject; -import org.eclipse.jst.jsf.common.runtime.internal.model.component.AbstractVisitor.VisitationPolicy; -import org.eclipse.jst.jsf.common.runtime.internal.model.decorator.FacetDecorator; - -/** - * Models a basic UI component instance - * - * TODO: should implement a visitor pattern to traverse component trees - * - * @author cbateman - * - */ -public class ComponentInfo extends ViewObject implements Serializable, - IVisitable -{ - /** - * serializable id - */ - private static final long serialVersionUID = 2517204356825585699L; - - private final static int DEFAULT_ARRAY_SIZE = 4; - - private transient BeanPropertyManager _beanPropertyManager; - /** - * Encapsulates all of the data for the view object - */ - protected final ComponentInfoData _data; - - // initialized - // by - // getBeanProperties - - /** - * @param id - * @param parent - * @param componentTypeInfo - * @param isRendered - */ - protected ComponentInfo(final String id, final ComponentInfo parent, - final ComponentTypeInfo componentTypeInfo, final boolean isRendered) - { - super(new ComponentInfoData(id, parent, componentTypeInfo, isRendered)); - _data = (ComponentInfoData) super.getData(); - - final Set propExclude = new HashSet(); - propExclude.add("attributeNames"); //$NON-NLS-1$ - propExclude.add("componentTypeInfo"); //$NON-NLS-1$ - propExclude.add("valueChangeListeners"); //$NON-NLS-1$ - propExclude.add("visitableChildren"); //$NON-NLS-1$ - - _beanPropertyManager = new BeanPropertyManager(this, propExclude); - } - - /** - * @param data - */ - protected ComponentInfo(final ComponentInfoData data) - { - super(data); - _data = data; - } - - /** - * Construct a new component info using the attributes keyed by name in - * attributes to set values. The names must match the corresponding bean - * property names. Primitives should be wrapped in their corresponding - * object types. Exceptions will be thrown if there is a type mismatch on an - * expected type. Number will be used for all numeric primitive wrappers an - * the corresponding "to" will be called. - * - * @param parent - * @param componentTypeInfo - * @param attributes - * @throws ClassCastException - * if an attribute's value doesn't match the expected type - * @throws NullPointerException - * if an attribute value is null for a value whose type is - * expected to be primitive - * @throws IllegalArgumentException - * if attributes does not contain a required key. - */ - protected ComponentInfo(final ComponentInfo parent, - final ComponentTypeInfo componentTypeInfo, final Map attributes) - { - this(getStringProperty("id", attributes, false), parent, //$NON-NLS-1$ - componentTypeInfo, getBooleanProperty("rendered", attributes, false)); //$NON-NLS-1$ - } - - /** - * @param key - * @param attributes - * @param mandatory - * @return the value in attributes at location key, forcing a - * ClassCastException if it turns out not to be a String. - * @throws ClassCastException - * if the attribute for key is not a String - * @throws IllegalArgumentException - * if the attribute for key is null but mandatory is true. - */ - protected static String getStringProperty(final String key, - final Map attributes, final boolean mandatory) - { - final Object value = attributes.get(key); - - if (mandatory && value == null) - { - throw new IllegalArgumentException(key - + " is a mandatory attribute"); //$NON-NLS-1$ - } - return (String) value; - } - - /** - * @param key - * @param attributes - * @param mandatory - * - * @return the value in attributes at location, forcing a ClassCastExceptio - * if it is not a Boolean and mandatory. returns false if no value - * and not mandatory - * @throws IllegalArgumentException - * if key is not found and value is mandatory - */ - protected static boolean getBooleanProperty(final String key, - final Map attributes, final boolean mandatory) - { - final Boolean value = (Boolean) attributes.get(key); - - if (value == null) - { - if (mandatory) - { - throw new IllegalArgumentException(key + "is mandatory"); //$NON-NLS-1$ - } - return false; - } - - return value.booleanValue(); - } - - /** - * @param key - * @param attributes - * @return the integer property for key. Casts the value to Number and calls - * Number.intValue(). 0 if no value. - */ - protected static int getIntegerProperty(final String key, - final Map attributes) - { - final Number value = (Number) attributes.get(key); - - if (value == null) - { - return 0; - } - - return value.intValue(); - } - - /** - * @param key - * @param attributes - * @return the component info value from attributes - */ - protected static ComponentInfo getComponentProperty(final String key, - final Map attributes) - { - return (ComponentInfo) attributes.get(key); - } - - /** - * @return the id - */ - public final String getId() - { - return _data.getId(); - } - - /** - * @return the component type info - */ - public final ComponentTypeInfo getComponentTypeInfo() - { - return _data.getComponentTypeInfo(); - } - - /** - * Pre-condition: isModifiable() == true Post-condition: getChildren() will - * return an empty list. - */ - protected final void clearChildren() - { - _data.getChildren().clear(); - } - - /** - * @return the children. List is unmodifiable. List contains all children - * including facets. - */ - public final List/* <ComponentInfo> */getChildren() - { - if (_data.isProtected()) - { - return _data.getChildren(); - } - return Collections.unmodifiableList(_data.getChildren()); - } - - /** - * Get the sub-set of {@link #getChildren()} that are facets. This is a - * convenience method for {@link #getDecorators(Class)} - * - * @return all component children that are facets - */ - public final List getFacets() - { - return getDecorators(ComponentFactory.FACET); - } - - /** - * @param childComponent - */ - public final void addChild(final ComponentInfo childComponent) - { - if (childComponent == this) - { - throw new IllegalArgumentException( - "A component cannot be its own child"); //$NON-NLS-1$ - } - _data.addChild(childComponent); - // we need to reset the child's parent to me - childComponent.setParent(this); - } - - /** - * @param parent - */ - public final void setParent(ComponentInfo parent) - { - _data.setParent(parent); - } - - /** - * @param name - * @param facetComponent - */ - public final void addFacet(final String name, - final ComponentInfo facetComponent) - { - addChild(facetComponent); - addDecorator(new FacetDecorator(name, facetComponent)); - } - - /** - * @param component - * @return if component corresponds to a facet of this component, returns - * the name of that facet. Returns null if not found. - */ - public final String getFacetName(final ComponentInfo component) - { - if (component == null) - { - return null; - } - - final List facets = getDecorators(ComponentFactory.FACET); - - for (final Iterator it = facets.iterator(); it.hasNext();) - { - final FacetDecorator facet = (FacetDecorator) it.next(); - if (component == facet.getDecorates()) - { - return facet.getName(); - } - } - - // component is not a facet - return null; - } - - /** - * @param name - * @return if this has a facet called name, then returns it's single root - * component. - */ - public final ComponentInfo getFacet(final String name) - { - if (name == null) - { - return null; - } - - final List facets = getDecorators(ComponentFactory.FACET); - - for (final Iterator it = facets.iterator(); it.hasNext();) - { - final FacetDecorator facet = (FacetDecorator) it.next(); - if (name.equals(facet.getName())) - { - return facet.getDecorates(); - } - } - - // not found - return null; - } - - public String toString() - { - final String parentId = getParent() != null ? getParent().getId() - : "null"; //$NON-NLS-1$ - String toString = getMostSpecificComponentName() + ": id=" //$NON-NLS-1$ - + _data.getId() + ", parentId: " + parentId + ", family=" //$NON-NLS-1$ //$NON-NLS-2$ - + getComponentTypeInfo().getComponentFamily() + ", render=" //$NON-NLS-1$ - + getComponentTypeInfo().getRenderFamily() + ", rendered=" //$NON-NLS-1$ - + isRendered(); - - // use bean introspection to dump child properties - if (this.getClass() != ComponentInfo.class) - { - toString += dumpProperties(); - } - - return toString; - } - - private String dumpProperties() - { - String properties = ""; //$NON-NLS-1$ - try - { - final BeanInfo beanInfo = Introspector.getBeanInfo(this.getClass(), - ComponentInfo.class); - - final PropertyDescriptor[] descriptors = beanInfo - .getPropertyDescriptors(); - for (int i = 0; i < descriptors.length; i++) - { - final PropertyDescriptor desc = descriptors[i]; - final String name = desc.getName(); - final Object valueObj = desc.getValue(name); - final String value = valueObj != null ? valueObj.toString() - : "null"; //$NON-NLS-1$ - properties += ", " + name + "=" + value; //$NON-NLS-1$ //$NON-NLS-2$ - } - } - catch (final IntrospectionException e) - { - return "Error introspecting bean: " + e.getLocalizedMessage(); //$NON-NLS-1$ - } - - return properties; - } - - /** - * @return used for toString. Clients should not use. - */ - protected String getMostSpecificComponentName() - { - return "UIComponent"; //$NON-NLS-1$ - } - - /** - * @return the parent of this component or null. - */ - public final ComponentInfo getParent() - { - return _data.getParent(); - } - - /** - * @return the rendered flag - */ - public final boolean isRendered() - { - return _data.isRendered(); - } - - public synchronized void addAdapter(final Class adapterType, - final Object adapter) - { - super.addAdapter(adapterType, adapter); - - // force an update on the next call to getBeanProperties - _beanPropertyManager.reset(); - } - - public synchronized Object removeAdapter(final Class adapterType) - { - final Object removed = super.removeAdapter(adapterType); - - _beanPropertyManager.reset(); - - return removed; - } - - /** - * @return the set of all bean property names for this component. The set is - * unmodifiable and will throw exceptions if modification is - * attempted. - */ - protected final Map/* <String, ComponentBeanProperty> */getBeanProperties() - { - return Collections.unmodifiableMap(_beanPropertyManager - .getBeanProperties()); - } - - /** - * @author cbateman - * - */ - public static class ComponentInfoData extends ViewObjectData - { - /** - * - */ - private static final long serialVersionUID = 5052732412917986062L; - /** - * the component id - */ - private final String _id; - /** - * the component's parent or null if none - */ - private ComponentInfo _parent; - - /** - * the type info for this component - */ - protected final ComponentTypeInfo _componentTypeInfo; - /** - * the rendered flage - */ - protected final boolean _isRendered; - - private List /* <ComponentInfo> */_children = new ArrayList( - DEFAULT_ARRAY_SIZE); - - /** - * @param id - * @param parent - * @param componentTypeInfo - * @param isRendered - */ - public ComponentInfoData(final String id, ComponentInfo parent, - ComponentTypeInfo componentTypeInfo, boolean isRendered) - { - super(false); - _id = id; - _parent = parent; - _componentTypeInfo = componentTypeInfo; - _isRendered = isRendered; - } - - /** - * @param childComponent - */ - protected void addChild(ComponentInfo childComponent) - { - enforceProtection(); - - getChildren().add(childComponent); - } - - /** - * @return the modifiable list of children - */ - protected final List/* <ComponentInfo> */getChildren() - { - return _children; - } - - protected void doBeforeProtecting() - { - super.doBeforeProtecting(); - // compact the children array list - if (_children.size() > 0) - { - _children = Collections.unmodifiableList(_children); - } - else - { - _children = Collections.EMPTY_LIST; - } - } - - /** - * @return the isRendered flag - */ - protected final boolean isRendered() - { - return _isRendered; - } - - /** - * @return the component type info flag - */ - protected final ComponentTypeInfo getComponentTypeInfo() - { - return _componentTypeInfo; - } - - /** - * @return the parent or null if no parent - */ - protected final ComponentInfo getParent() - { - return _parent; - } - - /** - * @param parent - */ - protected final void setParent(ComponentInfo parent) - { - enforceProtection(); - _parent = parent; - } - - /** - * @return the component id - */ - protected final String getId() - { - return _id; - } - } - - /** - * This is similar to the runtime getAttributes().get(name) call. The reason - * we don't implement a Map of all attribute values is that the implicit - * property structure can change at any time due to add/removeAdapter. To - * get all attributes known for a component, instead use: - * - * The synchronized block is advised to protect against concurrent - * modification exceptions on the keySet iterator. - * - * @param name - * - * @return the value of the attribute or null if none. - * - */ - public synchronized ComponentBeanProperty getAttribute(final String name) - { - return (ComponentBeanProperty) getBeanProperties().get(name); - } - - /** - * @return the set of valid attribute names. The Set is not modifiable. - */ - public synchronized Set/* <String> */getAttributeNames() - { - return getBeanProperties().keySet(); - } - - /** - * Stores a bean property descriptor along information about which - * implementation class declares it and what key to pass to getAdapter() in - * order to get it. - * - */ - public final static class ComponentBeanProperty - { - private final PropertyDescriptor _propertyDescriptor; - private final Object _declaringImplementation; - private final Class _adapterKeyClass; - - // only instantiable locally - private ComponentBeanProperty(Class adapterKeyClass, - Object declaringImplementationClass, - PropertyDescriptor propertyDescriptor) - { - super(); - _adapterKeyClass = adapterKeyClass; - _declaringImplementation = declaringImplementationClass; - _propertyDescriptor = propertyDescriptor; - } - - /** - * @return the value of property - */ - public final Object getValue() - { - final Method method = _propertyDescriptor.getReadMethod(); - if (method != null) - { - try - { - method.setAccessible(true); - return method.invoke(_declaringImplementation, - new Object[0]); - } - catch (IllegalArgumentException e) - { - e.printStackTrace(); - } - catch (IllegalAccessException e) - { - e.printStackTrace(); - } - catch (InvocationTargetException e) - { - e.printStackTrace(); - } - } - // if any step fails, return null - return null; - } - - /** - * @return the property descriptor - */ - public final PropertyDescriptor getPropertyDescriptor() - { - return _propertyDescriptor; - } - - /** - * @return the implemenation - */ - public final Object getDeclaringImplementationClass() - { - return _declaringImplementation; - } - - /** - * @return the adapter class for the interface that the declaring - * implementation is providing the impl for - */ - public final Class getAdapterKeyClass() - { - return _adapterKeyClass; - } - } - - /** - * Manages bean property information for a component - * - * @author cbateman - * - */ - protected final static class BeanPropertyManager - { - /** - * a map of the bean property names exposed by this component including - * all those added by addAdapter(). - * - * this is synthetic based the class definition and installed adapters - * so as long that info is available, no need to serialize. - */ - protected transient Map /* - * <String, - * ComponentBeanProperty> - */_beanProperties; // lazily - private final transient ComponentInfo _component; - private final transient Set _excludeNames; - - /** - * @param component - * @param excludeNames - */ - protected BeanPropertyManager(final ComponentInfo component, - final Set excludeNames) - { - _component = component; - _excludeNames = excludeNames; - } - - /** - * Will throw exception of the calling thread already holds the "this" - * monitor lock. This is to ensure that caller always acquires locks in - * appropriate order to prevent deadlock. - * - * @return the internal set of bean properties. This Set may be modified - * internally. - */ - public Map getBeanProperties() - { - if (Thread.holdsLock(this)) - { - throw new IllegalStateException( - "Must not already own this lock"); //$NON-NLS-1$ - } - - // must always acquire component lock first to prevent deadlock - synchronized (_component) - { - synchronized (this) - { - if (_beanProperties == null) - { - _beanProperties = calculateAllBeanPropNames(ViewObject.class); - } - - return _beanProperties; - } - } - } - - /** - * Will throw exception if the calling thread already holds the "this" - * monitor lock. This is to ensure that caller always acquires locks in - * appropriate order to prevent deadlock. - * - * Clears the internal map and sets to null. This will force it to be - * completely new built on the next call to getBeanProperties - */ - public void reset() - { - if (Thread.holdsLock(this)) - { - throw new IllegalStateException( - "Must not already own this lock"); //$NON-NLS-1$ - } - - // must always acquire component lock first to prevent deadlock - synchronized (_component) - { - synchronized (this) - { - if (_beanProperties != null) - { - _beanProperties.clear(); - _beanProperties = null; - } - } - } - } - - /** - * @param stopClass - * @return a synchronized map of all bean property names on this class - * up to stopClass, as well as all adapter property names (as - * though this really implemented them). - */ - private Map calculateAllBeanPropNames(final Class stopClass) - { - // use a set to prevents the duplicates - final Map allProperties = new HashMap(); - - { - final Class myClass = _component.getClass(); - final List myProperties = getOrCreateBeanProperties(myClass, - stopClass); - - addToMap(myProperties, _component, myClass, allProperties, _excludeNames); - } - - { - for (final Iterator it = _component.getAdapterMap().entrySet() - .iterator(); it.hasNext();) - { - Map.Entry entry = (Entry) it.next(); - - final Class adapterClass = (Class) entry.getKey(); - final Object declaringClass = entry.getValue(); - // get all props, excluding the ones on Object. - final List props = getOrCreateBeanProperties(adapterClass, - null); - addToMap(props, declaringClass, adapterClass, allProperties, - _excludeNames); - } - } - - return Collections.synchronizedMap(allProperties); - } - - private static void addToMap( - final List/* <ComponentBeanProperty> */addThese, - final Object declaringObject, final Class declaringAdapter, - final Map toMe, - Set excludeNames) - { - for (final Iterator it = addThese.iterator(); it.hasNext();) - { - final PropertyDescriptor desc = (PropertyDescriptor) it.next(); - - if (!toMe.containsKey(desc.getName()) - && !excludeNames.contains(desc.getName())) - { - toMe.put(desc.getName(), new ComponentBeanProperty( - declaringAdapter, declaringObject, desc)); - } - } - } - - /** - * lazily loaded with the local properties (those not defined using - * adapters) - * - * MUST INITIALIZE early so can synchronize on it - */ - private transient static Map /* <Class, List<PropertyDescriptor> */PROPERTY_MAP = new HashMap(); - - /** - * @param startClass - * @param stopClass - * @return a unmodifiable list of properties starting from startClass. - * stopClass is only used if an entry doesn't already exist in - * PROPERTY_MAP for startClass. The method is synchronized on - * the PROPERTY_MAP it updates. - */ - protected static List/* <PropertyDescriptor */getOrCreateBeanProperties( - final Class startClass, final Class stopClass) - { - synchronized (PROPERTY_MAP) - { - List localBeanProps = (List) PROPERTY_MAP.get(startClass); - - if (localBeanProps == null) - { - localBeanProps = calculateBeanProperties(startClass, - stopClass); - PROPERTY_MAP.put(startClass, Collections - .unmodifiableList(localBeanProps)); - } - - return localBeanProps; - } - } - - /** - * @param startClass - * @param stopClass - * @return a List<String> containing all of the bean names between - * startClass and stopClass. Start class must be a descendant - * (sub-class, sub-sub-class etc.) of stopClass. The properties - * on stopClass are excluded from analysis. - */ - private static List/* <PropertyDescriptor> */calculateBeanProperties( - final Class startClass, final Class stopClass) - { - BeanInfo beanInfo; - List names = new ArrayList(); - - try - { - beanInfo = Introspector.getBeanInfo(startClass, stopClass); - final PropertyDescriptor[] descriptors = beanInfo - .getPropertyDescriptors(); - - if (descriptors != null) - { - names = Arrays.asList(descriptors); - } - } - catch (final IntrospectionException e) - { - e.printStackTrace(); - } - return names; - } - - } - - /** - * Visits this node and it's entire tree and makes all nodes protected. - */ - public final void setSubtreeProtected() - { - // lock children first - final ComponentTreeVisitor protectionVisitor = new ComponentTreeVisitor(VisitationPolicy.ChildrenFirstPolicy) - { - public void visit(ComponentInfo component) - { - component.setProtected(); - } - }; - - accept(protectionVisitor); - } - - public void accept(AbstractVisitor visitor) - { - // check policy ordering - if (visitor.getPolicy().getOrdering() == VisitationPolicy.VISIT_PARENT_FIRST) - { - visitor.visit(this); - visitChildren(visitor); - } - else - { - visitChildren(visitor); - visitor.visit(this); - } - } - - private void visitChildren(AbstractVisitor visitor) - { - for (final Iterator it = getVisitableChildren(); it.hasNext();) - { - visitor.visit(it.next()); - } - } - - public Iterator getVisitableChildren() - { - return getChildren().iterator(); - } -}
\ No newline at end of file diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/ComponentTreeVisitor.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/ComponentTreeVisitor.java deleted file mode 100644 index 4bedc7c67..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/ComponentTreeVisitor.java +++ /dev/null @@ -1,39 +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.common.runtime.internal.model.component; - -/** - * An abstract class sub-classed by objects that wish to apply a Visitor pattern - * type visitation to a component tree. - * - * @author cbateman - * - */ -public abstract class ComponentTreeVisitor extends AbstractVisitor -{ - /** - * @param policy - */ - public ComponentTreeVisitor(final VisitationPolicy policy) - { - super(policy); - } - - /** - * @param component - */ - public abstract void visit(final ComponentInfo component); - - public final void visit(final Object object) - { - visit((ComponentInfo) object); - } -}
\ No newline at end of file diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/ComponentTypeInfo.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/ComponentTypeInfo.java deleted file mode 100644 index 74c7c9bcb..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/ComponentTypeInfo.java +++ /dev/null @@ -1,106 +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.common.runtime.internal.model.component; - -import org.eclipse.jst.jsf.common.runtime.internal.model.types.ClassTypeInfo; - -/** - * Type information about a UIComponent - * - * @author cbateman - * - */ -public class ComponentTypeInfo extends ClassTypeInfo -{ - /** - * serializable uid - */ - private static final long serialVersionUID = -311156682935177206L; - /** - * the ComponentType (see JSF spec for definition) - */ - protected final String _componentType; // may be null, since may not be - // known at runtime - /** - * the component family (see JSF spec) - */ - protected final String _componentFamily; - /** - * the render family (see JSF spec) - */ - protected final String _renderFamily; - - /** - * @param componentType - * @param componentClass - * @param componentFamily - * @param renderFamily - */ - public ComponentTypeInfo(final String componentType, - final String componentClass, final String componentFamily, - final String renderFamily) - { - super(componentClass, new String[0], new String[0]); - _componentType = componentType; - _componentFamily = componentFamily; - _renderFamily = renderFamily; - } - - /** - * @param componentType - * @param superClasses - * @param interfaces - * @param componentClass - * @param componentFamily - * @param renderFamily - */ - public ComponentTypeInfo(final String componentType, - final String componentClass, - final String[] superClasses, final String[] interfaces, - final String componentFamily, - final String renderFamily) - { - super(componentClass, superClasses, interfaces); - _componentType = componentType; - _componentFamily = componentFamily; - _renderFamily = renderFamily; - } - - /** - * @return the component type or null if unknown (may not be at runtime) - */ - public final String getComponentType() - { - return _componentType; - } - - /** - * @return the component family - */ - public final String getComponentFamily() - { - return _componentFamily; - } - - /** - * @return the render family - */ - public final String getRenderFamily() - { - return _renderFamily; - } - - public String toString() - { - return "Component Type Info: type = " + _componentType + " family=" + _componentFamily //$NON-NLS-1$ //$NON-NLS-2$ - + " renderer=" + _renderFamily + ", "+super.toString(); //$NON-NLS-1$ //$NON-NLS-2$ - } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/IVisitable.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/IVisitable.java deleted file mode 100644 index 6ddd83b34..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/IVisitable.java +++ /dev/null @@ -1,32 +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.common.runtime.internal.model.component; - -import java.util.Iterator; - -/** - * Implemented by a class that can accept visitors - * - */ -interface IVisitable -{ - /** - * Called on a visitable to accept a visitor - * - * @param visitor - */ - void accept(AbstractVisitor visitor); - - /** - * @return an iterator that returns IVisitable children. - */ - Iterator getVisitableChildren(); -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/UICommandInfo.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/UICommandInfo.java deleted file mode 100644 index 9ff50f466..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/UICommandInfo.java +++ /dev/null @@ -1,117 +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.common.runtime.internal.model.component; - -import java.util.Iterator; -import java.util.List; -import java.util.Map; - -import org.eclipse.jst.jsf.common.runtime.internal.model.behavioural.IActionSource2Info; -import org.eclipse.jst.jsf.common.runtime.internal.model.behavioural.IActionSourceInfo; -import org.eclipse.jst.jsf.common.runtime.internal.model.decorator.ActionListenerDecorator; - -/** - * An design time analog of the standard UICommand. - * @author cbateman - * - */ -public class UICommandInfo extends ComponentInfo implements IActionSource2Info { - private final String _actionExpression; - private final String _actionListener; - private final boolean _isImmediate; - - /** - * serialization id - */ - private static final long serialVersionUID = -9025172832535840949L; - - /** - * @param id - * @param parent - * @param componentTypeInfo - * @param isRendered - * @param actionSourceInfo - */ - protected UICommandInfo(final String id, final ComponentInfo parent, - final ComponentTypeInfo componentTypeInfo, - final boolean isRendered, final IActionSourceInfo actionSourceInfo) { - super(id, parent, componentTypeInfo, isRendered); - - if (actionSourceInfo == null) { - _actionExpression = null; - _actionListener = null; - _isImmediate = false; - } else { - // TODO: having action and actionExpression will come back to - // to bite us. - _actionExpression = actionSourceInfo.getAction(); - _actionListener = actionSourceInfo.getActionListener(); - _isImmediate = actionSourceInfo.isImmediate(); - - for (final Iterator it = actionSourceInfo.getActionListeners() - .iterator(); it.hasNext();) { - final ActionListenerDecorator actionListener = - (ActionListenerDecorator) it.next(); - addActionListener(actionListener); - } - } - } - - /** - * @param parent - * @param componentTypeInfo - * @param attributes - */ - protected UICommandInfo(final ComponentInfo parent, final ComponentTypeInfo componentTypeInfo, - Map attributes) - { - this(getStringProperty("id", attributes, true), //$NON-NLS-1$ - parent, componentTypeInfo, - getBooleanProperty("rendered", attributes, false), //$NON-NLS-1$ - getActionSourceInfo("$actionSourceInfo", attributes) //$NON-NLS-1$ - ); - } - - private static IActionSourceInfo getActionSourceInfo(String key, - Map attributes) - { - return (IActionSourceInfo) attributes.get(key); - } - - public String getActionExpression() { - return _actionExpression; - } - - public final void addActionListener(final ActionListenerDecorator actionListener) { - addDecorator(actionListener, ComponentFactory.ACTION_LISTENER); - } - - public final String getAction() { - return _actionExpression; - } - - public final String getActionListener() { - return _actionListener; - } - - public final List getActionListeners() { - return getDecorators(ComponentFactory.ACTION_LISTENER); - } - - public final boolean isImmediate() { - return _isImmediate; - } - - protected String getMostSpecificComponentName() - { - return "UICommand"; //$NON-NLS-1$ - } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/UIDataInfo.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/UIDataInfo.java deleted file mode 100644 index 56981af98..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/UIDataInfo.java +++ /dev/null @@ -1,219 +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.common.runtime.internal.model.component; - -import java.util.Map; - -import org.eclipse.jst.jsf.common.runtime.internal.model.bean.DataModelInfo; -import org.eclipse.jst.jsf.common.runtime.internal.model.bean.SerializableObject; -import org.eclipse.jst.jsf.common.runtime.internal.model.behavioural.INamingContainerInfo; - -/** - * Design time analog to UIData. - * - * @author cbateman - * - */ -public class UIDataInfo extends ComponentInfo implements INamingContainerInfo -{ - /** - * the standard name for the footer facet - */ - public final static String FACET_NAME_FOOTER = "footer"; //$NON-NLS-1$ - /** - * the standard name for the header facet. - */ - public final static String FACET_NAME_HEADER = "header"; //$NON-NLS-1$ - /** - * serialization id - */ - private static final long serialVersionUID = 3473288390914978784L; - - private final DataModelInfo _dataModel; - private final int _first; - private final int _rowCount; - private final boolean _rowAvailable; - private final SerializableObject _rowData; - private final int _rowIndex; - private final int _rows; - private final SerializableObject _value; - private final String _var; - - /** - * @param id - * @param parent - * @param componentTypeInfo - * @param isRendered - * @param dataModel - * @param first - * @param footer - * @param header - * @param rowCount - * @param rowAvailable - * @param rowData - * @param rowIndex - * @param rows - * @param value - * @param var - */ - public UIDataInfo(final String id, final ComponentInfo parent, - final ComponentTypeInfo componentTypeInfo, - final boolean isRendered, final DataModelInfo dataModel, - final int first, final ComponentInfo footer, - final ComponentInfo header, final int rowCount, - final boolean rowAvailable, final Object rowData, - final int rowIndex, final int rows, final Object value, - final String var) - { - super(id, parent, componentTypeInfo, isRendered); - _dataModel = dataModel; - _first = first; - _rowCount = rowCount; - _rowAvailable = rowAvailable; - _rowData = new SerializableObject(rowData); - _rowIndex = rowIndex; - _rows = rows; - _value = new SerializableObject(value); - _var = var; - - if (footer != null) - { - addFacet(FACET_NAME_FOOTER, footer); - } - - if (header != null) - { - addFacet(FACET_NAME_HEADER, header); - } - } - - /** - * @param parent - * @param componentTypeInfo - * @param attributes - */ - public UIDataInfo(final ComponentInfo parent, - final ComponentTypeInfo componentTypeInfo, Map attributes) - { - this(getStringProperty("id", attributes, true), parent, //$NON-NLS-1$ - componentTypeInfo, - getBooleanProperty("rendered", attributes, false), //$NON-NLS-1$ - getDataModelInfo("$dataModel", attributes), //$NON-NLS-1$ - getIntegerProperty("first", attributes), //$NON-NLS-1$ - getComponentProperty("footer", attributes), //$NON-NLS-1$ - getComponentProperty("header", attributes), //$NON-NLS-1$ - getIntegerProperty("rowCount", attributes), //$NON-NLS-1$ - getBooleanProperty("rowAvailable", attributes, false), //$NON-NLS-1$ - attributes.get("rowData"), //$NON-NLS-1$ - getIntegerProperty("rowIndex", attributes), //$NON-NLS-1$ - getIntegerProperty("rows", attributes), //$NON-NLS-1$ - attributes.get("value"), //$NON-NLS-1$ - getStringProperty("var", attributes, false)); //$NON-NLS-1$ - } - - private static DataModelInfo getDataModelInfo(String key, Map attributes) - { - return (DataModelInfo) attributes.get(key); - } - - /** - * @return the data model - */ - public final DataModelInfo getDataModel() - { - return _dataModel; - } - - /** - * @return the first row - */ - public final int getFirst() - { - return _first; - } - - /** - * @return the row count - */ - public final int getRowCount() - { - return _rowCount; - } - - /** - * @return true if the row is available - */ - public final boolean isRowAvailable() - { - return _rowAvailable; - } - - /** - * @return the row data (may be null if not serialiable) - */ - public final Object getRowData() - { - return _rowData.getMaybeSerializable(); - } - - /** - * @return the row index - */ - public final int getRowIndex() - { - return _rowIndex; - } - - /** - * @return the rows - */ - public final int getRows() - { - return _rows; - } - - /** - * @return the value of the model (may be null if not serialiable) - */ - public final Object getValue() - { - return _value.getMaybeSerializable(); - } - - /** - * @return the name used to define the EL row variable - */ - public final String getVar() - { - return _var; - } - - /** - * @return the header facet or null. - */ - public final ComponentInfo getHeader() - { - return getFacet(FACET_NAME_HEADER); - } - - /** - * @return the footer facet or null. - */ - public final ComponentInfo getFooter() - { - return getFacet(FACET_NAME_FOOTER); - } - - protected String getMostSpecificComponentName() - { - return "UIData"; //$NON-NLS-1$ - } -}
\ No newline at end of file diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/UIFormInfo.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/UIFormInfo.java deleted file mode 100644 index 2b8233055..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/UIFormInfo.java +++ /dev/null @@ -1,86 +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.common.runtime.internal.model.component; - -import java.util.Map; - -import org.eclipse.jst.jsf.common.runtime.internal.model.behavioural.INamingContainerInfo; - -/** - * A design-time analog for the UIForm. - * - * @author cbateman - */ -public class UIFormInfo extends ComponentInfo implements INamingContainerInfo -{ - /** - * serializable id - */ - private static final long serialVersionUID = 6961034911873576644L; - - private final boolean _prependId; - private final boolean _submitted; - - /** - * @param id - * @param parent - * @param componentTypeInfo - * @param isRendered - * @param prependId - * @param submitted - */ - protected UIFormInfo(final String id, final ComponentInfo parent, - final ComponentTypeInfo componentTypeInfo, final boolean isRendered - , final boolean prependId, final boolean submitted) { - super(id, parent, componentTypeInfo, isRendered); - _prependId = prependId; - _submitted = submitted; - } - - /** - * @param parent - * @param componentTypeInfo - * @param attributes - */ - protected UIFormInfo(final ComponentInfo parent, ComponentTypeInfo componentTypeInfo, - Map attributes) - { - this(getStringProperty("id", attributes, true), //$NON-NLS-1$ - parent, - componentTypeInfo, - getBooleanProperty("rendered", attributes, false), //$NON-NLS-1$ - getBooleanProperty("prependId", attributes, false), //$NON-NLS-1$ - getBooleanProperty("submitted", attributes, false)); //$NON-NLS-1$ - } - - /** - * JSF 1.2 only - * - * @return true if the form allows its id to be prepended to its - * descendent's ids. - */ - public final boolean isPrependId() - { - return _prependId; - } - - /** - * @return true if the form is submitted. - */ - public final boolean isSubmitted() { - return _submitted; - } - - protected String getMostSpecificComponentName() - { - return "UIForm"; //$NON-NLS-1$ - } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/UIInputInfo.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/UIInputInfo.java deleted file mode 100644 index 14a613192..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/UIInputInfo.java +++ /dev/null @@ -1,182 +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.common.runtime.internal.model.component; - -import java.util.Iterator; -import java.util.List; -import java.util.Map; - -import org.eclipse.jst.jsf.common.runtime.internal.model.behavioural.IEditableValueHolderInfo; -import org.eclipse.jst.jsf.common.runtime.internal.model.decorator.ValidatorDecorator; -import org.eclipse.jst.jsf.common.runtime.internal.model.decorator.ValueChangeListenerDecorator; - -/** - * A design-time analog of the standard UIInput. - * - * @author cbateman - * - */ -public class UIInputInfo extends UIOutputInfo implements - IEditableValueHolderInfo -{ - /** - * serializable uid - */ - private static final long serialVersionUID = -6055473902554910848L; - private final boolean _isValid; - private final boolean _isImmediate; - private final boolean _isRequired; - private final Object _submittedValue; - private final String _validator; - private final String _valueChangeListener; - private final boolean _localSetValue; - - /** - * @param id - * @param parent - * @param typeInfo - * @param editableValueHolderInfo - * @param isRendered - */ - protected UIInputInfo(final String id, final ComponentInfo parent, - final ComponentTypeInfo typeInfo, - final IEditableValueHolderInfo editableValueHolderInfo, - final boolean isRendered) - { - super(id, parent, typeInfo, editableValueHolderInfo, isRendered); - - if (editableValueHolderInfo == null) - { - _isValid = true; - _isImmediate = false; - _isRequired = false; - _localSetValue = false; - _submittedValue = null; - _validator = null; - _valueChangeListener = null; - } - else - { - _isValid = editableValueHolderInfo.isValid(); - _isImmediate = editableValueHolderInfo.isImmediate(); - _isRequired = editableValueHolderInfo.isRequired(); - _localSetValue = editableValueHolderInfo.isLocalSetValue(); - _submittedValue = editableValueHolderInfo.getSubmittedValue(); - _validator = editableValueHolderInfo.getValidator(); - _valueChangeListener = editableValueHolderInfo - .getValueChangeListener(); - - for (final Iterator it = editableValueHolderInfo.getValidators() - .iterator(); it.hasNext();) - { - final ValidatorDecorator validator = (ValidatorDecorator) it - .next(); - addValidator(validator); - } - - for (final Iterator it = editableValueHolderInfo - .getValueChangeListeners().iterator(); it.hasNext();) - { - final ValueChangeListenerDecorator valueChangeListener = (ValueChangeListenerDecorator) it - .next(); - addValueChangeListener(valueChangeListener); - } - } - } - - /** - * @param parent - * @param typeInfo - * @param attributes - */ - protected UIInputInfo(final ComponentInfo parent, - final ComponentTypeInfo typeInfo, Map attributes) - { - this(getStringProperty("id", attributes, true), parent, typeInfo, //$NON-NLS-1$ - getEditableValueHolderInfo("$editableValueHolderInfo", //$NON-NLS-1$ - attributes), getBooleanProperty("rendered", attributes, false)); //$NON-NLS-1$ - } - - private static IEditableValueHolderInfo getEditableValueHolderInfo( - String key, Map attributes) - { - return (IEditableValueHolderInfo) attributes.get(key); - } - - // public String toString() { - // final String toString = super.toString(); - // return toString + ", isValid=" + _isValid + ", isImmediate=" - // + _isImmediate + ", isRequired=" + _isRequired; - // } - - // @Override - protected String getMostSpecificComponentName() - { - return "UIInput"; //$NON-NLS-1$ - } - - public final boolean isValid() - { - return _isValid; - } - - public final boolean isImmediate() - { - return _isImmediate; - } - - public final boolean isRequired() - { - return _isRequired; - } - - public final Object getSubmittedValue() - { - return _submittedValue; - } - - public final String getValidator() - { - return _validator; - } - - public final String getValueChangeListener() - { - return _valueChangeListener; - } - - public final boolean isLocalSetValue() - { - return _localSetValue; - } - - public final void addValidator(final ValidatorDecorator validator) - { - addDecorator(validator, ComponentFactory.VALIDATOR); - } - - public final void addValueChangeListener( - final ValueChangeListenerDecorator valueChangeListenerInfo) - { - addDecorator(valueChangeListenerInfo, - ComponentFactory.VALUE_CHANGE_LISTENER); - } - - public final List getValidators() - { - return getDecorators(ComponentFactory.VALIDATOR); - } - - public final List getValueChangeListeners() - { - return getDecorators(ComponentFactory.VALUE_CHANGE_LISTENER); - } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/UIOutputInfo.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/UIOutputInfo.java deleted file mode 100644 index 990028a45..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/component/UIOutputInfo.java +++ /dev/null @@ -1,132 +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.common.runtime.internal.model.component; - -import java.util.List; -import java.util.Map; - -import org.eclipse.jst.jsf.common.runtime.internal.model.behavioural.IValueHolderInfo; -import org.eclipse.jst.jsf.common.runtime.internal.model.behavioural.ValueHolderInfo; -import org.eclipse.jst.jsf.common.runtime.internal.model.decorator.ConverterDecorator; - -/** - * A design-time analog for the UIOutput - * - * @author cbateman - * - */ -public class UIOutputInfo extends ComponentInfo implements IValueHolderInfo { - /** - * serializable uid - */ - private static final long serialVersionUID = 9096297578991706150L; - - /** - * the value - */ - protected final Object _value; - /** - * the value before any EL evaluation - */ - protected final Object _localValue; - - /** - * @param id - * @param parent - * @param typeInfo - * @param valueHolderInfo - * @param isRendered - */ - protected UIOutputInfo(final String id, final ComponentInfo parent, - final ComponentTypeInfo typeInfo, - final IValueHolderInfo valueHolderInfo, final boolean isRendered) { - super(id, parent, typeInfo, isRendered); - - if (valueHolderInfo == null) { - _value = null; - _localValue = null; - } else { - _value = valueHolderInfo.getValue(); - _localValue = valueHolderInfo.getLocalValue(); - - final ConverterDecorator converter = valueHolderInfo.getConverter(); - if (converter != null) { - addDecorator(converter, ComponentFactory.CONVERTER); - } - } - } - - /** - * @param parent - * @param typeInfo - * @param attributes - */ - protected UIOutputInfo(final ComponentInfo parent, final ComponentTypeInfo typeInfo, - final Map attributes) - { - this(getStringProperty("id", attributes, true), //$NON-NLS-1$ - parent, - typeInfo, - getValueHolderInfo("$valueHolderInfo", attributes), //$NON-NLS-1$ - getBooleanProperty("rendered", attributes, false)); //$NON-NLS-1$ - } - - /** - * @param key - * @param attributes - * @return the non-standard value holder info that encapsulates the - * ValueHolder properties. This is never mandatory. - */ - protected static IValueHolderInfo getValueHolderInfo(String key, Map attributes) - { - IValueHolderInfo info = (IValueHolderInfo) attributes.get(key); - - if (info != null) - { - return info; - } - Object value = attributes.get("value"); //$NON-NLS-1$ - if (value != null) - { - Object converter = attributes.get("converter"); //$NON-NLS-1$ - Object localValue = attributes.get("localValue"); //$NON-NLS-1$ - - return new ValueHolderInfo((ConverterDecorator) converter, localValue, value); - } - return null; - } - - // @Override - protected String getMostSpecificComponentName() { - return "UIOutput"; //$NON-NLS-1$ - } - - public final ConverterDecorator getConverter() { - // should only be a single converter decorator... - // so on this interface we'll return the first one if present. - // to do things like error checking, use the getDecorator - final List converters = getDecorators(ComponentFactory.CONVERTER); - - if (converters.size() > 0) { - return (ConverterDecorator) converters.get(0); - } - - return null; - } - - public final Object getLocalValue() { - return _localValue; - } - - public final Object getValue() { - return _value; - } -}
\ No newline at end of file diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/datatypes/ELExpression.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/datatypes/ELExpression.java deleted file mode 100644 index b14f68d11..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/datatypes/ELExpression.java +++ /dev/null @@ -1,25 +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.common.runtime.internal.model.datatypes; - -/** - * An abstraction for an EL expression. - * - * @author cbateman - * - */ -public abstract class ELExpression -{ - /** - * @return the original text of EL expression - */ - public abstract String getText(); -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/ActionListenerDecorator.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/ActionListenerDecorator.java deleted file mode 100644 index 6c7993e7e..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/ActionListenerDecorator.java +++ /dev/null @@ -1,35 +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.common.runtime.internal.model.decorator; - -import org.eclipse.jst.jsf.common.runtime.internal.model.component.ComponentInfo; - -/** - * Design time ActionListener decorator - * - * @author cbateman - * - */ -public class ActionListenerDecorator extends ComponentDecorator { - - /** - * - */ - private static final long serialVersionUID = 3806862878381550874L; - - /** - * @param decorates - */ - public ActionListenerDecorator(final ComponentInfo decorates) { - super(decorates); - } - -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/ComponentDecorator.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/ComponentDecorator.java deleted file mode 100644 index b700073a4..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/ComponentDecorator.java +++ /dev/null @@ -1,42 +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.common.runtime.internal.model.decorator; - -import org.eclipse.jst.jsf.common.runtime.internal.model.component.ComponentInfo; - -/** - * @author cbateman - * - */ -public abstract class ComponentDecorator extends Decorator -{ - /** - * - */ - private static final long serialVersionUID = 4378142984217256364L; - - private final ComponentInfo _decorates; - - /** - * @param decorates - */ - public ComponentDecorator(final ComponentInfo decorates) - { - _decorates = decorates; - } - - /** - * @return the component that this decorator decorates. - */ - public final ComponentInfo getDecorates() { - return _decorates; - } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/ConverterDecorator.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/ConverterDecorator.java deleted file mode 100644 index 692ec3b3d..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/ConverterDecorator.java +++ /dev/null @@ -1,48 +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.common.runtime.internal.model.decorator; - -import org.eclipse.jst.jsf.common.runtime.internal.model.component.ComponentInfo; - -/** - * A converter decorator. - * - * @author cbateman - * - */ -public class ConverterDecorator extends ComponentDecorator { - - private final ConverterTypeInfo _typeInfo; - - /** - * serializable id - */ - private static final long serialVersionUID = 3838224353030247227L; - - - /** - * @param decorates - * @param typeInfo - */ - public ConverterDecorator(final ComponentInfo decorates, final ConverterTypeInfo typeInfo) - { - super(decorates); - _typeInfo = typeInfo; - } - - /** - * @return the converter's type info. - */ - public final ConverterTypeInfo getTypeInfo() - { - return _typeInfo; - } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/ConverterTypeInfo.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/ConverterTypeInfo.java deleted file mode 100644 index f013d3caf..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/ConverterTypeInfo.java +++ /dev/null @@ -1,146 +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.common.runtime.internal.model.decorator; - -import org.eclipse.jst.jsf.common.runtime.internal.model.types.ClassTypeInfo; - -/** - * Type information about a converter. - * - * @author cbateman - * - */ -public class ConverterTypeInfo extends ClassTypeInfo -{ - /** - * serializable id - */ - private static final long serialVersionUID = -7238952424045449907L; - private static final String[] NO_FOR_CLASS = new String[0]; - private final String _converterId; - private final String[] _forClasses; - - /** - * For unknown converters, use the UNKNOWN constant. - * - * @param className - * @param converterId - * @throws java.lang.IllegalArgumentException - * if both className and converterId are null. - * - */ - public ConverterTypeInfo(String className, String converterId) - { - super(className, new String[0], new String[0]); - if (className == null && converterId == null) - { - throw new IllegalArgumentException( - "converterClass and converterId must not both be null. For unknown validator use the UNKNOWN constant"); //$NON-NLS-1$ - } - - _converterId = converterId; - _forClasses = NO_FOR_CLASS; - } - - /** - * For unknown converters, use the UNKNOWN constant. - * - * @param className - * @param superClasses - * @param interfaces - * @param converterId - * @param forClass - * @throws java.lang.IllegalArgumentException - * if both className and converterId are null. - * - */ - public ConverterTypeInfo(String className, String[] superClasses, - String[] interfaces, String converterId, String[] forClass) - { - super(className, superClasses, interfaces); - if (className == null && converterId == null) - { - throw new IllegalArgumentException( - "converterClass and converterId must not both be null. For unknown validator use the UNKNOWN constant"); //$NON-NLS-1$ - } - - _converterId = converterId; - if (forClass == null) - { - _forClasses = NO_FOR_CLASS; - } - else - { - _forClasses = forClass; - } - } - - /** - * Use when the converter's information unknown such as occurs when using - * the f:converter tag. - */ - public static final ConverterTypeInfo UNKNOWN = new ConverterTypeInfo( - (Object) null); - - /** - * A private constructor used to create the UNRESOLVED constant. We use an - * Object arg here (which is discarded) rather than using the zero-arg - * constructor so as not mess up anything like Serializable that may depend - * on how zero-arg constructors are defined. - * - * @param unresolved - */ - private ConverterTypeInfo(Object unresolved) - { - super(null, new String[0], new String[0]); - _converterId = null; - _forClasses = NO_FOR_CLASS; - } - - /** - * @return the converter's id. - */ - public final String getConverterId() - { - return _converterId; - } - - /** - * @return a copy of the listof classes that this type converters to. May - * be empty. Never null. - */ - public final String[] getForClass() - { - final String[] returnArray = new String[_forClasses.length]; - System.arraycopy(_forClasses, 0, returnArray, 0, _forClasses.length); - return returnArray; - } - - public String toString() - { - String toString = ""; //$NON-NLS-1$ - - if (_forClasses.length > 0) - { - toString = "For-Classes: ["; //$NON-NLS-1$ - for (int i = 0; i < _forClasses.length; i++) - { - toString += _forClasses[i]; - if (i < _forClasses.length-1) - { - toString += ", "; //$NON-NLS-1$ - } - } - toString += "], "; //$NON-NLS-1$ - } - return toString + "Converter Type Info: type = " + _converterId + ", "+super.toString(); //$NON-NLS-1$ //$NON-NLS-2$ - } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/Decorator.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/Decorator.java deleted file mode 100644 index ceaae4e4f..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/Decorator.java +++ /dev/null @@ -1,31 +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.common.runtime.internal.model.decorator; - -import java.io.Serializable; - -import org.eclipse.jst.jsf.common.runtime.internal.model.ViewObject; - -/** - * The abstract super-class of all view object decorators. - * - * @author cbateman - * - */ -public abstract class Decorator extends ViewObject implements Serializable -{ - - /** - * serializable id - */ - private static final long serialVersionUID = -3138829736243154022L; - -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/FacetDecorator.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/FacetDecorator.java deleted file mode 100644 index 32e7f0dc5..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/FacetDecorator.java +++ /dev/null @@ -1,45 +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.common.runtime.internal.model.decorator; - -import org.eclipse.jst.jsf.common.runtime.internal.model.component.ComponentInfo; - -/** - * Component decorator for facets. - * - * @author cbateman - * - */ -public class FacetDecorator extends ComponentDecorator -{ - /** - * - */ - private static final long serialVersionUID = 94806944978127012L; - - private final String _name; - - /** - * @param name - * @param component - */ - public FacetDecorator(final String name, final ComponentInfo component) { - super(component); - _name = name; - } - - /** - * @return the name of the facet. - */ - public final String getName() { - return _name; - } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/ValidatorDecorator.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/ValidatorDecorator.java deleted file mode 100644 index b7e33d03c..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/ValidatorDecorator.java +++ /dev/null @@ -1,45 +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.common.runtime.internal.model.decorator; - -import org.eclipse.jst.jsf.common.runtime.internal.model.component.ComponentInfo; - -/** - * Validator decorator. - * - * @author cbateman - * - */ -public class ValidatorDecorator extends ComponentDecorator { - /** - * - */ - private static final long serialVersionUID = -2898015711621314782L; - - private final ValidatorTypeInfo _typeInfo; - - /** - * @param decorates - * @param typeInfo - */ - public ValidatorDecorator(final ComponentInfo decorates, final ValidatorTypeInfo typeInfo) { - super(decorates); - _typeInfo = typeInfo; - } - - /** - * @return the validator's type info - */ - public final ValidatorTypeInfo getTypeInfo() - { - return _typeInfo; - } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/ValidatorTypeInfo.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/ValidatorTypeInfo.java deleted file mode 100644 index 7e4a6fcee..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/ValidatorTypeInfo.java +++ /dev/null @@ -1,103 +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.common.runtime.internal.model.decorator; - -import org.eclipse.jst.jsf.common.runtime.internal.model.types.ClassTypeInfo; - -/** - * Type information about validator decorator. - * @author cbateman - * - */ -public class ValidatorTypeInfo extends ClassTypeInfo -{ - /** - * - */ - private static final long serialVersionUID = 7512992316792276160L; - private final String _validatorId; - - /** - * For unknown validators, use the UNKNOWN constant. - * - * @param validatorClass - * @param validatorId - * @throws java.lang.IllegalArgumentException if both className and - * converterId are null. - * - */ - public ValidatorTypeInfo(String validatorClass, String validatorId) - { - super(validatorClass, new String[0], new String[0]); - - if (validatorClass == null && validatorId == null) - { - throw new IllegalArgumentException("validatorClass and validatorId must not both be null. For unknown validator use the UNKNOWN constant"); //$NON-NLS-1$ - } - _validatorId = validatorId; - } - - /** - * For unknown validators, use the UNKNOWN constant. - * - * @param validatorClass - * @param superClasses - * @param interfaces - * @param validatorId - * @throws java.lang.IllegalArgumentException if both className and - * converterId are null. - * - */ - public ValidatorTypeInfo(String validatorClass, String[] superClasses, String[] interfaces, String validatorId) - { - super(validatorClass, superClasses, interfaces); - - if (validatorClass == null && validatorId == null) - { - throw new IllegalArgumentException("validatorClass and validatorId must not both be null. For unknown validator use the UNKNOWN constant"); //$NON-NLS-1$ - } - _validatorId = validatorId; - } - - /** - * Use when a validator's type info information is unknown. - */ - public static final ValidatorTypeInfo UNKNOWN = - new ValidatorTypeInfo((Object)null); - - /** - * A private constructor used to create the UNRESOLVED constant. - * We use an Object arg here (which is discarded) rather than using - * the zero-arg constructor so as not mess up anything like Serializable - * that may depend on how zero-arg constructors are defined. - * - * @param unresolved - */ - private ValidatorTypeInfo(Object unresolved) - { - super(null, new String[0], new String[0]); - _validatorId = null; - } - - /** - * @return the validator id (may be null if unknown). - */ - public final String getValidatorId() - { - return _validatorId; - } - - public String toString() - { - return "Validator Type Info: type = " + _validatorId + ", "+super.toString(); //$NON-NLS-1$ //$NON-NLS-2$ - } - -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/ValueChangeListenerDecorator.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/ValueChangeListenerDecorator.java deleted file mode 100644 index e344c1ec3..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/decorator/ValueChangeListenerDecorator.java +++ /dev/null @@ -1,36 +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.common.runtime.internal.model.decorator; - -import org.eclipse.jst.jsf.common.runtime.internal.model.component.ComponentInfo; -import org.eclipse.jst.jsf.common.runtime.internal.model.event.IValueChangeListenerInfo; - -/** - * ValueChangeListener component decorator. - * - * @author cbateman - * - */ -public class ValueChangeListenerDecorator extends ComponentDecorator implements - IValueChangeListenerInfo -{ - /** - * serializable id - */ - private static final long serialVersionUID = 9045831927898936727L; - - /** - * @param decorates - */ - public ValueChangeListenerDecorator(ComponentInfo decorates) { - super(decorates); - } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/event/IActionListenerInfo.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/event/IActionListenerInfo.java deleted file mode 100644 index a26b3a1d2..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/event/IActionListenerInfo.java +++ /dev/null @@ -1,21 +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.common.runtime.internal.model.event; - -/** - * A design time analog for the ActionListener - * @author cbateman - * - */ -public interface IActionListenerInfo extends IFacesListenerInfo -{ - // TODO: -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/event/IFacesListenerInfo.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/event/IFacesListenerInfo.java deleted file mode 100644 index b8996d40a..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/event/IFacesListenerInfo.java +++ /dev/null @@ -1,21 +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.common.runtime.internal.model.event; - -/** - * A design-time analog for the runtime Faces Listener. - * @author cbateman - * - */ -public interface IFacesListenerInfo -{ - // no methods -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/event/IValueChangeListenerInfo.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/event/IValueChangeListenerInfo.java deleted file mode 100644 index 3d21a7a3d..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/event/IValueChangeListenerInfo.java +++ /dev/null @@ -1,21 +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.common.runtime.internal.model.event; - -/** - * A design time analog for the runtime ValueChangeListener interface. - * - * @author cbateman - * - */ -public interface IValueChangeListenerInfo extends IFacesListenerInfo { - // TODO: -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/types/ClassTypeInfo.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/types/ClassTypeInfo.java deleted file mode 100644 index 4a39bc0b3..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/types/ClassTypeInfo.java +++ /dev/null @@ -1,137 +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.common.runtime.internal.model.types; - -import java.util.Arrays; -import java.util.Collections; -import java.util.HashSet; -import java.util.Set; - -/** - * A type info that has class information. - * - * @author cbateman - * - */ -public abstract class ClassTypeInfo extends TypeInfo implements IClassTypeInfo -{ - /** - * serializable id - */ - private static final long serialVersionUID = -5046230589012357680L; - - /** - * the fully qualified class name of the implementation class for this - * type. - */ - protected final String _className; - - /** - * known super classes of the component class - */ - protected final String[] _superClasses; - - /** - * known interfaces implemented by the component class - */ - protected final String[] _interfaces; - - /** - * used internally by isInstanceOf - */ - private Set _superTypes; // may be lazily constructed - - - /** - * @param className - * @param superClasses - * @param interfaces - */ - protected ClassTypeInfo(final String className, final String[] superClasses, final String[] interfaces) - { - _className = className; - _superClasses = superClasses != null ? superClasses : new String[0]; - _interfaces = interfaces != null ? interfaces : new String[0]; - - if (_superClasses.length + _interfaces.length == 0) - { - // there are no super-types known - _superTypes = Collections.EMPTY_SET; - } - } - - public final String[] getInterfaces() - { - if (_interfaces.length > 0) - { - final String[] copy = new String[_interfaces.length]; - System.arraycopy(_interfaces, 0, copy, 0, _interfaces.length); - return copy; - } - return new String[0]; - } - - public final String[] getSuperClasses() - { - if (_superClasses.length > 0) - { - final String[] copy = new String[_superClasses.length]; - System.arraycopy(_superClasses, 0, copy, 0, _superClasses.length); - return copy; - } - return new String[0]; - } - - public final boolean isInstanceOf(String checkType) - { - if (_superTypes == null) - { - _superTypes = new HashSet(); - _superTypes.addAll(Arrays.asList(_superClasses)); - _superTypes.addAll(Arrays.asList(_interfaces)); - } - - return _superTypes.contains(checkType); - } - - public final String getClassName() - { - return _className; - } - - public String toString() - { - String supers = "["; //$NON-NLS-1$ - - for (int i = 0; i < _superClasses.length; i++) - { - supers += _superClasses[i]; - - if (i < _superClasses.length) - { - supers += ","; //$NON-NLS-1$ - } - } - - for (int i = 0; i < _interfaces.length; i++) - { - supers += _interfaces[i]; - - if (i < _interfaces.length-1) - { - supers += ","; //$NON-NLS-1$ - } - } - supers +="]"; //$NON-NLS-1$ - - return "class= "+getClassName()+ ", supers="+ supers; //$NON-NLS-1$ //$NON-NLS-2$ - } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/types/IAttributeValueProxy.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/types/IAttributeValueProxy.java deleted file mode 100644 index 95b83db19..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/types/IAttributeValueProxy.java +++ /dev/null @@ -1,23 +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.common.runtime.internal.model.types; - -import java.io.Serializable; - -/** - * Wraps - * @author cbateman - * - */ -public interface IAttributeValueProxy extends Serializable -{ -// -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/types/IClassTypeInfo.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/types/IClassTypeInfo.java deleted file mode 100644 index 7b432520c..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/types/IClassTypeInfo.java +++ /dev/null @@ -1,53 +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.common.runtime.internal.model.types; - -/** - * A type info that has an associate Java class. - * @author cbateman - * - */ -public interface IClassTypeInfo -{ - /** - * The fully qualified class name, i.e. java.lang.String - * - * @return the fully qualified class name in dot notation - * - */ - String getClassName(); - - /** - * Should never return null. Return empty array if none. - * - * @return the list of fully-qualified super class names. List is as - * calculated at IClassTypeInfo construction and no guarantee is made - * (although an implementer may do so) that it will be updated if the - * definition of className changes. - */ - String[] getSuperClasses(); - - /** - * Should never return null. Return empty array if none. - * - * @return the list of fully-qualified interface names. List is as - * calculated at IClassTypeInfo construction and no guarantee is made - * (although an implementer may do so) that it will be updated if the - * definition of className changes. - */ - String[] getInterfaces(); - - /** - * @param checkType - * @return true if checkType is in the set comprised of getSuperClasses()+getInterfaces() - */ - boolean isInstanceOf(final String checkType); -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/types/TypeInfo.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/types/TypeInfo.java deleted file mode 100644 index 4061f4a9b..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/model/types/TypeInfo.java +++ /dev/null @@ -1,27 +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.common.runtime.internal.model.types; - -import java.io.Serializable; - -/** - * Abstract super-class of all view object type information objects. - * - * @author cbateman - * - */ -public abstract class TypeInfo implements Serializable -{ - /** - * serializable id - */ - private static final long serialVersionUID = -3653573923653759724L; -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/AbstractTagAttribute.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/AbstractTagAttribute.java deleted file mode 100644 index 696113ae8..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/AbstractTagAttribute.java +++ /dev/null @@ -1,25 +0,0 @@ -package org.eclipse.jst.jsf.common.runtime.internal.view.model.common; - -/** - * Super-class of all ITagAttribute concrete implementations. - * - * @author cbateman - * - */ -public abstract class AbstractTagAttribute implements ITagAttribute -{ - /** - * - */ - private static final long serialVersionUID = 6364594863141579928L; - - public abstract String getName(); - - public abstract String getTargetNamespace(); - - public abstract String getDescription(); - - public abstract String getDisplayName(); - - public abstract boolean isRequired(); -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/ComponentPropertyHandler.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/ComponentPropertyHandler.java deleted file mode 100644 index aa505455b..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/ComponentPropertyHandler.java +++ /dev/null @@ -1,46 +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 - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.jsf.common.runtime.internal.view.model.common; - -/** - * Default implementation of IComponentPropertyHandler. - * - * @author cbateman - * - */ -public class ComponentPropertyHandler extends TagAttributeHandler implements - IComponentPropertyHandler -{ - /** - * - */ - private static final long serialVersionUID = 8614562842401106572L; - private final String _propertyName; - - /** - * @param customHandler - * @param name - * @param elAllowed - * @param propertyName - */ - public ComponentPropertyHandler(final String customHandler, - final String name, final boolean elAllowed, - final String propertyName) - { - super(customHandler, name, elAllowed); - _propertyName = propertyName; - } - - public String getPropertyName() - { - return _propertyName; - } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/IComponentPropertyHandler.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/IComponentPropertyHandler.java deleted file mode 100644 index dfcaf79cc..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/IComponentPropertyHandler.java +++ /dev/null @@ -1,25 +0,0 @@ -/******************************************************************************* - * Copyright (c) ${year} 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 - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.jsf.common.runtime.internal.view.model.common; - -/** - * Maps tag attributes to component properties. - * - * @author cbateman - * - */ -public interface IComponentPropertyHandler extends ITagAttributeHandler -{ - /** - * @return the property name that this handler maps to. - */ - String getPropertyName(); -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/IComponentTagElement.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/IComponentTagElement.java deleted file mode 100644 index d34cb2ff7..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/IComponentTagElement.java +++ /dev/null @@ -1,27 +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.common.runtime.internal.view.model.common; - -import org.eclipse.jst.jsf.common.runtime.internal.model.component.ComponentTypeInfo; - -/** - * A JSF tag element that maps one-to-one to a JSF UIComponent - * - * @author cbateman - * - */ -public interface IComponentTagElement extends IJSFTagElement -{ - /** - * @return the comopnent's type info. - */ - ComponentTypeInfo getComponent(); -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/IConverterTagElement.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/IConverterTagElement.java deleted file mode 100644 index 63e43ada8..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/IConverterTagElement.java +++ /dev/null @@ -1,29 +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.common.runtime.internal.view.model.common; - -import org.eclipse.jst.jsf.common.runtime.internal.model.decorator.ConverterTypeInfo; - -/** - * A tag element that causes the construction registration of a converter on - * a parent object. - * - * @author cbateman - * - */ -public interface IConverterTagElement extends IJSFTagElement -{ - /** - * @return the type info for the converter represented by this - * element - */ - ConverterTypeInfo getConverter(); -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/IHandlerTagElement.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/IHandlerTagElement.java deleted file mode 100644 index 43e68283d..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/IHandlerTagElement.java +++ /dev/null @@ -1,80 +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.common.runtime.internal.view.model.common; - -import java.io.Serializable; - -import org.eclipse.jst.jsf.common.runtime.internal.model.types.TypeInfo; - -/** - * Generic tag handler that has effect when processed by the JSF ViewHandler. - * - * @author cbateman - * - */ -public interface IHandlerTagElement extends IJSFTagElement -{ - /** - * Enumerates known types of built-in tag handlers. - * - * @author cbateman - * - */ - static class TagHandlerType extends TypeInfo implements Serializable - { - /** - * serializable id - */ - private static final long serialVersionUID = 5062853948108253861L; - - private final static int HANDLER_TYPE_FACET = 0; - private final static int HANDLER_TYPE_ACTIONLISTENER = 1; - private final static int HANDLER_TYPE_VALUECHANGELISTENER = 2; - private final static int HANDLER_TYPE_ATTRIBUTE = 3; - - private final static String[] strValues = - {"facet", "actionListener", "valueChangeListener"}; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ - - private final int _intValue; - - public TagHandlerType(int intValue) - { - _intValue = intValue; - } - - public String toString() - { - return strValues[_intValue]; - } - - protected final int intValue() - { - return _intValue; - } - - public final static TagHandlerType FACET = - new TagHandlerType(HANDLER_TYPE_FACET); - public final static TagHandlerType ACTIONLISTENER = - new TagHandlerType(HANDLER_TYPE_ACTIONLISTENER); - public final static TagHandlerType VALUECHANGELISTENER = - new TagHandlerType(HANDLER_TYPE_VALUECHANGELISTENER); - public final static TagHandlerType ATTRIBUTE = - new TagHandlerType(HANDLER_TYPE_ATTRIBUTE); - - } - - /** - * @return the tag handler type as defined by standard known types of - * tags that do not (necessarily) translate into standard objects at - * runtime but may modify the view in some way. - */ - TagHandlerType getTagHandlerType(); -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/IJSFTagElement.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/IJSFTagElement.java deleted file mode 100644 index 435c08abd..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/IJSFTagElement.java +++ /dev/null @@ -1,76 +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.common.runtime.internal.view.model.common; - -import java.io.Serializable; - -/** - * An abstraction of a tag element that maps to a JSF artifact (i.e. component, validator) - * - * @author cbateman - * - */ -public interface IJSFTagElement extends ITagElement -{ - /** - * An enumeration of different kinds of tags. - * - * @author cbateman - * - */ - static class TagType implements Serializable - { - /** - * serializable id - */ - private static final long serialVersionUID = -2845327764902349963L; - private final static int TYPE_COMPONENT = 0; - private final static int TYPE_CONVERTER = 1; - private final static int TYPE_VALIDATOR = 2; - private final static int TYPE_HANDLER = 3; - //private final static int TYPE_UNKNOWN = 4; - - private final static String[] strValues = - {"component", "converter", "validator", "handler"}; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ - - private final int _intValue; - - public TagType(int intValue) - { - _intValue = intValue; - } - - public String toString() - { - return strValues[_intValue]; - } - - protected final int intValue() - { - return _intValue; - } - - public final static TagType COMPONENT = - new TagType(TYPE_COMPONENT); - public final static TagType CONVERTER = - new TagType(TYPE_CONVERTER); - public final static TagType VALIDATOR = - new TagType(TYPE_VALIDATOR); - public final static TagType HANDLER = - new TagType(TYPE_HANDLER); - } - - /** - * @return the type of tag as distinguished by how it may affect the - * view at runtime. - */ - TagType getType(); -}
\ No newline at end of file diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/ITagAttribute.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/ITagAttribute.java deleted file mode 100644 index 52fd6c2fb..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/ITagAttribute.java +++ /dev/null @@ -1,40 +0,0 @@ -package org.eclipse.jst.jsf.common.runtime.internal.view.model.common; - -import java.io.Serializable; - -/** - * Information about a tags attribute - * @author cbateman - * - */ -public interface ITagAttribute extends Serializable -{ - /** - * @return the name of the attribute. In XML this is the "local" name of - * the attribute: that is, it's name without any namespace qualification. - */ - String getName(); - - /** - * @return the unique namespace of the attribute or null if it is always the - * same as it's owner (the typical case in JSF). - */ - String getTargetNamespace(); - - /** - * @return a long-form piece of text, intended for end-user consumption, - * that describes the attribute - */ - String getDescription(); - - /** - * @return a short, user visible label text for the attribute. - */ - String getDisplayName(); - - /** - * @return true if the attribute is required to be populated on the - * element. - */ - boolean isRequired(); -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/ITagAttributeHandler.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/ITagAttributeHandler.java deleted file mode 100644 index f6d15c9ab..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/ITagAttributeHandler.java +++ /dev/null @@ -1,39 +0,0 @@ -/******************************************************************************* - * Copyright (c) ${year} 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 - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.jsf.common.runtime.internal.view.model.common; - -import java.io.Serializable; - -/** - * Basic information on attributes. - * TODO C.B: some question exists in my mind as to how/whether this should merge - * with meta-data enabled type descriptors. - * - * @author cbateman - * - */ -public interface ITagAttributeHandler extends Serializable -{ - /** - * @return the name of the attribute - */ - String getName(); - /** - * @return the name of an extension point used to perform custom handling - * of the attribute. - */ - String getCustomHandler(); - - /** - * @return true if the property allows EL expressions - */ - boolean isELAllowed(); -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/ITagElement.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/ITagElement.java deleted file mode 100644 index e4d8298a5..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/ITagElement.java +++ /dev/null @@ -1,63 +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.common.runtime.internal.view.model.common; - -import java.io.Serializable; -import java.util.Map; - -/** - * Super-interface of all JSF tag elements. - * - * @author cbateman - * - */ -public interface ITagElement extends Serializable -{ - - /** - * @return the name of the tag - */ - public abstract String getName(); - - /** - * @return the namespace uri for this tag - */ - public abstract String getUri(); - - /** - * @return the fully qualified class name in dot separated format - * (i.e. javax.faces.webapp.ConverterTag) - */ - public abstract String getTagHandlerClassName(); - - /** - * @return an unmodifiable map, indexed by name, of all the attribute - * handlers available for this tag element. Each value in the Map - * must be a ITagAttributeHandler. - */ - public abstract Map getAttributeHandlers(); - - /** - * @return the attributes for the tag. - */ - public abstract Map<String, ? extends ITagAttribute> getAttributes(); - /** - * Signals that the tag element should make any mutable data immutable - * and throw exceptions if attempts are made to implement. Flag must - * latch and become irrevocable. - */ -// public abstract void setLocked(); - - /** - * @return true if setLocked has been called. - */ -// public abstract boolean isLocked(); -}
\ No newline at end of file diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/IValidatorTagElement.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/IValidatorTagElement.java deleted file mode 100644 index 947490287..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/IValidatorTagElement.java +++ /dev/null @@ -1,27 +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.common.runtime.internal.view.model.common; - -import org.eclipse.jst.jsf.common.runtime.internal.model.decorator.ValidatorTypeInfo; - -/** - * Represents a tag element for a JSF validator. - * - * @author cbateman - * - */ -public interface IValidatorTagElement extends IJSFTagElement -{ - /** - * @return the type info about the validator. - */ - ValidatorTypeInfo getValidator(); -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/Namespace.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/Namespace.java deleted file mode 100644 index ee0259fa0..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/Namespace.java +++ /dev/null @@ -1,80 +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.common.runtime.internal.view.model.common; - -import java.io.Serializable; -import java.util.Collection; - -/** - * Abstracts an xml namespace used to define a set of view tags - * - */ -public abstract class Namespace implements Serializable -{ - /** - * - */ - private static final long serialVersionUID = 6386464282396970948L; - - /** - * @return the namespace uri. MUST NOT BE NULL - */ - public abstract String getNSUri(); - - /** - * This call may be long running. Call isInitialized to determine if all - * information is already cached, or if calling this method is likely - * to take a long time. - * - * @return the view elements in this namespace. May be empty but MUST NOT BE - * NULL. - */ - public abstract Collection<? extends ITagElement> getViewElements(); - - /** - * This method should be light weight if possible. Unlike calling - * getViewElements().isEmpty, this call should not require that all - * view element children of this namespace be analyzed and constructed in - * order to succeed. - * - * @return true if this name space has view element children - */ - public abstract boolean hasViewElements(); - - /** - * If calculating all view elements is expensive, a Namespace implementation - * may defer calculation until a specific element is requested. A caller of - * getViewElements (such as a UI that shows all tags), may wish to know if - * the entire namespace has been initialized before calling it, since it may - * be long running. - * - * @return true if the namespace's elements have been fully initialized. If this - * method returns false, care should be taken in calling getViewElements() and - * getViewElement() since they may be very long running. - */ - public abstract boolean isInitialized(); - - /** - * @param name - * @return the tag element called 'name' or null if none. - */ - public abstract ITagElement getViewElement(final String name); - - /** - * @return a user readable display name for this namespace or null if none. - */ - public abstract String getDisplayName(); - - public String toString() - { - return getNSUri(); - } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/TagAttributeHandler.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/TagAttributeHandler.java deleted file mode 100644 index b29349515..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/TagAttributeHandler.java +++ /dev/null @@ -1,57 +0,0 @@ -/******************************************************************************* - * Copyright (c) ${year} 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 - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.jsf.common.runtime.internal.view.model.common; - -/** - * Default implementation of ITagAttributeHandler. - * - * @author cbateman - * - */ -public class TagAttributeHandler implements ITagAttributeHandler -{ - /** - * - */ - private static final long serialVersionUID = 8153903018703133004L; - private final String _customHandler; - private final String _name; - private final boolean _elAllowed; - - /** - * @param customHandler - * @param name - * @param elAllowed - */ - public TagAttributeHandler(final String customHandler, final String name, - final boolean elAllowed) - { - super(); - _customHandler = customHandler; - _elAllowed = elAllowed; - _name = name; - } - - public String getCustomHandler() - { - return _customHandler; - } - - public String getName() - { - return _name; - } - - public boolean isELAllowed() - { - return _elAllowed; - } -} diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/TagElement.java b/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/TagElement.java deleted file mode 100644 index fb04e6f77..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.common.runtime/src/org/eclipse/jst/jsf/common/runtime/internal/view/model/common/TagElement.java +++ /dev/null @@ -1,48 +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.common.runtime.internal.view.model.common; - -import java.util.Map; - -/** - * Abstract a tag element used to construct a view element - * - * @author cbateman - * - */ -public abstract class TagElement implements ITagElement -{ - /** - * - */ - private static final long serialVersionUID = 7885641652240047924L; - - /* (non-Javadoc) - * @see viewhandlerprototype.model.ITagElement#getName() - */ - public abstract String getName(); - - - /* (non-Javadoc) - * @see org.eclipse.jst.jsf.common.runtime.internal.view.model.common.ITagElement#getUri() - */ - public abstract String getUri(); - - /* (non-Javadoc) - * @see org.eclipse.jst.jsf.common.runtime.internal.view.model.common.ITagElement#getTagHandlerClassName() - */ - public abstract String getTagHandlerClassName(); - - /* (non-Javadoc) - * @see org.eclipse.jst.jsf.common.runtime.internal.view.model.common.ITagElement#getAttributeHandlers() - */ - public abstract Map getAttributeHandlers(); -} |