JBoss Tools SVN: r17260 - trunk/jbpm/tests/org.jboss.tools.flow.jpdl4.test/META-INF.
by jbosstools-commits@lists.jboss.org
Author: koen.aers(a)jboss.com
Date: 2009-08-25 20:09:46 -0400 (Tue, 25 Aug 2009)
New Revision: 17260
Modified:
trunk/jbpm/tests/org.jboss.tools.flow.jpdl4.test/META-INF/MANIFEST.MF
Log:
update version number to 1.1.0
Modified: trunk/jbpm/tests/org.jboss.tools.flow.jpdl4.test/META-INF/MANIFEST.MF
===================================================================
--- trunk/jbpm/tests/org.jboss.tools.flow.jpdl4.test/META-INF/MANIFEST.MF 2009-08-26 00:09:28 UTC (rev 17259)
+++ trunk/jbpm/tests/org.jboss.tools.flow.jpdl4.test/META-INF/MANIFEST.MF 2009-08-26 00:09:46 UTC (rev 17260)
@@ -2,6 +2,6 @@
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.jboss.tools.flow.jpdl4.test
-Bundle-Version: 1.0.0.qualifier
+Bundle-Version: 1.1.0.qualifier
Bundle-Vendor: %pluginProvider
Bundle-RequiredExecutionEnvironment: J2SE-1.5
16 years, 4 months
JBoss Tools SVN: r17259 - trunk/jbpm/tests/org.jboss.tools.flow.jpdl4.multipage.test/META-INF.
by jbosstools-commits@lists.jboss.org
Author: koen.aers(a)jboss.com
Date: 2009-08-25 20:09:28 -0400 (Tue, 25 Aug 2009)
New Revision: 17259
Modified:
trunk/jbpm/tests/org.jboss.tools.flow.jpdl4.multipage.test/META-INF/MANIFEST.MF
Log:
update version number to 1.1.0
Modified: trunk/jbpm/tests/org.jboss.tools.flow.jpdl4.multipage.test/META-INF/MANIFEST.MF
===================================================================
--- trunk/jbpm/tests/org.jboss.tools.flow.jpdl4.multipage.test/META-INF/MANIFEST.MF 2009-08-26 00:08:50 UTC (rev 17258)
+++ trunk/jbpm/tests/org.jboss.tools.flow.jpdl4.multipage.test/META-INF/MANIFEST.MF 2009-08-26 00:09:28 UTC (rev 17259)
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.jboss.tools.flow.jpdl4.multipage.test
-Bundle-Version: 1.0.0.qualifier
+Bundle-Version: 1.1.0.qualifier
Bundle-Vendor: %providerName
Bundle-RequiredExecutionEnvironment: J2SE-1.5
Require-Bundle: org.junit;bundle-version="3.8.2"
16 years, 4 months
JBoss Tools SVN: r17258 - trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4.multipage/META-INF.
by jbosstools-commits@lists.jboss.org
Author: koen.aers(a)jboss.com
Date: 2009-08-25 20:08:50 -0400 (Tue, 25 Aug 2009)
New Revision: 17258
Modified:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4.multipage/META-INF/MANIFEST.MF
Log:
update version number to 1.1.0
Modified: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4.multipage/META-INF/MANIFEST.MF
===================================================================
--- trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4.multipage/META-INF/MANIFEST.MF 2009-08-26 00:08:33 UTC (rev 17257)
+++ trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4.multipage/META-INF/MANIFEST.MF 2009-08-26 00:08:50 UTC (rev 17258)
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.jboss.tools.flow.jpdl4.multipage;singleton:=true
-Bundle-Version: 1.0.0.qualifier
+Bundle-Version: 1.1.0.qualifier
Bundle-Activator: org.jboss.tools.flow.jpdl4.multipage.MultiPageEditorPlugin
Bundle-Vendor: %providerName
Bundle-Localization: plugin
16 years, 4 months
JBoss Tools SVN: r17257 - trunk/jbpm/features/org.jboss.tools.flow.jpdl4.feature.
by jbosstools-commits@lists.jboss.org
Author: koen.aers(a)jboss.com
Date: 2009-08-25 20:08:33 -0400 (Tue, 25 Aug 2009)
New Revision: 17257
Modified:
trunk/jbpm/features/org.jboss.tools.flow.jpdl4.feature/feature.xml
Log:
update version number to 1.1.0
Modified: trunk/jbpm/features/org.jboss.tools.flow.jpdl4.feature/feature.xml
===================================================================
--- trunk/jbpm/features/org.jboss.tools.flow.jpdl4.feature/feature.xml 2009-08-25 23:54:20 UTC (rev 17256)
+++ trunk/jbpm/features/org.jboss.tools.flow.jpdl4.feature/feature.xml 2009-08-26 00:08:33 UTC (rev 17257)
@@ -2,7 +2,7 @@
<feature
id="org.jboss.tools.flow.jpdl4.feature"
label="%featureName"
- version="1.0.0.qualifier"
+ version="1.1.0.qualifier"
provider-name="%featureProvider">
<description>
16 years, 4 months
JBoss Tools SVN: r17256 - in trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4: src/org/jboss/tools/flow/jpdl4/io and 2 other directories.
by jbosstools-commits@lists.jboss.org
Author: koen.aers(a)jboss.com
Date: 2009-08-25 19:54:20 -0400 (Tue, 25 Aug 2009)
New Revision: 17256
Added:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/properties/JavaTaskExpressionSection.java
Modified:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/plugin.xml
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/io/JavaTaskDeserializer.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/io/JavaTaskSerializer.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/JavaTask.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/properties/JavaTaskClassSection.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/properties/JavaTaskMethodSection.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/properties/JavaTaskVariableSection.java
Log:
GPD-369 : Java Task Problems
Modified: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/plugin.xml
===================================================================
--- trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/plugin.xml 2009-08-25 22:41:09 UTC (rev 17255)
+++ trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/plugin.xml 2009-08-25 23:54:20 UTC (rev 17256)
@@ -507,6 +507,13 @@
</propertySection>
<propertySection
afterSection="org.jboss.tools.jpdl4.javaTask.class"
+ class="org.jboss.tools.flow.jpdl4.properties.JavaTaskExpressionSection"
+ id="org.jboss.tools.jpdl4.javaTask.expression"
+ tab="org.jboss.tools.jpdl4.general">
+ <input type="org.jboss.tools.flow.jpdl4.model.JavaTask"/>
+ </propertySection>
+ <propertySection
+ afterSection="org.jboss.tools.jpdl4.javaTask.expression"
class="org.jboss.tools.flow.jpdl4.properties.JavaTaskMethodSection"
id="org.jboss.tools.jpdl4.javaTask.method"
tab="org.jboss.tools.jpdl4.general">
Modified: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/io/JavaTaskDeserializer.java
===================================================================
--- trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/io/JavaTaskDeserializer.java 2009-08-25 22:41:09 UTC (rev 17255)
+++ trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/io/JavaTaskDeserializer.java 2009-08-25 23:54:20 UTC (rev 17256)
@@ -16,6 +16,7 @@
wrapper.setPropertyValue(JavaTask.CLASS, element.getAttribute("class"));
wrapper.setPropertyValue(JavaTask.METHOD, element.getAttribute("method"));
wrapper.setPropertyValue(JavaTask.VAR, element.getAttribute("var"));
+ wrapper.setPropertyValue(JavaTask.EXPR, element.getAttribute("expr"));
}
public Wrapper deserializeChildNode(Wrapper parent, Node node) {
Wrapper result = super.deserializeChildNode(parent, node);
Modified: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/io/JavaTaskSerializer.java
===================================================================
--- trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/io/JavaTaskSerializer.java 2009-08-25 22:41:09 UTC (rev 17255)
+++ trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/io/JavaTaskSerializer.java 2009-08-25 23:54:20 UTC (rev 17256)
@@ -15,6 +15,7 @@
result.add("class");
result.add("method");
result.add("var");
+ result.add("expr");
return result;
}
protected String getPropertyName(String attributeName) {
@@ -24,6 +25,8 @@
return JavaTask.METHOD;
} else if ("var".equals(attributeName)) {
return JavaTask.VAR;
+ } else if ("expr".equals(attributeName)) {
+ return JavaTask.EXPR;
}
return super.getPropertyName(attributeName);
}
Modified: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/JavaTask.java
===================================================================
--- trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/JavaTask.java 2009-08-25 22:41:09 UTC (rev 17255)
+++ trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/model/JavaTask.java 2009-08-25 23:54:20 UTC (rev 17256)
@@ -12,12 +12,14 @@
public static final String CLASS = "org.jboss.tools.flow.jpdl4.model.javaTask.class";
public static final String METHOD = "org.jboss.tools.flow.jpdl4.model.javaTask.method";
public static final String VAR = "org.jboss.tools.flow.jpdl4.model.javaTask.var";
+ public static final String EXPR = "org.jboss.tools.flow.jpdl4.model.javaTask.expression";
public static final String FIELDS = "org.jboss.tools.flow.jpdl4.model.javaTask.fields";
public static final String ARGS = "org.jboss.tools.flow.jpdl4.model.javaTask.args";
private String className;
private String methodName;
private String variableName;
+ private String expression;
private List<Argument> arguments = new ArrayList<Argument>();
private List<Field> fields = new ArrayList<Field>();
@@ -49,6 +51,14 @@
this.variableName = variableName;
}
+ public String getExpression() {
+ return expression;
+ }
+
+ public void setExpression(String expression) {
+ this.expression = expression;
+ }
+
protected boolean isPropagationExclusive() {
return true;
}
@@ -70,6 +80,8 @@
return getMethodName();
} else if (VAR.equals(id)) {
return getVariableName();
+ } else if (EXPR.equals(id)) {
+ return getExpression();
} else if (FIELDS.equals(id)) {
return fields;
} else if (ARGS.equals(id)) {
@@ -85,6 +97,8 @@
return getMethodName() != null;
} else if (VAR.equals(id)) {
return getVariableName() != null;
+ } else if (EXPR.equals(id)) {
+ return getExpression() != null;
} else if (FIELDS.equals(id)) {
return true;
} else if (ARGS.equals(id)) {
@@ -103,6 +117,8 @@
setMethodName((String)value);
} else if (VAR.equals(id)) {
setVariableName((String)value);
+ } else if (EXPR.equals(id)) {
+ setExpression((String)value);
}
}
Modified: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/properties/JavaTaskClassSection.java
===================================================================
--- trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/properties/JavaTaskClassSection.java 2009-08-25 22:41:09 UTC (rev 17255)
+++ trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/properties/JavaTaskClassSection.java 2009-08-25 23:54:20 UTC (rev 17256)
@@ -5,7 +5,7 @@
public class JavaTaskClassSection extends TextFieldPropertySection {
public JavaTaskClassSection() {
- super(JavaTask.CLASS, "Class Name");
+ super(JavaTask.CLASS, "Class");
}
}
Added: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/properties/JavaTaskExpressionSection.java
===================================================================
--- trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/properties/JavaTaskExpressionSection.java (rev 0)
+++ trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/properties/JavaTaskExpressionSection.java 2009-08-25 23:54:20 UTC (rev 17256)
@@ -0,0 +1,11 @@
+package org.jboss.tools.flow.jpdl4.properties;
+
+import org.jboss.tools.flow.jpdl4.model.JavaTask;
+
+public class JavaTaskExpressionSection extends TextFieldPropertySection {
+
+ public JavaTaskExpressionSection() {
+ super(JavaTask.EXPR, "Expression");
+ }
+
+}
Property changes on: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/properties/JavaTaskExpressionSection.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/properties/JavaTaskMethodSection.java
===================================================================
--- trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/properties/JavaTaskMethodSection.java 2009-08-25 22:41:09 UTC (rev 17255)
+++ trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/properties/JavaTaskMethodSection.java 2009-08-25 23:54:20 UTC (rev 17256)
@@ -5,7 +5,7 @@
public class JavaTaskMethodSection extends TextFieldPropertySection {
public JavaTaskMethodSection() {
- super(JavaTask.METHOD, "Method Name");
+ super(JavaTask.METHOD, "Method");
}
}
Modified: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/properties/JavaTaskVariableSection.java
===================================================================
--- trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/properties/JavaTaskVariableSection.java 2009-08-25 22:41:09 UTC (rev 17255)
+++ trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/properties/JavaTaskVariableSection.java 2009-08-25 23:54:20 UTC (rev 17256)
@@ -5,7 +5,7 @@
public class JavaTaskVariableSection extends TextFieldPropertySection {
public JavaTaskVariableSection() {
- super(JavaTask.VAR, "Variable Name");
+ super(JavaTask.VAR, "Return Variable");
}
}
16 years, 4 months
JBoss Tools SVN: r17255 - trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/io.
by jbosstools-commits@lists.jboss.org
Author: koen.aers(a)jboss.com
Date: 2009-08-25 18:41:09 -0400 (Tue, 25 Aug 2009)
New Revision: 17255
Modified:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/io/SequenceFlowDeserializer.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/io/SequenceFlowSerializer.java
Log:
GPD-370 : Designer creates duplicate timer nodes under transition nodes
Modified: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/io/SequenceFlowDeserializer.java
===================================================================
--- trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/io/SequenceFlowDeserializer.java 2009-08-25 17:29:17 UTC (rev 17254)
+++ trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/io/SequenceFlowDeserializer.java 2009-08-25 22:41:09 UTC (rev 17255)
@@ -3,6 +3,8 @@
*/
package org.jboss.tools.flow.jpdl4.io;
+import java.util.ArrayList;
+import java.util.List;
import java.util.StringTokenizer;
import org.eclipse.draw2d.geometry.Point;
@@ -74,27 +76,30 @@
}
}
+ public void deserializeChildNodes(Wrapper wrapper,
+ Element element) {
+ if (wrapper == null) return;
+ NodeList nodeList = element.getChildNodes();
+ ArrayList<Node> unknownNodeList = new ArrayList<Node>();
+ for (int i = 0; i < nodeList.getLength(); i++) {
+ Node node = nodeList.item(i);
+ if ("timer".equals(node.getNodeName())) {
+ deserializeTimer(wrapper, node, unknownNodeList);
+ } else if ("outcome-value".equals(node.getNodeName())) {
+ deserializeOutcomeValue(wrapper, node, unknownNodeList);
+ } else {
+ deserializeChildNode(wrapper, node, unknownNodeList);
+ }
+ }
+ wrapper.getElement().setMetaData("trailingNodes", unknownNodeList);
+ }
+
public Wrapper deserializeChildNode(Wrapper parent, Node node) {
Wrapper result = null;
if (!(parent instanceof ConnectionWrapper)) return result;
ConnectionWrapper connectionWrapper = (ConnectionWrapper)parent;
if (node instanceof Element) {
- if ("timer".equals(node.getNodeName())) {
- String duedate = ((Element)node).getAttribute("duedate");
- if (duedate != null && !("".equals(duedate))) {
- parent.setPropertyValue(SequenceFlow.TIMER, duedate);
- }
- } else if ("outcome-value".equals(node.getNodeName())) {
- NodeList nodeList = ((Element)node).getElementsByTagName("string");
- if (nodeList.getLength() == 1) {
- String value = ((Element)nodeList.item(0)).getAttribute("value");
- if (value != null && !("".equals("value"))) {
- parent.setPropertyValue(SequenceFlow.OUTCOME_VALUE, value);
- }
- }
- } else {
- result = Registry.createWrapper((Element)node);
- }
+ result = Registry.createWrapper((Element)node);
if (result == null) return null;
if (result instanceof Wrapper) {
if (result.getElement() instanceof EventListener) {
@@ -104,6 +109,21 @@
}
return result;
}
+
+ private void deserializeTimer(Wrapper parent, Node node, List<Node> unknownNodeList) {
+ if (!(node instanceof Element)) return;
+ parent.setMetaData("beforeTimerNodes", new ArrayList<Node>(unknownNodeList));
+ unknownNodeList.clear();
+ parent.setPropertyValue(SequenceFlow.TIMER, ((Element)node).getAttribute("duedate"));
+ }
+ private void deserializeOutcomeValue(Wrapper parent, Node node, List<Node> unknownNodeList) {
+ parent.setMetaData("beforeOutcomeValueNodes", new ArrayList<Node>(unknownNodeList));
+ unknownNodeList.clear();
+ // outome-value has only one child node
+ Node content = node.getChildNodes().item(0);
+ parent.setPropertyValue(SequenceFlow.OUTCOME_VALUE, content.getNodeValue());
+ }
+
}
\ No newline at end of file
Modified: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/io/SequenceFlowSerializer.java
===================================================================
--- trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/io/SequenceFlowSerializer.java 2009-08-25 17:29:17 UTC (rev 17254)
+++ trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/io/SequenceFlowSerializer.java 2009-08-25 22:41:09 UTC (rev 17255)
@@ -14,6 +14,7 @@
import org.jboss.tools.flow.jpdl4.model.SequenceFlow;
class SequenceFlowSerializer extends AbstractElementSerializer {
+
protected List<String> getAttributesToSave() {
ArrayList<String> result = new ArrayList<String>();
result.add("name");
@@ -21,6 +22,7 @@
result.add("g");
return result;
}
+
protected void appendAttributeToSave(String attributeName, StringBuffer buffer, Wrapper wrapper) {
if (!(wrapper instanceof ConnectionWrapper)) return;
Element element = wrapper.getElement();
@@ -33,18 +35,21 @@
appendGraphics(buffer, (ConnectionWrapper)wrapper);
}
}
+
protected void appendName(StringBuffer buffer, SequenceFlow sequenceFlow) {
if (sequenceFlow.getName() == null) return;
String value = sequenceFlow.getName();
if (value == null || "".equals(sequenceFlow.getName())) return;
buffer.append(" name=\"" + value + "\"");
}
+
protected void appendTo(StringBuffer buffer, SequenceFlow sequenceFlow) {
if (sequenceFlow.getTo() == null) return;
String value = sequenceFlow.getTo().getName();
if (value == null || "".equals(value)) return;
buffer.append(" to=\"" + value + "\"");
}
+
protected void appendGraphics(StringBuffer buffer, ConnectionWrapper wrapper) {
StringBuffer bendPointBuffer = new StringBuffer();
List<Point> bendPoints = wrapper.getBendpoints();
@@ -73,21 +78,19 @@
buffer.append(labelBuffer);
buffer.append("\"");
}
+
private boolean isEmpty(String str) {
return str == null || "".equals(str);
}
+
public void appendBody(StringBuffer buffer, Wrapper wrapper, int level) {
String timer = (String)wrapper.getPropertyValue(SequenceFlow.TIMER);
if (timer != null && !("".equals(timer))) {
- buffer.append("\n");
- appendPadding(buffer, level + 1);
- buffer.append("<timer duedate=\"" + timer + "\"/>");
+ appendTimer(buffer, wrapper, timer, level);
}
String outcome = (String)wrapper.getPropertyValue(SequenceFlow.OUTCOME_VALUE);
if (outcome != null && !("".equals(outcome))) {
- buffer.append("\n");
- appendPadding(buffer, level + 1);
- buffer.append("<outcome-value><string value=\"" + outcome + "\"/></outcome-value>");
+ appendOutcomeValue(buffer, wrapper, outcome, level);
}
List<Element> eventListeners = wrapper.getChildren("listener");
if (eventListeners != null) {
@@ -98,4 +101,16 @@
}
}
}
+
+ private void appendTimer(StringBuffer buffer, Wrapper wrapper, String timer, int level) {
+ appendUnknownNodes("beforeTimerNodes", buffer, wrapper, level);
+ buffer.append("<timer duedate=\"").append(timer).append("\"/>");
+ }
+
+ private void appendOutcomeValue(StringBuffer buffer, Wrapper wrapper, String outcome, int level) {
+ appendUnknownNodes("beforeOutcomeValueNodes", buffer, wrapper, level);
+ buffer.append("<outcome-value>").append(outcome).append("</outcome-value>");
+ }
+
+
}
\ No newline at end of file
16 years, 4 months
JBoss Tools SVN: r17254 - trunk/jsf/docs/userguide/en/modules.
by jbosstools-commits@lists.jboss.org
Author: abogachuk
Date: 2009-08-25 13:29:17 -0400 (Tue, 25 Aug 2009)
New Revision: 17254
Modified:
trunk/jsf/docs/userguide/en/modules/editors.xml
Log:
VPE Editor: Properties and Outline views described.
Modified: trunk/jsf/docs/userguide/en/modules/editors.xml
===================================================================
--- trunk/jsf/docs/userguide/en/modules/editors.xml 2009-08-25 15:51:18 UTC (rev 17253)
+++ trunk/jsf/docs/userguide/en/modules/editors.xml 2009-08-25 17:29:17 UTC (rev 17254)
@@ -811,6 +811,11 @@
</mediaobject>
</figure>
+
+ <para>The Outline view displays a specific outline of a structured file that is currently open in the editor area, and lists its structural elements. Right-click on the elements will open additional options that allow adding other specific elements in necessary positions.</para>
+ <para>The Properties view shows property names and their values for a selected item. The values are editable, just select any and click on the button that appeared to choose a new value. Key combination <property>Ctrl+Z</property> will return the previous value, <property>Ctrl+Y</property> will return the new value again. The Properties view has additional options and can be set up to display categories and advanced properties. </para>
+
+
<para>It's also possible to use the <link linkend="palette">JBoss Tools
Palette</link> to insert any tag from the list of tag libraries to the page you
are editing with just a click or drag-and-drop.</para>
16 years, 4 months
JBoss Tools SVN: r17253 - in trunk/seam/plugins: org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui and 2 other directories.
by jbosstools-commits@lists.jboss.org
Author: dazarov
Date: 2009-08-25 11:51:18 -0400 (Tue, 25 Aug 2009)
New Revision: 17253
Added:
trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamRefactorSeacher.java
trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/actions/FindUsagesInELAction.java
Modified:
trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/SeamUIMessages.java
trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/messages.properties
trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/refactoring/SeamRefactorContributionFactory.java
Log:
https://jira.jboss.org/jira/browse/JBIDE-4771
Added: trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamRefactorSeacher.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamRefactorSeacher.java (rev 0)
+++ trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamRefactorSeacher.java 2009-08-25 15:51:18 UTC (rev 17253)
@@ -0,0 +1,312 @@
+/*******************************************************************************
+ * Copyright (c) 2009 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.seam.internal.core.refactoring;
+
+import java.io.IOException;
+import java.util.StringTokenizer;
+
+import org.eclipse.core.resources.IContainer;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IFolder;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.jdt.core.IJavaProject;
+import org.eclipse.jdt.internal.ui.text.FastJavaPartitionScanner;
+import org.eclipse.jdt.ui.text.IJavaPartitions;
+import org.eclipse.jface.text.BadLocationException;
+import org.eclipse.jface.text.Document;
+import org.eclipse.jface.text.rules.IToken;
+import org.eclipse.jface.text.rules.Token;
+import org.eclipse.wst.sse.core.StructuredModelManager;
+import org.eclipse.wst.sse.core.internal.provisional.IModelManager;
+import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
+import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
+import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
+import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
+import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
+import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
+import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
+import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
+import org.jboss.tools.common.el.core.model.ELInstance;
+import org.jboss.tools.common.el.core.model.ELInvocationExpression;
+import org.jboss.tools.common.el.core.model.ELModel;
+import org.jboss.tools.common.el.core.model.ELPropertyInvocation;
+import org.jboss.tools.common.el.core.parser.ELParser;
+import org.jboss.tools.common.el.core.parser.ELParserUtil;
+import org.jboss.tools.common.model.util.EclipseResourceUtil;
+import org.jboss.tools.common.util.FileUtil;
+import org.jboss.tools.seam.core.SeamCorePlugin;
+import org.jboss.tools.seam.core.SeamProjectsSet;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+
+public abstract class SeamRefactorSeacher {
+ protected static final String JAVA_EXT = "java"; //$NON-NLS-1$
+ protected static final String XML_EXT = "xml"; //$NON-NLS-1$
+ protected static final String XHTML_EXT = "xhtml"; //$NON-NLS-1$
+ protected static final String JSP_EXT = "jsp"; //$NON-NLS-1$
+ protected static final String PROPERTIES_EXT = "properties"; //$NON-NLS-1$
+
+ protected static final String SEAM_PROPERTIES_FILE = "seam.properties"; //$NON-NLS-1$
+
+ protected IFile baseFile;
+ protected String propertyName;
+
+ public SeamRefactorSeacher(IFile baseFile, String propertyName){
+ this.baseFile = baseFile;
+ this.propertyName = propertyName;
+ }
+
+ public void findELReferences(){
+ SeamProjectsSet projectsSet = new SeamProjectsSet(baseFile.getProject());
+
+ IProject[] projects = projectsSet.getAllProjects();
+ for (IProject project : projects) {
+ if(project == null) continue;
+
+ IJavaProject javaProject = EclipseResourceUtil.getJavaProject(project);
+
+ // searching java, xml and property files in source folders
+ if(javaProject != null){
+ for(IResource resource : EclipseResourceUtil.getJavaSourceRoots(project)){
+ if(resource instanceof IFolder)
+ scanForJava((IFolder) resource);
+ else if(resource instanceof IFile)
+ scanForJava((IFile) resource);
+ }
+ }
+
+ // searching jsp, xhtml and xml files in WebContent folders
+ if(project.equals(projectsSet.getWarProject()))
+ scan(projectsSet.getDefaultViewsFolder());
+ else if(project.equals(projectsSet.getEarProject()))
+ scan(projectsSet.getDefaultEarViewsFolder());
+ else{
+ scan(project);
+ }
+ }
+ }
+ private void scanForJava(IContainer container){
+ try{
+ for(IResource resource : container.members()){
+ if(resource instanceof IFolder)
+ scanForJava((IFolder) resource);
+ else if(resource instanceof IFile)
+ scanForJava((IFile) resource);
+ }
+ }catch(CoreException ex){
+ SeamCorePlugin.getDefault().logError(ex);
+ }
+ }
+
+ private void scan(IContainer container){
+ try{
+ for(IResource resource : container.members()){
+ if(resource instanceof IFolder)
+ scan((IFolder) resource);
+ else if(resource instanceof IFile)
+ scan((IFile) resource);
+ }
+ }catch(CoreException ex){
+ SeamCorePlugin.getDefault().logError(ex);
+ }
+ }
+
+ private void scanForJava(IFile file){
+ String ext = file.getFileExtension();
+
+ if(!isFileCorrect(file))
+ return;
+
+ String content = null;
+ try {
+ content = FileUtil.readStream(file.getContents());
+ } catch (CoreException e) {
+ SeamCorePlugin.getPluginLog().logError(e);
+ return;
+ }
+ if(JAVA_EXT.equalsIgnoreCase(ext)){
+ scanJava(file, content);
+ }else if(XML_EXT.equalsIgnoreCase(ext))
+ scanDOM(file, content);
+ else if(PROPERTIES_EXT.equalsIgnoreCase(ext))
+ scanProperties(file, content);
+ }
+
+ private void scan(IFile file){
+ String ext = file.getFileExtension();
+
+ if(!isFileCorrect(file))
+ return;
+
+ String content = null;
+ try {
+ content = FileUtil.readStream(file.getContents());
+ } catch (CoreException e) {
+ SeamCorePlugin.getPluginLog().logError(e);
+ return;
+ }
+ if(XML_EXT.equalsIgnoreCase(ext) || XHTML_EXT.equalsIgnoreCase(ext) || JSP_EXT.equalsIgnoreCase(ext))
+ scanDOM(file, content);
+ }
+
+ private void scanJava(IFile file, String content){
+ try {
+ FastJavaPartitionScanner scaner = new FastJavaPartitionScanner();
+ Document document = new Document(content);
+ scaner.setRange(document, 0, document.getLength());
+ IToken token = scaner.nextToken();
+ while(token!=null && token!=Token.EOF) {
+ if(IJavaPartitions.JAVA_STRING.equals(token.getData())) {
+ int length = scaner.getTokenLength();
+ int offset = scaner.getTokenOffset();
+ String value = document.get(offset, length);
+ if(value.indexOf('{')>-1) {
+ scanString(file, value, offset);
+ }
+ }
+ token = scaner.nextToken();
+ }
+ } catch (BadLocationException e) {
+ SeamCorePlugin.getDefault().logError(e);
+ }
+ }
+
+ private void scanDOM(IFile file, String content){
+ IModelManager manager = StructuredModelManager.getModelManager();
+ if(manager == null) {
+ return;
+ }
+ IStructuredModel model = null;
+ try {
+ model = manager.getModelForRead(file);
+ if (model instanceof IDOMModel) {
+ IDOMModel domModel = (IDOMModel) model;
+ IDOMDocument document = domModel.getDocument();
+ scanChildNodes(file, document);
+ }
+ } catch (CoreException e) {
+ SeamCorePlugin.getDefault().logError(e);
+ } catch (IOException e) {
+ SeamCorePlugin.getDefault().logError(e);
+ } finally {
+ if (model != null) {
+ model.releaseFromRead();
+ }
+ }
+ }
+
+ private void scanChildNodes(IFile file, Node parent) {
+ NodeList children = parent.getChildNodes();
+ for(int i=0; i<children.getLength(); i++) {
+ Node curentValidatedNode = children.item(i);
+ if(Node.ELEMENT_NODE == curentValidatedNode.getNodeType()) {
+ scanNodeContent(file, ((IDOMNode)curentValidatedNode).getFirstStructuredDocumentRegion(), DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE);
+ } else if(Node.TEXT_NODE == curentValidatedNode.getNodeType()) {
+ scanNodeContent(file, ((IDOMNode)curentValidatedNode).getFirstStructuredDocumentRegion(), DOMRegionContext.XML_CONTENT);
+ }
+ scanChildNodes(file, curentValidatedNode);
+ }
+ }
+
+ private void scanNodeContent(IFile file, IStructuredDocumentRegion node, String regionType) {
+ ITextRegionList regions = node.getRegions();
+ for(int i=0; i<regions.size(); i++) {
+ ITextRegion region = regions.get(i);
+ if(region.getType() == regionType) {
+ String text = node.getFullText(region);
+ if(text.indexOf("{")>-1) { //$NON-NLS-1$
+ int offset = node.getStartOffset() + region.getStart();
+ scanString(file, text, offset);
+ }
+ }
+ }
+ }
+
+ // looking for component references in EL
+ private void scanString(IFile file, String string, int offset) {
+ int startEl = string.indexOf("#{"); //$NON-NLS-1$
+ if(startEl>-1) {
+ ELParser parser = ELParserUtil.getJbossFactory().createParser();
+ ELModel model = parser.parse(string);
+ for (ELInstance instance : model.getInstances()) {
+ for(ELInvocationExpression ie : instance.getExpression().getInvocations()){
+ ELPropertyInvocation pi = findComponentReference(ie);
+ if(pi != null)
+ match(file, pi);
+ }
+ }
+ }
+ }
+
+ private void scanProperties(IFile file, String content){
+ scanString(file, content, 0);
+
+ if(!file.getName().equals(SEAM_PROPERTIES_FILE))
+ return;
+
+ StringTokenizer tokenizer = new StringTokenizer(content, "#= \t\r\n\f", true); //$NON-NLS-1$
+
+ String lastToken = "\n"; //$NON-NLS-1$
+ int offset = 0;
+ boolean comment = false;
+ boolean key = true;
+
+ while(tokenizer.hasMoreTokens()){
+ String token = tokenizer.nextToken("#= \t\r\n\f"); //$NON-NLS-1$
+ if(token.equals("\r")) //$NON-NLS-1$
+ token = "\n"; //$NON-NLS-1$
+
+ if(token.equals("#") && lastToken.equals("\n")) //$NON-NLS-1$ //$NON-NLS-2$
+ comment = true;
+ else if(token.equals("\n") && comment) //$NON-NLS-1$
+ comment = false;
+
+ if(!comment){
+ if(!token.equals("\n") && lastToken.equals("\n")) //$NON-NLS-1$ //$NON-NLS-2$
+ key = true;
+ else if(key && (token.equals("=") || token.equals(" "))) //$NON-NLS-1$ //$NON-NLS-2$
+ key = false;
+
+ if(key && token.startsWith(propertyName)){
+ match(file, token);
+ }
+ }
+
+ lastToken = token;
+ offset += token.length();
+ }
+ }
+
+
+ private ELPropertyInvocation findComponentReference(ELInvocationExpression invocationExpression){
+ ELInvocationExpression invExp = invocationExpression;
+ while(invExp != null){
+ if(invExp instanceof ELPropertyInvocation){
+ if(((ELPropertyInvocation)invExp).getQualifiedName() != null && ((ELPropertyInvocation)invExp).getQualifiedName().equals(propertyName))
+ return (ELPropertyInvocation)invExp;
+ else
+ invExp = invExp.getLeft();
+
+ }else{
+ invExp = invExp.getLeft();
+ }
+ }
+ return null;
+ }
+
+ protected abstract boolean isFileCorrect(IFile file);
+
+ protected abstract void match(IFile file, ELPropertyInvocation elPropertyInvokation);
+
+ protected abstract void match(IFile file, String token);
+}
Property changes on: trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamRefactorSeacher.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/SeamUIMessages.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/SeamUIMessages.java 2009-08-25 14:51:16 UTC (rev 17252)
+++ trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/SeamUIMessages.java 2009-08-25 15:51:18 UTC (rev 17253)
@@ -390,6 +390,8 @@
public static String RENAME_SEAM_CONTEXT_VARIABLE;
+ public static String FIND_USAGES_IN_EL;
+
public static String SEAM_COMPONENT_RENAME_HANDLER_ERROR;
static {
Added: trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/actions/FindUsagesInELAction.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/actions/FindUsagesInELAction.java (rev 0)
+++ trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/actions/FindUsagesInELAction.java 2009-08-25 15:51:18 UTC (rev 17253)
@@ -0,0 +1,103 @@
+/*******************************************************************************
+ * Copyright (c) 2009 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.seam.ui.actions;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.jdt.core.IMethod;
+import org.eclipse.jdt.core.IType;
+import org.eclipse.jface.action.Action;
+import org.eclipse.jface.action.IAction;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.ui.IActionDelegate2;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.IWorkbenchWindowActionDelegate;
+import org.jboss.tools.common.el.core.model.ELPropertyInvocation;
+import org.jboss.tools.seam.internal.core.refactoring.SeamRefactorSeacher;
+import org.jboss.tools.seam.ui.SeamUIMessages;
+
+public class FindUsagesInELAction extends Action implements IWorkbenchWindowActionDelegate, IActionDelegate2 {
+ private IFile javaFile;
+ private IType type;
+ private IMethod method;
+ private String propertyName;
+
+ public FindUsagesInELAction(IFile file, IType type, IMethod method, String propertyName){
+ super(SeamUIMessages.FIND_USAGES_IN_EL);
+ this.javaFile = file;
+ this.type = type;
+ this.method = method;
+ this.propertyName = propertyName;
+ }
+
+ public void dispose() {
+ }
+
+ public void init(IWorkbenchWindow window) {
+ }
+
+ public void run(IAction action) {
+ //ELResolverFactoryManager.getInstance().getResolvers(resource);
+
+
+// ELInvocationExpression expression = SeamELCompletionEngine.findExpressionAtOffset(
+// document, selectionOffset, 0, document.getLength());
+//
+// if (expression == null)
+// return; // No EL Operand found
+//
+// try {
+// performNewSearch(expression, file);
+// } catch (JavaModelException jme) {
+// SeamGuiPlugin.getPluginLog().logError(jme);
+// } catch (InterruptedException ie) {
+// SeamGuiPlugin.getPluginLog().logError(ie);
+// }
+// return;
+ }
+
+
+ public void selectionChanged(IAction action, ISelection selection) {
+ }
+
+ public void init(IAction action) {
+ }
+
+ public void runWithEvent(IAction action, Event event) {
+ }
+
+ class ELSearcher extends SeamRefactorSeacher{
+ public ELSearcher(IFile file, String name){
+ super(file, name);
+ }
+
+ @Override
+ protected boolean isFileCorrect(IFile file) {
+ // TODO Auto-generated method stub
+ return true;
+ }
+
+ @Override
+ protected void match(IFile file,
+ ELPropertyInvocation elPropertyInvokation) {
+ // TODO Auto-generated method stub
+
+ }
+
+ @Override
+ protected void match(IFile file, String token) {
+ // TODO Auto-generated method stub
+
+ }
+
+
+ }
+}
Property changes on: trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/actions/FindUsagesInELAction.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/messages.properties
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/messages.properties 2009-08-25 14:51:16 UTC (rev 17252)
+++ trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/messages.properties 2009-08-25 15:51:18 UTC (rev 17253)
@@ -204,4 +204,5 @@
SEAM_REFACTOR = Seam Refactor
RENAME_SEAM_COMPONENT = Rename Seam Component
RENAME_SEAM_CONTEXT_VARIABLE = Rename Seam Context Variable
+FIND_USAGES_IN_EL = Find Usages in Expression Language
SEAM_COMPONENT_RENAME_HANDLER_ERROR = Error
Modified: trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/refactoring/SeamRefactorContributionFactory.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/refactoring/SeamRefactorContributionFactory.java 2009-08-25 14:51:16 UTC (rev 17252)
+++ trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/refactoring/SeamRefactorContributionFactory.java 2009-08-25 15:51:18 UTC (rev 17253)
@@ -24,6 +24,7 @@
import org.eclipse.jdt.core.ICompilationUnit;
import org.eclipse.jdt.core.IJavaElement;
import org.eclipse.jdt.core.IJavaProject;
+import org.eclipse.jdt.core.IMethod;
import org.eclipse.jdt.core.ISourceRange;
import org.eclipse.jdt.core.IType;
import org.eclipse.jdt.core.JavaCore;
@@ -79,6 +80,7 @@
import org.jboss.tools.seam.internal.core.refactoring.RenameSeamContextVariableProcessor;
import org.jboss.tools.seam.ui.SeamGuiPlugin;
import org.jboss.tools.seam.ui.SeamUIMessages;
+import org.jboss.tools.seam.ui.actions.FindUsagesInELAction;
import org.jboss.tools.seam.ui.wizard.RenameComponentWizard;
import org.jboss.tools.seam.ui.wizard.RenameSeamContextVariableWizard;
import org.w3c.dom.Node;
@@ -94,6 +96,9 @@
private static final String XHTML_EXT = "xhtml"; //$NON-NLS-1$
private static final String JSP_EXT = "jsp"; //$NON-NLS-1$
private static final String PROPERTIES_EXT = "properties"; //$NON-NLS-1$
+ private static final String GET = "get"; //$NON-NLS-1$
+ private static final String SET = "set"; //$NON-NLS-1$
+ private static final String IS = "is"; //$NON-NLS-1$
static private String selectedText;
static private IFile editorFile;
@@ -190,6 +195,7 @@
//
// additions.addContributionItem(mm, null);
// }
+ checkPropertyName(selection, mm, additions);
status = checkContextVariableInJava(editorFile, fileContent, selection);
} else if(XML_EXT.equalsIgnoreCase(ext) || XHTML_EXT.equalsIgnoreCase(ext) || JSP_EXT.equalsIgnoreCase(ext))
status = checkContextVariableInDOM(editorFile, fileContent, selection);
@@ -207,6 +213,28 @@
}
}
+ private void checkPropertyName(TextSelection selection, MenuManager mm, IContributionRoot additions){
+ try{
+ ICompilationUnit comUnit = getCompilationUnit(editorFile);
+ if(comUnit != null){
+ IJavaElement element = comUnit.getElementAt(selection.getOffset());
+ if(element != null){
+ //System.out.println("element - "+element.getClass());
+ if(element instanceof IMethod){
+ IMethod method = (IMethod) element;
+ IType type = method.getDeclaringType();
+ String propertyName = getPropertyName(method);
+
+ mm.add(new FindUsagesInELAction(editorFile, type, method, propertyName));
+ additions.addContributionItem(mm, null);
+ }
+ }
+ }
+ }catch(CoreException ex){
+ SeamGuiPlugin.getPluginLog().logError(ex);
+ }
+ }
+
private boolean checkNameAnnotation(TextSelection selection){
IAnnotation nameAnnotation = getNameAnnotation(editorFile);
if(nameAnnotation != null){
@@ -398,6 +426,18 @@
return null;
}
+ private String getPropertyName(IMethod method){
+ String name = method.getElementName();
+
+ if(name.startsWith(GET) || name.startsWith(SET))
+ return name.substring(3);
+
+ if(name.startsWith(IS))
+ return name.substring(2);
+
+ return name;
+ }
+
private static void saveAndBuild(){
if(!SeamGuiPlugin.getDefault().getWorkbench().getActiveWorkbenchWindow().getActivePage().saveAllEditors(true))
return;
@@ -462,4 +502,5 @@
invokeRenameSeamContextVariableWizard(selectedText, shell);
}
}
+
}
16 years, 4 months
JBoss Tools SVN: r17252 - trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/contentassist.
by jbosstools-commits@lists.jboss.org
Author: akazakov
Date: 2009-08-25 10:51:16 -0400 (Tue, 25 Aug 2009)
New Revision: 17252
Modified:
trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/contentassist/JSPDialogContentProposalProvider.java
trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/contentassist/JspContentAssistProcessor.java
Log:
Fixed compiler errors.
Modified: trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/contentassist/JSPDialogContentProposalProvider.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/contentassist/JSPDialogContentProposalProvider.java 2009-08-25 13:55:42 UTC (rev 17251)
+++ trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/contentassist/JSPDialogContentProposalProvider.java 2009-08-25 14:51:16 UTC (rev 17252)
@@ -326,7 +326,6 @@
kbQuery.setOffset(offset);
kbQuery.setValue(query);
kbQuery.setStringQuery(query);
- kbQuery.setText(text);
return kbQuery;
}
Modified: trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/contentassist/JspContentAssistProcessor.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/contentassist/JspContentAssistProcessor.java 2009-08-25 13:55:42 UTC (rev 17251)
+++ trunk/jst/plugins/org.jboss.tools.jst.jsp/src/org/jboss/tools/jst/jsp/contentassist/JspContentAssistProcessor.java 2009-08-25 14:51:16 UTC (rev 17252)
@@ -482,6 +482,10 @@
int replacementLength = contentAssistRequest.getReplacementLength();
int cursorPosition = getCursorPositionForProposedText(replacementString);
Image image = textProposal.getImage();
+ if (image == null) {
+ image = XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_ATTRIBUTE);
+ }
+
String displayString = textProposal.getLabel() == null ?
replacementString :
textProposal.getLabel();
@@ -517,7 +521,6 @@
String stringQuery = matchString;
KbQuery kbQuery = createKbQuery(Type.ATTRIBUTE_VALUE, query, stringQuery);
- kbQuery.setText(contentAssistRequest.getText());
TextProposal[] proposals = PageProcessor.getInstance().getProposals(kbQuery, getContext());
for (int i = 0; proposals != null && i < proposals.length; i++) {
16 years, 4 months
JBoss Tools SVN: r17251 - in trunk/jst/plugins/org.jboss.tools.jst.web.kb: src/org/jboss/tools/jst/web/kb and 2 other directories.
by jbosstools-commits@lists.jboss.org
Author: akazakov
Date: 2009-08-25 09:55:42 -0400 (Tue, 25 Aug 2009)
New Revision: 17251
Modified:
trunk/jst/plugins/org.jboss.tools.jst.web.kb/META-INF/MANIFEST.MF
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/KbQuery.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/ConverterIDProposalType.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/EnumerationProposalType.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/FaceletsJsfCProposalType.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/IDProposalType.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/ValidatorIDProposalType.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/taglibs/componentExtension.xml
Log:
https://jira.jboss.org/jira/browse/JBIDE-4823 fixed
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/META-INF/MANIFEST.MF
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/META-INF/MANIFEST.MF 2009-08-25 13:04:25 UTC (rev 17250)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/META-INF/MANIFEST.MF 2009-08-25 13:55:42 UTC (rev 17251)
@@ -11,7 +11,8 @@
org.jboss.tools.jst.web,
org.jboss.tools.common.el.core,
org.eclipse.jface.text,
- org.eclipse.wst.sse.core
+ org.eclipse.wst.sse.core,
+ org.eclipse.wst.xml.ui;bundle-version="1.1.0"
Bundle-ActivationPolicy: lazy
Bundle-RequiredExecutionEnvironment: J2SE-1.5
Bundle-Vendor: %providerName
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/KbQuery.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/KbQuery.java 2009-08-25 13:04:25 UTC (rev 17250)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/KbQuery.java 2009-08-25 13:55:42 UTC (rev 17251)
@@ -28,9 +28,6 @@
private Type type;
private String parent;
- //includes text after offset
- private String text;
-
/**
* Type of object for which we want to get info
* @author Alexey Kazakov
@@ -176,12 +173,4 @@
public void setPrefix(String prefix) {
this.prefix = prefix;
}
-
- public void setText(String text) {
- this.text = text;
- }
-
- public String getText() {
- return text;
- }
}
\ No newline at end of file
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/ConverterIDProposalType.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/ConverterIDProposalType.java 2009-08-25 13:04:25 UTC (rev 17250)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/ConverterIDProposalType.java 2009-08-25 13:55:42 UTC (rev 17251)
@@ -16,8 +16,11 @@
import java.util.Set;
import java.util.TreeSet;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.swt.graphics.Image;
import org.jboss.tools.common.text.TextProposal;
import org.jboss.tools.jst.web.kb.KbQuery;
+import org.jboss.tools.jst.web.kb.WebKbPlugin;
import org.jboss.tools.jst.web.project.list.IWebPromptingProvider;
/**
@@ -27,6 +30,9 @@
*/
public class ConverterIDProposalType extends ModelProposalType {
+ private static final String IMAGE_NAME = "EnumerationProposal.gif"; //$NON-NLS-1$
+ private static Image ICON;
+
public ConverterIDProposalType() {}
@Override
@@ -46,7 +52,11 @@
proposal.setLabel(text);
proposal.setReplacementString(text);
proposal.setPosition(text.length());
-
+ if(ICON==null) {
+ ICON = ImageDescriptor.createFromFile(WebKbPlugin.class, IMAGE_NAME).createImage();
+ }
+ proposal.setImage(ICON);
+
proposals.add(proposal);
}
}
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/EnumerationProposalType.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/EnumerationProposalType.java 2009-08-25 13:04:25 UTC (rev 17250)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/EnumerationProposalType.java 2009-08-25 13:55:42 UTC (rev 17251)
@@ -47,6 +47,7 @@
if(ICON==null) {
ICON = ImageDescriptor.createFromFile(WebKbPlugin.class, IMAGE_NAME).createImage();
}
+ proposal.setImage(ICON);
proposals.add(proposal);
}
}
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/FaceletsJsfCProposalType.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/FaceletsJsfCProposalType.java 2009-08-25 13:04:25 UTC (rev 17250)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/FaceletsJsfCProposalType.java 2009-08-25 13:55:42 UTC (rev 17251)
@@ -15,6 +15,9 @@
import java.util.List;
import java.util.Map;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImageHelper;
+import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImages;
import org.jboss.tools.common.text.TextProposal;
import org.jboss.tools.jst.web.kb.IPageContext;
import org.jboss.tools.jst.web.kb.KbQuery;
@@ -29,6 +32,8 @@
*/
public class FaceletsJsfCProposalType extends CustomProposalType {
+ private static Image ICON;
+
/* (non-Javadoc)
* @see org.jboss.tools.jst.web.kb.internal.taglib.CustomProposalType#getProposals(org.jboss.tools.jst.web.kb.KbQuery)
*/
@@ -90,6 +95,11 @@
proposal.setReplacementString(proposal.getLabel());
int position = proposal.getReplacementString().length();
proposal.setPosition(position);
+ if (ICON == null) {
+ ICON = XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_TAG_GENERIC);
+ }
+ proposal.setImage(ICON);
+
return proposal;
}
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/IDProposalType.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/IDProposalType.java 2009-08-25 13:04:25 UTC (rev 17250)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/IDProposalType.java 2009-08-25 13:55:42 UTC (rev 17251)
@@ -1,3 +1,13 @@
+/*******************************************************************************
+ * Copyright (c) 2009 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
package org.jboss.tools.jst.web.kb.internal.taglib;
import java.util.ArrayList;
@@ -5,19 +15,25 @@
import java.util.Set;
import java.util.TreeSet;
+import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.jface.text.IDocument;
+import org.eclipse.swt.graphics.Image;
import org.eclipse.wst.sse.core.StructuredModelManager;
import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
import org.jboss.tools.common.text.TextProposal;
import org.jboss.tools.jst.web.kb.IPageContext;
import org.jboss.tools.jst.web.kb.KbQuery;
+import org.jboss.tools.jst.web.kb.WebKbPlugin;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
public class IDProposalType extends CustomProposalType {
+ private static final String IMAGE_NAME = "EnumerationProposal.gif"; //$NON-NLS-1$
+ private static Image ICON;
+
static String ID = "id"; //$NON-NLS-1$
static String QUOTE_1 = "'"; //$NON-NLS-1$
static String QUOTE_2 = "\""; //$NON-NLS-1$
@@ -36,14 +52,11 @@
collectIDs(root);
}
}
- }
- finally {
+ } finally {
if (sModel != null) {
sModel.releaseFromRead();
}
}
-
-
}
private void collectIDs(Element element) {
@@ -61,17 +74,14 @@
@Override
public TextProposal[] getProposals(KbQuery query) {
String v = query.getValue();
- String txt = query.getText();
- if(txt.startsWith(QUOTE_1) || txt.startsWith(QUOTE_2)) txt = txt.substring(1);
- if(txt.endsWith(QUOTE_1) || txt.endsWith(QUOTE_2)) txt = txt.substring(0, txt.length() - 1);
int offset = v.length();
int b = v.lastIndexOf(',');
if(b < 0) b = 0; else b += 1;
- String tail = txt.substring(offset);
+ String tail = v.substring(offset);
int e = tail.indexOf(',');
- if(e < 0) e = txt.length(); else e += offset;
- String prefix = v.substring(b);
-
+ if(e < 0) e = v.length(); else e += offset;
+ String prefix = v.substring(b).trim();
+
List<TextProposal> proposals = new ArrayList<TextProposal>();
for (String text: idList) {
if(text.startsWith(prefix)) {
@@ -79,15 +89,17 @@
proposal.setLabel(text);
proposal.setReplacementString(text);
proposal.setPosition(b + text.length());
-
proposal.setStart(b);
proposal.setEnd(e);
+ if(ICON==null) {
+ ICON = ImageDescriptor.createFromFile(WebKbPlugin.class, IMAGE_NAME).createImage();
+ }
+ proposal.setImage(ICON);
proposals.add(proposal);
}
}
-
+
return proposals.toArray(new TextProposal[0]);
}
-
-}
+}
\ No newline at end of file
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/ValidatorIDProposalType.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/ValidatorIDProposalType.java 2009-08-25 13:04:25 UTC (rev 17250)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/ValidatorIDProposalType.java 2009-08-25 13:55:42 UTC (rev 17251)
@@ -25,5 +25,4 @@
protected String getListID() {
return IWebPromptingProvider.JSF_VALIDATOR_IDS;
}
-
-}
+}
\ No newline at end of file
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/taglibs/componentExtension.xml
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/taglibs/componentExtension.xml 2009-08-25 13:04:25 UTC (rev 17250)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/taglibs/componentExtension.xml 2009-08-25 13:55:42 UTC (rev 17251)
@@ -18,8 +18,8 @@
</attribute>
<attribute name="dir">
<proposal type="enumeration">
- <param value="LTR" />
- <param value="RTL" />
+ <param value="ltr" />
+ <param value="rtl" />
</proposal>
</attribute>
<attribute name="disabled">
16 years, 4 months