/**
* Adds the given reference to the contents.
*
* @param referenceDescription
* reference to add
*/
private void addReference(final IReferenceDescription referenceDescription) {
URI containerEObjectURI = referenceDescription.getContainerEObjectURI();
final URI eObjectURI = (containerEObjectURI == null) ? referenceDescription.getSourceEObjectUri() : containerEObjectURI;
IResourceDescription resourceDescription = resourceDescriptions.getResourceDescription(eObjectURI.trimFragment());
if (resourceDescription != null) {
ReferenceSearchViewTreeNode resourceNode = resourceNode(resourceDescription);
new DynamicReferenceSearchViewTreeNode(resourceNode, referenceDescription, new Supplier<Object>() {
@Override
public Object get() {
InternalEObject dummyProxy = (InternalEObject) EcoreFactory.eINSTANCE.createEObject();
dummyProxy.eSetProxyURI(eObjectURI);
Iterator<IEObjectDescription> sourceObjects = resourceDescriptions.getExportedObjectsByObject(dummyProxy).iterator();
return sourceObjects.hasNext() ? sourceObjects.next() : referenceDescription;
}
});
}
}
FastReferenceSearchResultContentProvider.java 文件源码
java
阅读 26
收藏 0
点赞 0
评论 0
项目:dsl-devkit
作者:
评论列表
文章目录