return super.getReferences();
}
if (args.length == 2 && "java".equals(args[0]) &&
expressions.length == 2 && expressions[1] == this) {
final JavaClassReferenceProvider provider = new JavaClassReferenceProvider();
return provider.getReferencesByString(args[1], referenceElement, 0);
}
else if ((args.length == 2 && "component".equals(args[0]) &&
expressions.length == 2 && expressions[1] == this) ||
(args.length == 1 && expressions.length == 1 && expressions[0] == this)) {
final ASTNode referenceNode = referenceElement.getNode();
if (referenceNode != null) {
return new PsiReference[]{new CfmlComponentReference(referenceNode)};
}
}
}
else if (functionCallEl != null && functionCallEl.isExpandPath()) {
final PsiElement referenceElement = findChildByType(CfmlTokenTypes.STRING_TEXT);
if (referenceElement == null) {
return super.getReferences();
}
final ASTNode referenceNode = referenceElement.getNode();
if (referenceNode != null) {
return (new CfmlFileReferenceSet(this, 1)).getAllReferences();
}
}
else if (functionCallEl != null && functionCallEl.isCreateFromJavaLoader()) {
CfmlExpression[] expressions = functionCallEl.getArguments();
if (expressions.length > 0 && expressions[0] == this) {
PsiElement stringTextElement = findChildByType(CfmlTokenTypes.STRING_TEXT);
if (stringTextElement != null) {
// getting javaloader type
PsiElement secondChild = functionCallEl.getFirstChild().getFirstChild();
if (!(secondChild instanceof CfmlReferenceExpression)) {
return super.getReferences();
}
PsiType type = ((CfmlReferenceExpression)secondChild).getPsiType();
if (!(type instanceof CfmlJavaLoaderClassType)) {
return super.getReferences();
}
final GlobalSearchScope ss = ((CfmlJavaLoaderClassType)type).getSearchScope();
String possibleJavaClassName = stringTextElement.getText();
final JavaClassReferenceProvider provider = new JavaClassReferenceProvider() {
@Override
public GlobalSearchScope getScope(Project project) {
return ss;
}
};
return provider.getReferencesByString(possibleJavaClassName, stringTextElement, 0);
}
}
}
else if (getParent() instanceof CfmlComponentConstructorCall || getParent() instanceof CfmlImport) {
PsiElement stringTextElement = findChildByType(CfmlTokenTypes.STRING_TEXT);