Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/taglibprocessing/attributevalues/FacesConfigIdentifierFeatures.java')
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/taglibprocessing/attributevalues/FacesConfigIdentifierFeatures.java305
1 files changed, 0 insertions, 305 deletions
diff --git a/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/taglibprocessing/attributevalues/FacesConfigIdentifierFeatures.java b/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/taglibprocessing/attributevalues/FacesConfigIdentifierFeatures.java
deleted file mode 100644
index b22f4d1ec..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/taglibprocessing/attributevalues/FacesConfigIdentifierFeatures.java
+++ /dev/null
@@ -1,305 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Oracle Corporation.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Gerry Kessler/Oracle - initial API and implementation
- *
- ********************************************************************************/
-package org.eclipse.jst.jsf.taglibprocessing.attributevalues;
-
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.FileLocator;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.jdt.core.Signature;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jst.jsf.common.internal.types.CompositeType;
-import org.eclipse.jst.jsf.common.internal.types.IAssignable;
-import org.eclipse.jst.jsf.context.resolver.structureddocument.IStructuredDocumentContextResolverFactory;
-import org.eclipse.jst.jsf.context.resolver.structureddocument.IWorkspaceContextResolver;
-import org.eclipse.jst.jsf.core.jsfappconfig.JSFAppConfigManager;
-import org.eclipse.jst.jsf.facesconfig.FacesConfigPlugin;
-import org.eclipse.jst.jsf.facesconfig.emf.DescriptionType;
-import org.eclipse.jst.jsf.facesconfig.emf.DisplayNameType;
-import org.eclipse.jst.jsf.metadataprocessors.AbstractMetaDataEnabledFeature;
-import org.eclipse.jst.jsf.metadataprocessors.features.ELIsNotValidException;
-import org.eclipse.jst.jsf.metadataprocessors.features.IPossibleValues;
-import org.eclipse.jst.jsf.metadataprocessors.features.IValidELValues;
-import org.eclipse.jst.jsf.metadataprocessors.features.IValidValues;
-import org.eclipse.jst.jsf.metadataprocessors.features.IValidationMessage;
-import org.eclipse.jst.jsf.metadataprocessors.features.PossibleValue;
-import org.eclipse.jst.jsf.metadataprocessors.features.ValidationMessage;
-import org.osgi.framework.Bundle;
-
-/**
- * Abstract meta-data processing feature representing a faces-config type
- *
- * <p><b>Provisional API - subject to change</b></p>
- * @author Gerry Kessler - Oracle
- */
-public abstract class FacesConfigIdentifierFeatures extends AbstractMetaDataEnabledFeature
- implements IPossibleValues, IValidValues, IValidELValues{
-
- /**
- * Meta-data property name to use for identifying the faces-config type
- *
- * see jsf_core.xml converterID and validatorID attributes
- */
- public static final String ID_TYPE_PROP_NAME = "config-type"; //$NON-NLS-1$
-
- /**
- * Missing image descriptor
- */
- protected static final ImageDescriptor MISSING_IMAGE = ImageDescriptor.getMissingImageDescriptor();
-
- /**
- * Name of image file to use with content assist proposals
- */
- protected String imageName;
- private ImageDescriptor imageDescriptor;
- /**
- * Validation messages to return
- */
- protected List validationMessages;
-
- /* (non-Javadoc)
- * @see org.eclipse.jst.jsf.metadataprocessors.features.IPossibleValues#getPossibleValues()
- */
- public List getPossibleValues() {
- List ret = new ArrayList();
- List idTypes = getConfigTypes();
-
- if (idTypes != null){
- for (int i=0;i<idTypes.size();i++){
- //verify this feature can deal with this type
- if (getReturnType().equals(idTypes.get(i))){
- ret.addAll(createPossibleValues());
- }
- }
- }
-
- return ret;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jst.jsf.metadataprocessors.features.IValidValues#isValidValue(java.lang.String)
- */
- public boolean isValidValue(String value) {
- List idTypes = getConfigTypes();
- if (idTypes != null){
- for (int i=0;i<idTypes.size();i++){
- if (getReturnType().equals(idTypes.get(i))){
- if (hasValue(getElementIDs(getJSFAppConfigMgr()), value)){
- getValidationMessages().clear();
- return true;
- }
- getValidationMessages().add(getValidationMessage(value));
- }
- }
- }
- return false;
- }
-
- private boolean hasValue(List elements, String value) {
- for (Iterator it=elements.iterator();it.hasNext();){
- if (value.equals(it.next()))
- return true;
- }
- return false;
- }
-
- /**
- * @param value of the attribute
- * @return the validation message String
- */
- protected abstract String getMyValidationMessage(String value);
-
- /**
- * Creates an IValidationMessage
- * @param value
- * @return IValidationMessage
- */
- protected IValidationMessage getValidationMessage(String value) {
- String msg;
- msg = getCMValidationMessage();
- if (msg == null){
- msg = getMyValidationMessage(value);
- }
- String code = getCMValidationCode();
- int severity = getCMValidationSeverity();
-
- IValidationMessage valMsg = new ValidationMessage(msg, code, severity);
- return valMsg;
- }
-
- /**
- *
- * @param value
- * @return single-quoted value
- */
- protected String singleQuote(String value){
- return "'" + value+"'"; //$NON-NLS-1$ //$NON-NLS-2$
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jst.jsf.metadataprocessors.features.IValidValues#getValidationMessages()
- */
- public List getValidationMessages(){
- if (validationMessages == null){
- validationMessages = new ArrayList();
- }
- return validationMessages;
- }
-
- /**
- * @param jsfAppConfigManager
- * @return list of faces-config element for the specified config-type
- */
- protected abstract List getElements(JSFAppConfigManager jsfAppConfigManager);
- /**
- * @param elements
- * @return list of IPossibleValue objects for the specified list of config elements
- */
- protected abstract List getPossibleValueProposals(List elements);
- /**
- * @return image name relative to the FacesConfigEditPlugin where the images are stored
- */
- protected abstract String getImageName();
-
- private List createPossibleValues() {
- return getPossibleValueProposals(getElements(getJSFAppConfigMgr()));
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jst.jsf.metadataprocessors.AbstractMetaDataEnabledFeature#getImage()
- */
- protected ImageDescriptor getImage() {
- ImageDescriptor ret = super.getImage();
- if (ret != null && ret != MISSING_IMAGE)
- return ret;
-
- if (imageDescriptor == null){
- imageDescriptor = getImageDesc(getImageName());
- }
- return imageDescriptor;
-
- }
-
- //return FacesConfigPlugin relative image descriptor
- private ImageDescriptor getImageDesc(String img) {
- Bundle bundle = FacesConfigPlugin.getPlugin().getBundle();
- URL url = FileLocator.find(bundle, new Path(img), null);
- ImageDescriptor desc = ImageDescriptor.createFromURL(url);
- if (desc == MISSING_IMAGE){
- return null;
- }
- return desc;
- }
-
- /**
- * @param value
- * @param displayName
- * @param description
- * @return PossibleValue object
- */
- protected PossibleValue createProposal(String value, EList displayName, EList description) {
- String display = value;
- if (displayName.size() > 0) {
- DisplayNameType displayNameType= (DisplayNameType) displayName.get(0);
- display = displayNameType.getTextContent();
- }
- String desc = null;
- if (description.size() > 0) {
- DescriptionType descType= (DescriptionType) description.get(0);
- desc = descType.getTextContent();
- }
- PossibleValue pv = new PossibleValue(value, display);
- if (desc != null)
- pv.setAdditionalInformation(desc);
-
- return pv;
-
- }
-
- private List getConfigTypes() {
- return getTraitValueAsListOfStrings(ID_TYPE_PROP_NAME);
-
-// return CMAnnotationHelper.getCMAttributePropertyValues(getMetaDataContext().getBundleId(),
-// getMetaDataContext().getUri(), getMetaDataContext().getElementName(),
-// getMetaDataContext().getAttributeName(), ID_TYPE_PROP_NAME);
- }
-
- private JSFAppConfigManager getJSFAppConfigMgr(){
- return JSFAppConfigManager.getInstance(getProject());
- }
-
- private IProject getProject() {
- IWorkspaceContextResolver resolver = IStructuredDocumentContextResolverFactory.INSTANCE.getWorkspaceContextResolver(getStructuredDocumentContext());
- if (resolver != null)
- return resolver.getProject();
-
- return null;
- }
-
- /**
- * @param jsfAppConfigManager
- * @return list of identifier Strings for config-type
- */
- protected abstract List getElementIDs(JSFAppConfigManager jsfAppConfigManager);
-
- /**
- * @return the config-type
- */
- protected abstract String getReturnType();
- /**
- * @return int value of {@link IAssignable}.ASSIGNMENT_TYPE_RHS & {@link IAssignable}.ASSIGNMENT_TYPE_LHS
- */
- protected int getAssignmentType(){
- //TODO: fix me to get from meta-data(?)
- return IAssignable.ASSIGNMENT_TYPE_RHS & IAssignable.ASSIGNMENT_TYPE_LHS;
- }
- public CompositeType getExpectedRuntimeType() throws ELIsNotValidException {
- String type = Signature.createTypeSignature(getReturnType(), true);
- return new CompositeType(type, getAssignmentType());
- }
-
- /**
- * @return String value of {@link IValidValues}.VALID_VALUES_MESSAGE_PROP_NAME trait
- */
- protected String getCMValidationMessage() {
- //TODO: Standard Validation stuff - should be moved somewhere else
- return getTraitValueAsString(IValidValues.VALID_VALUES_MESSAGE_PROP_NAME);
- }
-
- /**
- * @return int value of {@link IValidValues}.VALID_VALUES_SEVERITY_PROP_NAME trait
- */
- protected int getCMValidationSeverity() {
- String val = getTraitValueAsString(IValidValues.VALID_VALUES_SEVERITY_PROP_NAME);
- if (val == null)
- return IStatus.WARNING;
-
- int severity = Integer.valueOf(val).intValue();
- return severity;
- }
-
- /**
- * @return String value of {@link IValidValues}.VALID_VALUES_CODE_PROP_NAME trait
- */
- protected String getCMValidationCode() {
- return getTraitValueAsString(IValidValues.VALID_VALUES_CODE_PROP_NAME);
- }
-
-}
-
-

Back to the top