Skip to content
This repository has been archived by the owner on Nov 30, 2021. It is now read-only.

Commit

Permalink
added hornetq support for human task view, configurable in preference…
Browse files Browse the repository at this point in the history
…s panel
  • Loading branch information
mswiderski committed Apr 27, 2012
1 parent 2068dfa commit de39552
Show file tree
Hide file tree
Showing 5 changed files with 52 additions and 21 deletions.
4 changes: 3 additions & 1 deletion drools-eclipse/org.jbpm.eclipse.task/META-INF/MANIFEST.MF
Original file line number Diff line number Diff line change
Expand Up @@ -15,5 +15,7 @@ Bundle-ClassPath: .,
lib/mina-core.jar,
lib/slf4j-api.jar,
lib/slf4j-jdk14.jar,
lib/jbpm-human-task.jar
lib/jbpm-human-task.jar,
lib/hornetq-core.jar,
lib/netty.jar
Bundle-Vendor: JBoss by Red Hat
28 changes: 12 additions & 16 deletions drools-eclipse/org.jbpm.eclipse.task/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,9 @@
mina-core,
slf4j-api,
slf4j-jdk14,
jbpm-human-task
jbpm-human-task,
hornetq-core,
netty
</includeArtifactIds>
</configuration>
</execution>
Expand Down Expand Up @@ -154,23 +156,17 @@
<artifactId>commons-collections</artifactId>
</exclusion>

<exclusion>
<groupId>org.hornetq</groupId>
<artifactId>hornetq-core</artifactId>
</exclusion>

<exclusion>
<groupId>org.hornetq</groupId>
<artifactId>hornetq-transports</artifactId>
</exclusion>

<exclusion>
<groupId>org.jboss.netty</groupId>
<artifactId>netty</artifactId>
</exclusion>

</exclusions>
</dependency>
<dependency>
<groupId>org.hornetq</groupId>
<artifactId>hornetq-core</artifactId>
</dependency>
<dependency>
<groupId>org.jboss.netty</groupId>
<artifactId>netty</artifactId>
<version>3.2.0.Final</version>
</dependency>

</dependencies>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,5 +21,6 @@ public interface TaskConstants {
String SERVER_IP_ADDRESS = "ServerIPAddress";
String SERVER_PORT = "ServerPort";
String LANGUAGE = "Language";
String TRANSPORT = "Transport";

}
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.jface.preference.PreferencePage;
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Combo;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Label;
Expand All @@ -33,11 +34,13 @@ public class TaskPreferencePage extends PreferencePage implements IWorkbenchPref
private Text ipAddressText;
private Text portText;
private Text languageText;
private Combo transportType;

protected Control createContents(Composite parent) {
ipAddressText = createText(parent, "IP address");
portText = createText(parent, "Port");
languageText = createText(parent, "Language");
transportType = createCombo(parent, "Transport");
initializeValues();
return new Composite(parent, SWT.NULL);
}
Expand All @@ -48,6 +51,15 @@ private Text createText(Composite group, String labelText) {
Text text = new Text(group, SWT.NONE);
return text;
}

private Combo createCombo(Composite group, String labelText) {
Label label = new Label(group, SWT.NONE);
label.setText(labelText);
Combo combo = new Combo(group, SWT.NONE);
combo.add("mina", 0);
combo.add("hornetq", 1);
return combo;
}

protected IPreferenceStore doGetPreferenceStore() {
return Activator.getDefault().getPreferenceStore();
Expand All @@ -58,13 +70,15 @@ private void initializeDefaults() {
ipAddressText.setText(store.getDefaultString(TaskConstants.SERVER_IP_ADDRESS));
portText.setText(store.getDefaultInt(TaskConstants.SERVER_PORT) + "");
languageText.setText(store.getDefaultString(TaskConstants.LANGUAGE));
transportType.select(store.getInt(TaskConstants.TRANSPORT));
}

private void initializeValues() {
IPreferenceStore store = getPreferenceStore();
ipAddressText.setText(store.getString(TaskConstants.SERVER_IP_ADDRESS));
portText.setText(store.getInt(TaskConstants.SERVER_PORT) + "");
languageText.setText(store.getString(TaskConstants.LANGUAGE));
transportType.select(store.getInt(TaskConstants.TRANSPORT));
}

protected void performDefaults() {
Expand All @@ -85,6 +99,7 @@ private void storeValues() {
store.setValue(TaskConstants.SERVER_IP_ADDRESS, ipAddressText.getText());
store.setValue(TaskConstants.SERVER_PORT, port);
store.setValue(TaskConstants.LANGUAGE, languageText.getText());
store.setValue(TaskConstants.TRANSPORT, transportType.getSelectionIndex());
} catch (NumberFormatException e) {
showMessage("Could not convert port, should be an integer value.");
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,8 @@
import org.jbpm.task.User;
import org.jbpm.task.query.TaskSummary;
import org.jbpm.task.service.TaskClient;
import org.jbpm.task.service.hornetq.HornetQTaskClientConnector;
import org.jbpm.task.service.hornetq.HornetQTaskClientHandler;
import org.jbpm.task.service.mina.MinaTaskClientConnector;
import org.jbpm.task.service.mina.MinaTaskClientHandler;

Expand Down Expand Up @@ -106,6 +108,7 @@ public class TaskView extends ViewPart {
private String ipAddress = "127.0.0.1";
private int port = 9123;
private String language = "en-UK";
private int transport = 0;

private Text userNameText;
private Table table;
Expand Down Expand Up @@ -179,6 +182,7 @@ public TaskView() {
ipAddress = preferenceStore.getString(TaskConstants.SERVER_IP_ADDRESS);
port = preferenceStore.getInt(TaskConstants.SERVER_PORT);
language = preferenceStore.getString(TaskConstants.LANGUAGE);
transport = preferenceStore.getInt(TaskConstants.TRANSPORT);
preferenceStore.addPropertyChangeListener(new IPropertyChangeListener() {
public void propertyChange(PropertyChangeEvent event) {
if (TaskConstants.SERVER_IP_ADDRESS.equals(event.getProperty())) {
Expand All @@ -187,6 +191,8 @@ public void propertyChange(PropertyChangeEvent event) {
port = (Integer) event.getNewValue();
} else if (TaskConstants.LANGUAGE.equals(event.getProperty())) {
language = (String) event.getNewValue();
} else if (TaskConstants.TRANSPORT.equals(event.getProperty())) {
transport = (Integer) event.getNewValue();
}
}
});
Expand Down Expand Up @@ -687,12 +693,23 @@ public void fail() {
}

private TaskClient getTaskClient() {
if (client == null) {
client = new TaskClient(new MinaTaskClientConnector("client 1",
new MinaTaskClientHandler(SystemEventListenerFactory.getSystemEventListener())));

if (client == null) {
String transportType = "unknown";
if (transport == 0) {
transportType = "Apache Mina";
client = new TaskClient(new MinaTaskClientConnector("client 1",
new MinaTaskClientHandler(SystemEventListenerFactory.getSystemEventListener())));

} else if (transport == 1) {
transportType = "HornetQ";
client = new TaskClient(new HornetQTaskClientConnector("client 1",
new HornetQTaskClientHandler(SystemEventListenerFactory.getSystemEventListener())));

}
boolean connected = client.connect(ipAddress, port);
if (!connected) {
showMessage("Could not connect to task server: " + ipAddress + " [port " + port + "]");
showMessage("Could not connect to task server: " + ipAddress + " [port " + port + "] transport " + transportType);
client = null;
}
}
Expand Down

0 comments on commit de39552

Please sign in to comment.