blob: 71809e83075a31291ff9e2e3de3f047bac4b0317 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2001, 2007 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.metadataprocessors;
import org.eclipse.core.runtime.Assert;
import org.eclipse.jst.jsf.common.metadata.Entity;
import org.eclipse.jst.jsf.common.metadata.Trait;
/**
* Binds tag library context to the metadata context
* <p><b>Provisional API - subject to change</b></p>
* @deprecated - should not have been public, and no reason anyone should be using this class
*/
public class TaglibMetadataContext extends MetaDataContext {
private String uri;
private String tagName;
private String attributeName;
/**
* Constructor
*
* @param uri - must not be null
* @param tagName - must not be null
* @param attributeName - may be null
* @param entity - the metadata entity represented by the tag or attribute
* @param trait - the metadata trait of interest
*/
public TaglibMetadataContext(String uri, String tagName, String attributeName, Entity entity, Trait trait){
super(entity, trait);
this.uri = uri;
this.tagName = tagName;
this.attributeName = attributeName;
}
/**
* Package-private Constructor
*
* @param tagAttrEntity - must be tag attribute entity and not null
* @param trait
*/
/*package*/ TaglibMetadataContext(Entity tagAttrEntity, Trait trait){
super(tagAttrEntity, trait);
Assert.isNotNull(tagAttrEntity);
this.uri = tagAttrEntity.getModel().getCurrentModelContext().getUri();
if (!(tagAttrEntity.eContainer() instanceof Entity))
{
throw new IllegalArgumentException("tagAttrEntity must be contained in a tag Entity to use this constructor");
}
this.tagName = ((Entity)tagAttrEntity.eContainer()).getId();
this.attributeName = tagAttrEntity.getId();
}
/**
* @return URI
*/
public String getUri() {
return uri;
}
/**
* @return Tag name - should not be null
*/
public String getTagName() {
return tagName;
}
/**
* @return Attribute name - may be null
*/
public String getAttributeName() {
return attributeName;
}
}