public void setSelectedConnections(List<UIDatabaseConnection> connections) { // SELECTION LOGIC if (!compareConnections(connections, this.selectedConnections)) { List<TYPE> pollResults = pollContextChangeVetoResults(); if (!contains(TYPE.CANCEL, pollResults)) { this.selectedConnections = connections; setRepositoryConnections(connections); } else { connectionsTable.setSelectedItems(this.selectedConnections); return; } } // ENABLE BUTTONS LOGIC boolean enableEdit = false; boolean enableRemove = false; if (connections != null && connections.size() > 0) { enableRemove = true; if (connections.size() == 1) { enableEdit = true; } } // Convenience - Leave 'new' enabled, modify 'edit' and 'remove' enableButtons(true, enableEdit, enableRemove); }