Author: koen.aers(a)jboss.com
Date: 2012-04-21 08:34:27 -0400 (Sat, 21 Apr 2012)
New Revision: 40398
Modified:
trunk/forge/plugins/org.jboss.tools.forge.ui/src/org/jboss/tools/forge/ui/console/FieldPostProcessor.java
Log:
Modified:
trunk/forge/plugins/org.jboss.tools.forge.ui/src/org/jboss/tools/forge/ui/console/FieldPostProcessor.java
===================================================================
---
trunk/forge/plugins/org.jboss.tools.forge.ui/src/org/jboss/tools/forge/ui/console/FieldPostProcessor.java 2012-04-21
11:42:21 UTC (rev 40397)
+++
trunk/forge/plugins/org.jboss.tools.forge.ui/src/org/jboss/tools/forge/ui/console/FieldPostProcessor.java 2012-04-21
12:34:27 UTC (rev 40398)
@@ -24,14 +24,14 @@
public void postProcess(Map<String, String> commandDetails) {
try {
String crn = commandDetails.get("crn");
- String par = commandDetails.get("par").trim();
+ String par = commandDetails.get("par");
IFile file = ForgeCommandPostProcessorHelper.getFile(crn);
if (file == null) return;
IJavaElement javaElement = JavaCore.create(file);
if (javaElement != null && javaElement.getElementType() ==
IJavaElement.COMPILATION_UNIT) {
try {
IType type = ((ICompilationUnit)javaElement).getTypes()[0];
- IField field = type.getField(par);
+ IField field = getFieldToPostProcess(par, type);
if (field != null) {
ISourceRange sourceRange = field.getSourceRange();
IWorkbenchPage workbenchPage =
ForgeCommandPostProcessorHelper.getActiveWorkbenchPage();
@@ -48,5 +48,16 @@
ForgeUIPlugin.log(e);
}
}
+
+ private IField getFieldToPostProcess(String par, IType type) {
+ String[] candidates = par.trim().split(" ");
+ for (String candidate : candidates) {
+ IField field = type.getField(candidate);
+ if (field != null && field.exists()) {
+ return field;
+ }
+ }
+ return null;
+ }
}
Show replies by date