Я новичок в разработке плагинов eclipse, и я пытаюсь преобразовать IMethod в строковое представление полного имени метода. И.Е.Использовать JDT для получения полного имени метода
my.full.package.ClassName.methodName(int param, String string)
До сих пор мне приходилось вручную рулить свое решение. Есть ли способ лучше?
private static String getMethodFullName(IMethod iMethod)
{
String packageString = "[Default Package]";
try {
IPackageDeclaration[] declarations = iMethod.getCompilationUnit().getPackageDeclarations();
if(declarations.length > 0)
{
packageString = declarations[0].getElementName();
}
} catch (JavaModelException e) {
}
String classString = iMethod.getCompilationUnit().getElementName();
classString = classString.replaceAll(".java", "");
String methodString = iMethod.getElementName() + "(";
for (String type : iMethod.getParameterTypes()) {
methodString += type + ",";
}
methodString += ")";
return packageString + "." + classString + "." + methodString;
}
Хорошо, что я никогда не видел класс Signature – iain