Use IFile, rather than IProject, for metadata context wherever possible
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common/src/org/eclipse/jst/jsf/context/resolver/structureddocument/internal/impl/MetadataContextResolver.java b/jsf/plugins/org.eclipse.jst.jsf.common/src/org/eclipse/jst/jsf/context/resolver/structureddocument/internal/impl/MetadataContextResolver.java
index 6f94328..52d62f8 100644
--- a/jsf/plugins/org.eclipse.jst.jsf.common/src/org/eclipse/jst/jsf/context/resolver/structureddocument/internal/impl/MetadataContextResolver.java
+++ b/jsf/plugins/org.eclipse.jst.jsf.common/src/org/eclipse/jst/jsf/context/resolver/structureddocument/internal/impl/MetadataContextResolver.java
@@ -15,7 +15,8 @@
import java.util.Collections;
import java.util.List;
-import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IResource;
import org.eclipse.jst.jsf.common.metadata.Trait;
import org.eclipse.jst.jsf.common.metadata.internal.IMetaDataDomainContext;
import org.eclipse.jst.jsf.common.metadata.internal.TraitValueHelper;
@@ -56,19 +57,16 @@
public List getPropertyValue(final String key)
{
final DOMContextResolver domResolver = new DOMContextResolver(_context);
- final WorkspaceContextResolver wsResolver = new WorkspaceContextResolver(_context);
final ITaglibContextResolver tagResolver =
_factory.getTaglibContextResolverFromDelegates(_context);
final Node curNode = domResolver.getNode();
-
+ final IMetaDataDomainContext mdContext = getMDContext(_context);
if (curNode instanceof Attr)
{
final Attr attribute = (Attr) curNode;
final Element element = attribute.getOwnerElement();
final String uri = tagResolver.getTagURIForNodeName(element);
- final IProject project = wsResolver.getProject();
-
- final IMetaDataDomainContext mdContext = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(project);
+
final ITaglibDomainMetaDataQuery query = (ITaglibDomainMetaDataQuery)MetaDataQueryFactory.getInstance().createQuery(mdContext);
final Trait trait = query.getQueryHelper().getTrait(uri, element.getLocalName()+"/"+attribute.getLocalName(), key); //$NON-NLS-1$
// final ITaglibDomainMetaDataModelContext mdContext = TaglibDomainMetaDataQueryHelper.createMetaDataModelContext(project, uri);
@@ -83,9 +81,7 @@
{
final Element element = (Element) curNode;
final String uri = tagResolver.getTagURIForNodeName(element);
- final IProject project = wsResolver.getProject();
- final IMetaDataDomainContext mdContext = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(project);
final ITaglibDomainMetaDataQuery query = (ITaglibDomainMetaDataQuery)MetaDataQueryFactory.getInstance().createQuery(mdContext);
final Trait trait = query.getQueryHelper().getTrait(uri, element.getLocalName(), key);
// final ITaglibDomainMetaDataModelContext mdContext = TaglibDomainMetaDataQueryHelper.createMetaDataModelContext(project, uri);
@@ -99,7 +95,19 @@
return Collections.EMPTY_LIST;
}
- public boolean canResolveContext(IModelContext modelContext) {
+ private IMetaDataDomainContext getMDContext(
+ final IStructuredDocumentContext context) {
+
+ final WorkspaceContextResolver wsResolver = new WorkspaceContextResolver(context);
+ final IResource res = wsResolver.getResource();
+ if (res instanceof IFile)
+ return MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext((IFile)res);
+
+ return MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(wsResolver.getProject());
+
+ }
+
+ public boolean canResolveContext(IModelContext modelContext) {
return (modelContext.getAdapter(IStructuredDocumentContext.class) != null);
}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/designtime/internal/jsp/JSPModelProcessor.java b/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/designtime/internal/jsp/JSPModelProcessor.java
index 17a792f..c30f379 100644
--- a/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/designtime/internal/jsp/JSPModelProcessor.java
+++ b/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/designtime/internal/jsp/JSPModelProcessor.java
@@ -21,7 +21,6 @@
import java.util.concurrent.locks.ReentrantLock;
import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.IWorkspaceRunnable;
import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.core.resources.WorkspaceJob;
@@ -532,7 +531,7 @@
{
final SymbolContribAggregator aggregator =
SymbolContribAggregator.
- create(_file.getProject(), uri, elementName, attribute.getLocalName());
+ create(_file, uri, elementName, attribute.getLocalName());
if (aggregator != null)
{
@@ -581,7 +580,7 @@
@SuppressWarnings("deprecation")
private void processSetsLocale(final String uri, final String elementName, Node attribute)
{
- LocaleSetAggregator aggregator = LocaleSetAggregator.create(_file.getProject(), uri, elementName, attribute.getLocalName());
+ LocaleSetAggregator aggregator = LocaleSetAggregator.create(_file, uri, elementName, attribute.getLocalName());
if (aggregator != null)
{
@@ -732,11 +731,11 @@
{
private final static String SETS_LOCALE = "sets-locale"; //$NON-NLS-1$
- private static LocaleSetAggregator create(final IProject project,
+ private static LocaleSetAggregator create(final IFile file,
final String uri,
final String elementName, final String attributeName)
{
- final IMetaDataDomainContext context = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(project);
+ final IMetaDataDomainContext context = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(file);
final ITaglibDomainMetaDataQuery query = MetaDataQueryFactory.getInstance().createQuery(context);
final Trait trait = query.getQueryHelper().getTrait(uri, elementName+"/"+attributeName, SETS_LOCALE); //$NON-NLS-1$
// final ITaglibDomainMetaDataModelContext mdContext = TaglibDomainMetaDataQueryHelper.createMetaDataModelContext(project, uri);
@@ -771,13 +770,13 @@
* @param attributeName
* @return a new instance only if attributeName is a symbol contributor
*/
- private static SymbolContribAggregator create(final IProject project,
+ private static SymbolContribAggregator create(final IFile file,
final String uri,
final String elementName,
final String attributeName)
{
final String entityKey = elementName+"/"+attributeName; //$NON-NLS-1$
- final IMetaDataDomainContext context = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(project);
+ final IMetaDataDomainContext context = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(file);
final ITaglibDomainMetaDataQuery query = MetaDataQueryFactory.getInstance().createQuery(context);
final Entity entity = query.getQueryHelper().getEntity(uri, entityKey);
Trait trait = query.getQueryHelper().getTrait(entity, CONTRIBUTES_VALUE_BINDING);
diff --git a/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/metadataprocessors/AbstractMetaDataEnabledFeature.java b/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/metadataprocessors/AbstractMetaDataEnabledFeature.java
index c4da0a1..b2f9848 100644
--- a/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/metadataprocessors/AbstractMetaDataEnabledFeature.java
+++ b/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/metadataprocessors/AbstractMetaDataEnabledFeature.java
@@ -15,7 +15,9 @@
import java.util.Collections;
import java.util.List;
+import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.jst.jsf.common.metadata.Entity;
import org.eclipse.jst.jsf.common.metadata.Trait;
@@ -39,6 +41,7 @@
private MetaDataContext mdContext;
private IStructuredDocumentContext sdContext;
private IProject _project;
+ private IFile _file;
/* (non-Javadoc)
@@ -76,7 +79,14 @@
return _project;
}
-
+ private IFile getFile(){
+ if (_file == null){
+ IResource res = IStructuredDocumentContextResolverFactory.INSTANCE.getWorkspaceContextResolver(sdContext).getResource();
+ if (res instanceof IFile)
+ _file = (IFile)res;
+ }
+ return _file;
+ }
//common metadata accessors
/**
* Return the single expected String value for a given property.
@@ -126,12 +136,20 @@
}
private Trait getTraitForEntityUsingContext(final String traitName) {
//look for trait on given entity
- final Entity entity = getMetaDataContext().getEntity();
- final IMetaDataDomainContext modelContext = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(getProject());
+ final Entity entity = getMetaDataContext().getEntity();
+ final IMetaDataDomainContext modelContext = getMetaDataDomainContext();
final IMetaDataQuery query = MetaDataQueryFactory.getInstance().createQuery(modelContext);
return query.getQueryHelper().getTrait(entity, traitName);
}
+ private IMetaDataDomainContext getMetaDataDomainContext() {
+ final IFile file = getFile();
+ if (file != null)
+ return MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(file);
+
+ return MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(getProject());
+ }
+
/**
* @return small-icon name
*/
diff --git a/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/metadataprocessors/MetaDataEnabledProcessingFactory.java b/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/metadataprocessors/MetaDataEnabledProcessingFactory.java
index a75486b..48e3a5a 100644
--- a/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/metadataprocessors/MetaDataEnabledProcessingFactory.java
+++ b/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/metadataprocessors/MetaDataEnabledProcessingFactory.java
@@ -16,7 +16,9 @@
import java.util.Collections;
import java.util.List;
+import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
import org.eclipse.jst.jsf.common.dom.AttributeIdentifier;
import org.eclipse.jst.jsf.common.metadata.Entity;
import org.eclipse.jst.jsf.common.metadata.Trait;
@@ -92,7 +94,7 @@
String attrKey = tagName + "/" + attributeName; //$NON-NLS-1$
- final IMetaDataDomainContext modelContext = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(getProject(sdContext));
+ final IMetaDataDomainContext modelContext = getMetaDataDomainContext(sdContext);
final ITaglibDomainMetaDataQuery query = MetaDataQueryFactory.getInstance().createQuery(modelContext);
Entity attrEntity = query.getQueryHelper().getEntity(uri, attrKey);
@@ -114,6 +116,17 @@
return project;
}
+ private IFile getFile(final IStructuredDocumentContext sdContext) {
+ IFile file = null;
+ if (sdContext != null) {
+ final IWorkspaceContextResolver resolver = IStructuredDocumentContextResolverFactory.INSTANCE
+ .getWorkspaceContextResolver(sdContext);
+ final IResource res = resolver != null ? resolver.getResource() : null;
+ if (res instanceof IFile)
+ file = (IFile)res;
+ }
+ return file;
+ }
/**
* A convenience method fully equivalent to:
*
@@ -148,9 +161,9 @@
public List<IMetaDataEnabledFeature> getAttributeValueRuntimeTypeFeatureProcessors(
final Class featureType, final IStructuredDocumentContext sdContext,
final Entity attrEntity) {
-
- final IMetaDataDomainContext modelContext = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(getProject(sdContext));
- final ITaglibDomainMetaDataQuery query = MetaDataQueryFactory.getInstance().createQuery(modelContext);
+
+ final IMetaDataDomainContext modelContext = getMetaDataDomainContext(sdContext);
+ final ITaglibDomainMetaDataQuery query = MetaDataQueryFactory.getInstance().createQuery(modelContext);
Trait trait = query.findTrait(attrEntity,
ATTRIBUTE_VALUE_RUNTIME_TYPE_PROP_NAME);
@@ -182,4 +195,13 @@
return Collections.unmodifiableList(retList);
}
+ private IMetaDataDomainContext getMetaDataDomainContext(
+ final IStructuredDocumentContext sdContext) {
+ final IFile file = getFile(sdContext);
+ if (file != null)
+ return MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(file);
+
+ return MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(getProject(sdContext));
+ }
+
}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/validation/internal/strategy/ContainmentValidatingStrategy.java b/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/validation/internal/strategy/ContainmentValidatingStrategy.java
index 1f0e9dc..d303b26 100644
--- a/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/validation/internal/strategy/ContainmentValidatingStrategy.java
+++ b/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/validation/internal/strategy/ContainmentValidatingStrategy.java
@@ -133,7 +133,7 @@
final String tagName = elementAdapter.getLocalName();
// final Element node = elementAdapter.
- final IMetaDataDomainContext mdcontext = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(jsfValidationContext.getFile().getProject());
+ final IMetaDataDomainContext mdcontext = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(jsfValidationContext.getFile());
final ITaglibDomainMetaDataQuery query = MetaDataQueryFactory.getInstance().createQuery(mdcontext);
// final ITaglibDomainMetaDataModelContext modelContext = TaglibDomainMetaDataQueryHelper
// .createMetaDataModelContext(jsfValidationContext.getFile()
diff --git a/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/common/MetadataTagImageManager.java b/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/common/MetadataTagImageManager.java
index b2e7710..e207f4a 100644
--- a/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/common/MetadataTagImageManager.java
+++ b/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/common/MetadataTagImageManager.java
@@ -12,7 +12,7 @@
import java.util.Iterator;
-import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IFile;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.jst.jsf.common.dom.TagIdentifier;
import org.eclipse.jst.jsf.common.metadata.Entity;
@@ -41,30 +41,30 @@
private static final String TRAIT_ICON_LARGE = "large-icon"; //$NON-NLS-1$
/**
- * @param project
+ * @param file
* @param tagId
* @return small image using metadata. May be null.
*/
- public Image getSmallIconImage(final IProject project, final TagIdentifier tagId)
+ public Image getSmallIconImage(final IFile file, final TagIdentifier tagId)
{
- return getSmallIconImage(project, tagId.getUri(), tagId.getTagName());
+ return getSmallIconImage(file, tagId.getUri(), tagId.getTagName());
}
/**
* Returns small image using metadata and may be null. Caller should NOT
* dispose the image, but should call TagImageManager's dispose(image)
*
- * @param project
+ * @param file
* @param nsUri
* @param tagName
* @return small image using metadata. May be null.
*/
- public Image getSmallIconImage(final IProject project, final String nsUri,
+ public Image getSmallIconImage(final IFile file, final String nsUri,
final String tagName)
{
Image image = null;
- final IMetaDataDomainContext context = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(project);
+ final IMetaDataDomainContext context = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(file);
final ITaglibDomainMetaDataQuery query = MetaDataQueryFactory.getInstance().createQuery(context);
final Model model = getModel(query, nsUri);
diff --git a/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/component/ComponentMasterForm.java b/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/component/ComponentMasterForm.java
index 568edba..117eafc 100644
--- a/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/component/ComponentMasterForm.java
+++ b/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/component/ComponentMasterForm.java
@@ -207,7 +207,7 @@
if (model != null)
{
image = _metadataIconManager.getSmallIconImage(
- model.getProject(), tagId);
+ model.getFile(), tagId);
}
}
}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/component/DTJSFViewModel.java b/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/component/DTJSFViewModel.java
index a39d445..29d9df7 100644
--- a/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/component/DTJSFViewModel.java
+++ b/jsf/plugins/org.eclipse.jst.jsf.ui/src/org/eclipse/jst/jsf/ui/internal/component/DTJSFViewModel.java
@@ -120,6 +120,11 @@
return _project;
}
+ public final IFile getFile()
+ {
+ return _file;
+ }
+
public final String getViewId()
{
final DTFacesContext facesContext = getFacesContext();
diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner.jsf.ui/src/org/eclipse/jst/pagedesigner/jsf/ui/converter/jsfcore/JSFCoreConverterFactory.java b/jsf/plugins/org.eclipse.jst.pagedesigner.jsf.ui/src/org/eclipse/jst/pagedesigner/jsf/ui/converter/jsfcore/JSFCoreConverterFactory.java
index bb218e5..6bc8871 100644
--- a/jsf/plugins/org.eclipse.jst.pagedesigner.jsf.ui/src/org/eclipse/jst/pagedesigner/jsf/ui/converter/jsfcore/JSFCoreConverterFactory.java
+++ b/jsf/plugins/org.eclipse.jst.pagedesigner.jsf.ui/src/org/eclipse/jst/pagedesigner/jsf/ui/converter/jsfcore/JSFCoreConverterFactory.java
@@ -14,6 +14,7 @@
import java.util.HashSet;
import java.util.Set;
+import org.eclipse.core.resources.IFile;
import org.eclipse.jface.viewers.ILabelProvider;
import org.eclipse.jst.jsf.context.resolver.structureddocument.IStructuredDocumentContextResolverFactory;
import org.eclipse.jst.jsf.context.resolver.structureddocument.IWorkspaceContextResolver;
@@ -117,7 +118,7 @@
if (context != null){
IWorkspaceContextResolver wsResolver = IStructuredDocumentContextResolverFactory.INSTANCE.getWorkspaceContextResolver(context);
if (wsResolver != null){
- return TagImageManager.getInstance().getSmallIconImage(wsResolver.getProject(),ITLDConstants.URI_JSF_CORE, hostElement.getLocalName());
+ return TagImageManager.getInstance().getSmallIconImage((IFile)wsResolver.getResource(),ITLDConstants.URI_JSF_CORE, hostElement.getLocalName());
}
}
}
diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner.jsf.ui/src/org/eclipse/jst/pagedesigner/jsf/ui/converter/jsfhtml/JSFHTMLConverterFactory.java b/jsf/plugins/org.eclipse.jst.pagedesigner.jsf.ui/src/org/eclipse/jst/pagedesigner/jsf/ui/converter/jsfhtml/JSFHTMLConverterFactory.java
index 29a48e0..372d1e5 100644
--- a/jsf/plugins/org.eclipse.jst.pagedesigner.jsf.ui/src/org/eclipse/jst/pagedesigner/jsf/ui/converter/jsfhtml/JSFHTMLConverterFactory.java
+++ b/jsf/plugins/org.eclipse.jst.pagedesigner.jsf.ui/src/org/eclipse/jst/pagedesigner/jsf/ui/converter/jsfhtml/JSFHTMLConverterFactory.java
@@ -14,6 +14,7 @@
import java.util.HashSet;
import java.util.Set;
+import org.eclipse.core.resources.IFile;
import org.eclipse.jface.viewers.LabelProvider;
import org.eclipse.jst.jsf.context.resolver.structureddocument.IStructuredDocumentContextResolverFactory;
import org.eclipse.jst.jsf.context.resolver.structureddocument.IWorkspaceContextResolver;
@@ -194,7 +195,7 @@
if (context != null){
IWorkspaceContextResolver wsResolver = IStructuredDocumentContextResolverFactory.INSTANCE.getWorkspaceContextResolver(context);
if (wsResolver != null){
- return TagImageManager.getInstance().getSmallIconImage(wsResolver.getProject(),ITLDConstants.URI_JSF_HTML, hostElement.getLocalName());
+ return TagImageManager.getInstance().getSmallIconImage((IFile)wsResolver.getResource(),ITLDConstants.URI_JSF_HTML, hostElement.getLocalName());
}
}
}
diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/converter/jsp/JSPConverterFactory.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/converter/jsp/JSPConverterFactory.java
index 5d1844f..8248c31 100644
--- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/converter/jsp/JSPConverterFactory.java
+++ b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/converter/jsp/JSPConverterFactory.java
@@ -11,6 +11,7 @@
*******************************************************************************/
package org.eclipse.jst.pagedesigner.converter.jsp;
+import org.eclipse.core.resources.IFile;
import org.eclipse.jface.viewers.ILabelProvider;
import org.eclipse.jst.jsf.context.resolver.structureddocument.IStructuredDocumentContextResolverFactory;
import org.eclipse.jst.jsf.context.resolver.structureddocument.IWorkspaceContextResolver;
@@ -92,7 +93,7 @@
if (context != null){
IWorkspaceContextResolver wsResolver = IStructuredDocumentContextResolverFactory.INSTANCE.getWorkspaceContextResolver(context);
if (wsResolver != null){
- return TagImageManager.getInstance().getSmallIconImage(wsResolver.getProject(),"JSP11", ITLDConstants.URI_JSP + ":"+hostElement.getLocalName()); //$NON-NLS-1$ //$NON-NLS-2$
+ return TagImageManager.getInstance().getSmallIconImage((IFile)wsResolver.getResource(),"JSP11", ITLDConstants.URI_JSP + ":"+hostElement.getLocalName()); //$NON-NLS-1$ //$NON-NLS-2$
}
}
}
diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/dtmanager/DefaultDTInfoFactory.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/dtmanager/DefaultDTInfoFactory.java
index fbd8e90..d18b9e6 100644
--- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/dtmanager/DefaultDTInfoFactory.java
+++ b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/dtmanager/DefaultDTInfoFactory.java
@@ -10,6 +10,7 @@
*******************************************************************************/
package org.eclipse.jst.pagedesigner.dtmanager;
+import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IProject;
import org.eclipse.jst.jsf.common.metadata.Trait;
import org.eclipse.jst.jsf.common.metadata.internal.IMetaDataDomainContext;
@@ -46,9 +47,9 @@
IDTInfo dtInfo = null;
final String nsURI = getURI(element);
if (nsURI != null) {
- final IProject project = getProject(element);
- if (project != null) {
- final IMetaDataDomainContext context = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(project);
+ final IFile file = getFile(element);
+ if (file != null) {
+ final IMetaDataDomainContext context = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(file);
final ITaglibDomainMetaDataQuery query = MetaDataQueryFactory.getInstance().createQuery(context);
if (query != null) {
final Trait trait = query.getQueryHelper().getTrait(nsURI, element.getLocalName(), DTINFO_TRAIT_KEY);
@@ -103,4 +104,22 @@
return project;
}
+ /**
+ * Gets the IFile of the specified
+ * Element.
+ *
+ * @param element Element instance.
+ * @return IFile instance that contains the specified
+ * Element.
+ */
+ protected IFile getFile(final Element element) {
+ IFile file = null;
+ if (element instanceof IDOMNode) {
+ final IDOMModel model = ((IDOMNode)element).getModel();
+ if (model != null) {
+ file = StructuredModelUtil.getFileFor(model);
+ }
+ }
+ return file;
+ }
}
diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/TagImageManager.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/TagImageManager.java
index 375b52c..274c6d2 100644
--- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/TagImageManager.java
+++ b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/editors/palette/TagImageManager.java
@@ -13,6 +13,7 @@
import java.util.Iterator;
+import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IProject;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.jst.jsf.common.metadata.Entity;
@@ -70,38 +71,59 @@
/**
* Returns small image using metadata and may be null. Caller should NOT dispose the image, but should call TagImageManager's dispose(image)
- * @param project
+ * @param file
* @param nsUri
* @param tagName
* @return small image using metadata. May be null.
*/
+ public Image getSmallIconImage(IFile file, String nsUri, String tagName) {
+ final IMetaDataDomainContext context = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(file);
+ return getImage(context, nsUri, tagName, true);
+ }
+
+ /**
+ * Returns small image using metadata and may be null. Caller should NOT dispose the image, but should call TagImageManager's dispose(image)
+ * @param project
+ * @param nsUri
+ * @param tagName
+ * @return small image using metadata. May be null.
+ * @deprecated - use file rather than project
+ */
public Image getSmallIconImage(IProject project, String nsUri, String tagName) {
- Image image = null;
- final IMetaDataDomainContext context = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(project);
- final ITaglibDomainMetaDataQuery query = MetaDataQueryFactory.getInstance().createQuery(context);
- Model model = getModel(query, nsUri);
- if (model != null){
- ImageDescriptor imgDesc = getSmallIconImageDescriptor(query, model, tagName);
- image = getOrCreateImage(imgDesc);
- }
-
- return image;
+ final IMetaDataDomainContext context = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(project);
+ return getImage(context, nsUri, tagName, true);
}
/**
+ * @param file
+ * @param nsUri
+ * @param tagName
+ * @return large image using metadata. May be null.
+ */
+ public Image getLargeIconImage(IFile file, String nsUri, String tagName) {
+ final IMetaDataDomainContext context = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(file);
+ return getImage(context, nsUri, tagName, false);
+ }
+
+ /**
* @param project
* @param nsUri
* @param tagName
* @return large image using metadata. May be null.
+ * @deprecated - use file rather than project
*/
public Image getLargeIconImage(IProject project, String nsUri, String tagName) {
- Image image = null;
final IMetaDataDomainContext context = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(project);
+ return getImage(context, nsUri, tagName, false);
+ }
+
+ private Image getImage(final IMetaDataDomainContext context, final String nsUri, final String tagName, boolean getSmallImage) {
+ Image image = null;
final ITaglibDomainMetaDataQuery query = MetaDataQueryFactory.getInstance().createQuery(context);
Model model = getModel(query, nsUri);
if (model != null){
- ImageDescriptor imgDesc = getLargeIconImageDescriptor(query, model, nsUri);
- image = getOrCreateImage(imgDesc);
+ ImageDescriptor imgDesc = getIconImageDescriptor(query, model, tagName, getSmallImage);
+ image = getOrCreateImage(imgDesc);
}
return image;
@@ -129,35 +151,9 @@
}
private Model getModel(ITaglibDomainMetaDataQuery query, String nsUri) {
- Model model =query.findTagLibraryModel(nsUri);
- // no caching at this time so there is no need to listen to model notifications
-// if (model != null && !hasAdapter(model))
-// addAdapter(model);
- return model;
+ return query.findTagLibraryModel(nsUri);
}
-
-// private void addAdapter(Model model) {
-// if (model != null){
-//// model.eAdapters().add(INSTANCE);
-// }
-// }
-//
-// private boolean hasAdapter(Model model) {
-// for(Adapter a : model.eAdapters()){
-// if (a == INSTANCE)
-// return true;
-// }
-// return false;
-// }
-
- private ImageDescriptor getSmallIconImageDescriptor(ITaglibDomainMetaDataQuery query, Model model, String tagName) {
- return getIconImageDescriptor(query, model, tagName, true);
- }
-
- private ImageDescriptor getLargeIconImageDescriptor(ITaglibDomainMetaDataQuery query, Model model, String tagName) {
- return getIconImageDescriptor(query, model, tagName, false);
- }
private ImageDescriptor getIconImageDescriptor(ITaglibDomainMetaDataQuery query, Model model, String tagName, boolean small) {
ImageDescriptor icon = null;
diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/figurehandler/FigureFactory.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/figurehandler/FigureFactory.java
index f061e11..9be6bce 100644
--- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/figurehandler/FigureFactory.java
+++ b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/figurehandler/FigureFactory.java
@@ -13,6 +13,7 @@
import java.util.List;
+import org.eclipse.core.resources.IFile;
import org.eclipse.draw2d.IFigure;
import org.eclipse.jst.jsf.common.ui.JSFUICommonPlugin;
import org.eclipse.jst.jsf.common.ui.internal.utils.JSFSharedImages;
@@ -203,7 +204,7 @@
if (context != null){
IWorkspaceContextResolver wsResolver = IStructuredDocumentContextResolverFactory.INSTANCE.getWorkspaceContextResolver(context);
if (wsResolver != null){
- image = TagImageManager.getInstance().getSmallIconImage(wsResolver.getProject(),"HTML", element.getLocalName()); //$NON-NLS-1$
+ image = TagImageManager.getInstance().getSmallIconImage((IFile)wsResolver.getResource(),"HTML", element.getLocalName()); //$NON-NLS-1$
}
}
return image != null ? image : JSFUICommonPlugin.getDefault().getImage(
diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/figurehandler/ObjectFigureHandler.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/figurehandler/ObjectFigureHandler.java
index 8dfeccd..f3d8a95 100644
--- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/figurehandler/ObjectFigureHandler.java
+++ b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/figurehandler/ObjectFigureHandler.java
@@ -11,6 +11,7 @@
*******************************************************************************/
package org.eclipse.jst.pagedesigner.figurehandler;
+import org.eclipse.core.resources.IFile;
import org.eclipse.jst.pagedesigner.editors.palette.TagImageManager;
import org.w3c.dom.Element;
@@ -27,7 +28,8 @@
*/
protected void initializeImage(Element node) {
if (_image == null) {
- _image = TagImageManager.getInstance().getSmallIconImage(null, "HTML", node.getTagName()); //$NON-NLS-1$
+ //FIXME - file/project should NOT be null!
+ _image = TagImageManager.getInstance().getSmallIconImage((IFile)null, "HTML", node.getTagName()); //$NON-NLS-1$
}
}
}
diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/properties/AttributePropertySource.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/properties/AttributePropertySource.java
index 6fdf70b..b96a834 100644
--- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/properties/AttributePropertySource.java
+++ b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/properties/AttributePropertySource.java
@@ -14,6 +14,7 @@
import java.util.ArrayList;
import java.util.List;
+import org.eclipse.core.resources.IFile;
import org.eclipse.gef.commands.Command;
import org.eclipse.jst.jsf.common.metadata.Entity;
import org.eclipse.jst.jsf.common.metadata.internal.IMetaDataDomainContext;
@@ -92,7 +93,7 @@
else
uri = "HTML"; //$NON-NLS-1$
}
- final IMetaDataDomainContext context = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(wsresolver.getProject());
+ final IMetaDataDomainContext context = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext((IFile)wsresolver.getResource());
_query = MetaDataQueryFactory.getInstance().createQuery(context);
return _query.getQueryHelper().getEntity(uri, _element.getLocalName());
}
diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/properties/celleditors/CellEditorFactory.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/properties/celleditors/CellEditorFactory.java
index 78a8d6d..53c91a1 100644
--- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/properties/celleditors/CellEditorFactory.java
+++ b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/properties/celleditors/CellEditorFactory.java
@@ -58,11 +58,19 @@
CellEditor ed = null;
if (IAttributeRuntimeValueType.RELATIVEPATH.equalsIgnoreCase(type)|| IAttributeRuntimeValueType.WEBPATH.equalsIgnoreCase(type)) {
IProject project = getProject(element);
+ final IFile file = getFile(element);
if (project != null) {
// String typeParam = TraitValueHelper.getValueAsString(TaglibDomainMetaDataQueryHelper.getTrait(attr.getMetaDataContext().getEntity(),"type-param"));
ResourceDialogCellEditor cellEditor = new ResourceDialogCellEditor(
parent);
- final IMetaDataDomainContext context = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(project);
+
+ IMetaDataDomainContext context = null;
+
+ if (file != null)
+ context = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(file);
+ else
+ context = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(project);
+
final ITaglibDomainMetaDataQuery query = MetaDataQueryFactory.getInstance().createQuery(context);
Trait fileExt = query.findTrait(attr.getMetaDataContext().getEntity(), "file-extensions"); //$NON-NLS-1$
Trait separator = query.findTrait(attr.getMetaDataContext().getEntity(), "separator"); //$NON-NLS-1$
@@ -82,7 +90,7 @@
cellEditor.setSeparator(sep);
cellEditor.setProject(project);
- cellEditor.setReferredFile(getFile(element));
+ cellEditor.setReferredFile(file);
if (IAttributeRuntimeValueType.WEBPATH.equalsIgnoreCase(type)) {
cellEditor.setWebPath(true);
@@ -149,7 +157,7 @@
*
* @see org.eclipse.jst.pagedesigner.meta.NEWMDIAttributeCellEditorFactory#createDialogField(org.eclipse.jst.pagedesigner.meta.IAttributeDescriptor,
* org.w3c.dom.Element, org.w3c.dom.Element)
- */
+ */
public DialogField createDialogField(IPropertyPageDescriptor attr) {
String type = attr.getValueType();
@@ -163,6 +171,7 @@
if (IAttributeRuntimeValueType.RELATIVEPATH.equals(type) ||
IAttributeRuntimeValueType.WEBPATH.equals(type)) {
+ //FIXME - should not be passing null project
final IMetaDataDomainContext context = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext((IProject)null);
final ITaglibDomainMetaDataQuery query = MetaDataQueryFactory.getInstance().createQuery(context);
Trait fileExt = query.findTrait(attr.getMetaDataContext().getEntity(), "file-extensions"); //$NON-NLS-1$
diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/properties/internal/AttributeGroup.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/properties/internal/AttributeGroup.java
index 6179b27..1a84809 100644
--- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/properties/internal/AttributeGroup.java
+++ b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/properties/internal/AttributeGroup.java
@@ -15,7 +15,7 @@
import java.util.Arrays;
import java.util.List;
-import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IFile;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.jst.jsf.common.metadata.Entity;
import org.eclipse.jst.jsf.common.metadata.internal.IMetaDataDomainContext;
@@ -157,8 +157,8 @@
String uri = _uri != null ? _uri : IStructuredDocumentContextResolverFactory.INSTANCE.getDOMContextResolver(context).getNode().getBaseURI();
String tagName = _tagName != null ? _tagName : IStructuredDocumentContextResolverFactory.INSTANCE.getDOMContextResolver(context).getNode().getNodeName();
if (uri != null){
- IProject project = IStructuredDocumentContextResolverFactory.INSTANCE.getWorkspaceContextResolver(context).getProject();
- IMetaDataDomainContext mdcontext = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(project);
+ IFile file = (IFile)IStructuredDocumentContextResolverFactory.INSTANCE.getWorkspaceContextResolver(context).getResource();
+ IMetaDataDomainContext mdcontext = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(file);
ITaglibDomainMetaDataQuery _query = MetaDataQueryFactory.getInstance().createQuery(mdcontext);
_tagEntity = _query.getQueryHelper().getEntity(uri, tagName);
}
diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/properties/internal/QuickEditTabManager.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/properties/internal/QuickEditTabManager.java
index 80deed4..4c90a35 100644
--- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/properties/internal/QuickEditTabManager.java
+++ b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/properties/internal/QuickEditTabManager.java
@@ -213,7 +213,7 @@
if (ed.getEditorInput() instanceof FileEditorInput) {
final FileEditorInput input = (FileEditorInput)ed.getEditorInput();
- final IMetaDataDomainContext mdContext = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(input.getFile().getProject());
+ final IMetaDataDomainContext mdContext = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(input.getFile());
return MetaDataQueryFactory.getInstance().createQuery(mdContext);
}
return null;
diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/utils/CommandUtil.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/utils/CommandUtil.java
index a1d24ac..4c963f2 100644
--- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/utils/CommandUtil.java
+++ b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/utils/CommandUtil.java
@@ -11,6 +11,7 @@
*******************************************************************************/
package org.eclipse.jst.pagedesigner.utils;
+import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IProject;
import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.jst.jsf.common.metadata.internal.IMetaDataDomainContext;
@@ -20,10 +21,6 @@
import org.eclipse.jst.jsf.common.metadata.query.internal.MetaDataModelContext;
import org.eclipse.jst.jsf.common.metadata.query.internal.MetaDataQueryContextFactory;
import org.eclipse.jst.jsf.common.ui.internal.logging.Logger;
-import org.eclipse.jst.jsf.context.resolver.structureddocument.IStructuredDocumentContextResolverFactory;
-import org.eclipse.jst.jsf.context.resolver.structureddocument.IWorkspaceContextResolver;
-import org.eclipse.jst.jsf.context.structureddocument.IStructuredDocumentContext;
-import org.eclipse.jst.jsf.context.structureddocument.IStructuredDocumentContextFactory;
import org.eclipse.jst.pagedesigner.PDPlugin;
import org.eclipse.jst.pagedesigner.dom.IDOMPosition;
import org.eclipse.jst.pagedesigner.editors.palette.IDropSourceData;
@@ -31,7 +28,6 @@
import org.eclipse.jst.pagedesigner.itemcreation.CreationData;
import org.eclipse.jst.pagedesigner.itemcreation.ITagCreator;
import org.eclipse.jst.pagedesigner.itemcreation.internal.TagCreationFactory;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
import org.w3c.dom.Element;
@@ -111,16 +107,17 @@
public static ITaglibDomainMetaDataModelContext getMetadataContext(
final String uri, final IDOMModel model)
{
- final IStructuredDocument doc = model.getDocument()
- .getStructuredDocument();
+// final IStructuredDocument doc = model.getDocument()
+// .getStructuredDocument();
+//
+// final IStructuredDocumentContext context = IStructuredDocumentContextFactory.INSTANCE
+// .getContext(doc, -1);
+// final IWorkspaceContextResolver resolver = IStructuredDocumentContextResolverFactory.INSTANCE
+// .getWorkspaceContextResolver(context);
+//
+// final IProject project = resolver.getProject();
- final IStructuredDocumentContext context = IStructuredDocumentContextFactory.INSTANCE
- .getContext(doc, -1);
- final IWorkspaceContextResolver resolver = IStructuredDocumentContextResolverFactory.INSTANCE
- .getWorkspaceContextResolver(context);
-
- final IProject project = resolver.getProject();
-
+ final IProject project = StructuredModelUtil.getProjectFor(model);
final ITaglibDomainMetaDataModelContext modelContext = TaglibDomainMetaDataQueryHelper
.createMetaDataModelContext(project, uri);
return modelContext;
@@ -134,17 +131,8 @@
public static IMetaDataModelContext getMetadataModelContext(
final String uri, final IDOMModel model)
{
- final IStructuredDocument doc = model.getDocument()
- .getStructuredDocument();
-
- final IStructuredDocumentContext context = IStructuredDocumentContextFactory.INSTANCE
- .getContext(doc, -1);
- final IWorkspaceContextResolver resolver = IStructuredDocumentContextResolverFactory.INSTANCE
- .getWorkspaceContextResolver(context);
-
- final IProject project = resolver.getProject();
-
- final IMetaDataDomainContext modelContext = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(project);
+ final IFile file = StructuredModelUtil.getFileFor(model);
+ final IMetaDataDomainContext modelContext = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(file);
return new MetaDataModelContext(uri, modelContext);
}
diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/utils/JSPUtil.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/utils/JSPUtil.java
index a28d05f..6afd64b 100644
--- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/utils/JSPUtil.java
+++ b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/utils/JSPUtil.java
@@ -156,9 +156,11 @@
private static boolean isTagDir(final String uri, final IDOMModel model) {
final IStructuredDocumentContext context = IStructuredDocumentContextFactory.INSTANCE.getContext(model.getStructuredDocument(), 0);
if (context != null) {
- IWorkspaceContextResolver resolver = IStructuredDocumentContextResolverFactory.INSTANCE.getWorkspaceContextResolver(context);
- if (resolver != null) {
- final IMetaDataDomainContext mdcontext = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(resolver.getProject());
+ IFile file = StructuredModelUtil.getFileFor(model);
+// IWorkspaceContextResolver resolver = IStructuredDocumentContextResolverFactory.INSTANCE.getWorkspaceContextResolver(context);
+// if (resolver != null) {
+ if (file != null) {
+ final IMetaDataDomainContext mdcontext = MetaDataQueryContextFactory.getInstance().createTaglibDomainModelContext(file);
final ITaglibDomainMetaDataQuery query = MetaDataQueryFactory.getInstance().createQuery(mdcontext);
final Model m = query.findTagLibraryModel(uri);
final Trait t = query.findTrait(m, "isTagDir"); //$NON-NLS-1$