You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ace.apache.org by ma...@apache.org on 2011/01/20 22:00:25 UTC
svn commit: r1061512 -
/incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/VaadinClient.java
Author: marrs
Date: Thu Jan 20 21:00:24 2011
New Revision: 1061512
URL: http://svn.apache.org/viewvc?rev=1061512&view=rev
Log:
ACE-110 Added a checkbox above the artifacts column that allows you to create static or dynamic associations. The setting is applied to all associations newly created.
Modified:
incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/VaadinClient.java
Modified: incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/VaadinClient.java
URL: http://svn.apache.org/viewvc/incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/VaadinClient.java?rev=1061512&r1=1061511&r2=1061512&view=diff
==============================================================================
--- incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/VaadinClient.java (original)
+++ incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/VaadinClient.java Thu Jan 20 21:00:24 2011
@@ -45,6 +45,7 @@ import org.apache.ace.client.repository.
import org.apache.ace.client.repository.RepositoryAdminLoginContext;
import org.apache.ace.client.repository.RepositoryObject;
import org.apache.ace.client.repository.SessionFactory;
+import org.apache.ace.client.repository.helper.bundle.BundleHelper;
import org.apache.ace.client.repository.object.Artifact2GroupAssociation;
import org.apache.ace.client.repository.object.ArtifactObject;
import org.apache.ace.client.repository.object.GatewayObject;
@@ -88,6 +89,8 @@ import com.vaadin.event.dd.acceptcriteri
import com.vaadin.terminal.Sizeable;
import com.vaadin.terminal.UserError;
import com.vaadin.ui.Button;
+import com.vaadin.ui.CheckBox;
+import com.vaadin.ui.ComboBox;
import com.vaadin.ui.GridLayout;
import com.vaadin.ui.HorizontalLayout;
import com.vaadin.ui.Label;
@@ -160,6 +163,8 @@ public class VaadinClient extends com.va
private List<OBREntry> m_obrList;
private GridLayout m_grid;
+
+ private boolean m_dynamicRelations = true;
// basic session ID generator
private static long generateSessionID() {
@@ -220,14 +225,19 @@ public class VaadinClient extends com.va
m_artifactsPanel = createArtifactsPanel(main);
m_grid.addComponent(m_artifactsPanel, 0, 2);
- Button addArtifactButton = new Button("Add artifact...");
- addArtifactButton.addListener(new Button.ClickListener() {
+ HorizontalLayout artifactToolbar = new HorizontalLayout();
+ artifactToolbar.addComponent(createAddArtifactButton(main));
+ CheckBox dynamicCheckBox = new CheckBox("Dynamic Links");
+ dynamicCheckBox.setImmediate(true);
+ dynamicCheckBox.setValue(Boolean.TRUE);
+ dynamicCheckBox.addListener(new Button.ClickListener() {
public void buttonClick(ClickEvent event) {
- showAddArtifactDialog(main);
+ m_dynamicRelations = event.getButton().booleanValue();
}
});
-
- m_grid.addComponent(addArtifactButton, 0, 1);
+ artifactToolbar.addComponent(dynamicCheckBox);
+
+ m_grid.addComponent(artifactToolbar, 0, 1);
m_featuresPanel = createFeaturesPanel(main);
m_grid.addComponent(m_featuresPanel, 1, 2);
@@ -239,13 +249,7 @@ public class VaadinClient extends com.va
m_targetsPanel = createTargetsPanel(main);
m_grid.addComponent(m_targetsPanel, 3, 2);
- Button addTargetButton = new Button("Add target...");
- m_grid.addComponent(addTargetButton, 3, 1);
- addTargetButton.addListener(new Button.ClickListener() {
- public void buttonClick(ClickEvent event) {
- new AddTargetWindow(main).show();
- }
- });
+ m_grid.addComponent(createAddTargetButton(main), 3, 1);
m_grid.setRowExpandRatio(2, 1.0f);
@@ -265,13 +269,27 @@ public class VaadinClient extends com.va
@Override
protected void associateFromRight(String left, String right) {
- m_artifact2GroupAssociationRepository.create(getArtifact(left), getFeature(right));
+ if (m_dynamicRelations) {
+ Map<String, String> properties = new HashMap<String, String>();
+ properties.put(BundleHelper.KEY_ASSOCIATION_VERSIONSTATEMENT, "0.0.0");
+ m_artifact2GroupAssociationRepository.create(getArtifact(left), properties, getFeature(right), null);
+ }
+ else {
+ m_artifact2GroupAssociationRepository.create(getArtifact(left), getFeature(right));
+ }
}
});
m_featuresPanel.setDropHandler(new AssociationDropHandler(m_artifactsPanel, m_distributionsPanel) {
@Override
protected void associateFromLeft(String left, String right) {
- m_artifact2GroupAssociationRepository.create(getArtifact(left), getFeature(right));
+ if (m_dynamicRelations) {
+ Map<String, String> properties = new HashMap<String, String>();
+ properties.put(BundleHelper.KEY_ASSOCIATION_VERSIONSTATEMENT, "0.0.0");
+ m_artifact2GroupAssociationRepository.create(getArtifact(left), properties, getFeature(right), null);
+ }
+ else {
+ m_artifact2GroupAssociationRepository.create(getArtifact(left), getFeature(right));
+ }
}
@Override
@@ -326,6 +344,26 @@ public class VaadinClient extends com.va
main.getWindow().addWindow(loginWindow);
loginWindow.center();
}
+
+ private Button createAddTargetButton(final Window main) {
+ Button addTargetButton = new Button("Add target...");
+ addTargetButton.addListener(new Button.ClickListener() {
+ public void buttonClick(ClickEvent event) {
+ new AddTargetWindow(main).show();
+ }
+ });
+ return addTargetButton;
+ }
+
+ private Button createAddArtifactButton(final Window main) {
+ Button addArtifactButton = new Button("Add artifact...");
+ addArtifactButton.addListener(new Button.ClickListener() {
+ public void buttonClick(ClickEvent event) {
+ showAddArtifactDialog(main);
+ }
+ });
+ return addArtifactButton;
+ }
public class LoginWindow extends Window {
private TextField m_name;