summaryrefslogtreecommitdiffstats
path: root/idrop-swing
diff options
context:
space:
mode:
authormconway <michael.c.conway@gmail.com>2012-12-06 13:54:58 (GMT)
committer mconway <michael.c.conway@gmail.com>2012-12-06 13:54:58 (GMT)
commitd1ce7a22dcf1ec7f92033d8c5ad6d3d3e0362e09 (patch)
tree00c0012814c19f7751583c226657941ef0c1a42a /idrop-swing
parentf43cf1a5b2f6619e3e2f4ab488faa669a4cb2453 (diff)
downloadQCG-Data-d1ce7a22dcf1ec7f92033d8c5ad6d3d3e0362e09.zip
QCG-Data-d1ce7a22dcf1ec7f92033d8c5ad6d3d3e0362e09.tar.gz
QCG-Data-d1ce7a22dcf1ec7f92033d8c5ad6d3d3e0362e09.tar.bz2
[#1093] Broken pipe error did not propogate in parallel transfer
Diffstat (limited to 'idrop-swing')
-rw-r--r--idrop-swing/pom.xml2
-rw-r--r--idrop-swing/release_notes.txt16
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IDROPConfigurationPanel.form14
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IDROPConfigurationPanel.java40
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/services/IdropConfigurationService.java1
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/services/IdropConfigurationServiceImpl.java2
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/utils/IdropConfig.java11
-rw-r--r--idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/utils/Version.java4
-rw-r--r--idrop-swing/src/main/resources/idrop.properties6
-rw-r--r--idrop-swing/src/main/resources/org/irods/jargon/idrop/desktop/systraygui/Bundle.properties2
10 files changed, 86 insertions, 12 deletions
diff --git a/idrop-swing/pom.xml b/idrop-swing/pom.xml
index d133c73..d3d1944 100644
--- a/idrop-swing/pom.xml
+++ b/idrop-swing/pom.xml
@@ -3,7 +3,7 @@
<parent>
<groupId>org.irods</groupId>
<artifactId>idrop</artifactId>
- <version>1.0.2</version>
+ <version>1.0.3-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.irods.idrop</groupId>
diff --git a/idrop-swing/release_notes.txt b/idrop-swing/release_notes.txt
index ab0cc47..1b53861 100644
--- a/idrop-swing/release_notes.txt
+++ b/idrop-swing/release_notes.txt
@@ -1,11 +1,13 @@
*'''Project''': iDrop-swing- Desktop iRODS transfer manager
-*'''Date''': 11/28/2012
-*'''Release Version''': 1.0.2
-*'''git tag''': 1.0.2
+*'''Date''': xx/xx/xx
+*'''Release Version''': 1.0.X
+*'''git tag''': 1.0.X
==News==
+post 1.0.2 release snapshot (work in progress)
+
This is the iDrop desktop transfer manager client. iDrop runs in the system tray of your favorite operating system, and can manage transfers between your computer and iRODS, and manage data once in iRODS.
iDrop also automates synchronization between your desktop and iRODS. There is an initial local -> iRODS backup capability, with automatic version of files within iRODS. Other modes are in development
@@ -22,13 +24,13 @@ iDrop-swing uses Maven for dependency management. See the pom.xml file for refe
Note that the following bug and feature requests are logged in GForge with related commit information [[https://code.renci.org/gf/project/irodsidrop/tracker/]]
==Features==
+*[#1092] add reconnect option to iDrop
+**Added preferences panel option and idrop.properties to set reconnect to 'true'. Emulates -T option for put/get
-*[#870] jargon support for PAM
-** added support for PAM logins
-
-*[#1011] add a dedicated doAuthentication method to irodsAccessObjectFactory
==Bug Fixes==
+* [#1093] Broken pipe error did not propogate in parallel transfer
+**Minor fixes to better propogate errors to queue manager
==Outstanding Issues==
diff --git a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IDROPConfigurationPanel.form b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IDROPConfigurationPanel.form
index bbe7b36..0fe055a 100644
--- a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IDROPConfigurationPanel.form
+++ b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IDROPConfigurationPanel.form
@@ -425,6 +425,20 @@
<EventHandler event="itemStateChanged" listener="java.awt.event.ItemListener" parameters="java.awt.event.ItemEvent" handler="checkAllowReroutingItemStateChanged"/>
</Events>
</Component>
+ <Component class="javax.swing.JCheckBox" name="checkConnectionRestart">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IDROPConfigurationPanel.checkConnectionRestart.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ <Property name="toolTipText" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/irods/jargon/idrop/desktop/systraygui/Bundle.properties" key="IDROPConfigurationPanel.checkConnectionRestart.toolTipText" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="itemStateChanged" listener="java.awt.event.ItemListener" parameters="java.awt.event.ItemEvent" handler="checkConnectionRestartItemStateChanged"/>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="checkConnectionRestartActionPerformed"/>
+ </Events>
+ </Component>
</SubComponents>
</Container>
<Container class="javax.swing.JPanel" name="plnPipelineConfiguration">
diff --git a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IDROPConfigurationPanel.java b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IDROPConfigurationPanel.java
index 61360c0..2f263b5 100644
--- a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IDROPConfigurationPanel.java
+++ b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/IDROPConfigurationPanel.java
@@ -168,6 +168,7 @@ public class IDROPConfigurationPanel extends javax.swing.JDialog {
checkLogSuccessfulTransfer = new javax.swing.JCheckBox();
checkVerifyChecksumOnTransfer = new javax.swing.JCheckBox();
checkAllowRerouting = new javax.swing.JCheckBox();
+ checkConnectionRestart = new javax.swing.JCheckBox();
plnPipelineConfiguration = new javax.swing.JPanel();
lblIrodsSocketTimeout = new javax.swing.JLabel();
spinnerIrodsSocketTimeout = new javax.swing.JSpinner();
@@ -457,6 +458,20 @@ public class IDROPConfigurationPanel extends javax.swing.JDialog {
});
pnlTransferManagement.add(checkAllowRerouting);
+ checkConnectionRestart.setText(org.openide.util.NbBundle.getMessage(IDROPConfigurationPanel.class, "IDROPConfigurationPanel.checkConnectionRestart.text")); // NOI18N
+ checkConnectionRestart.setToolTipText(org.openide.util.NbBundle.getMessage(IDROPConfigurationPanel.class, "IDROPConfigurationPanel.checkConnectionRestart.toolTipText")); // NOI18N
+ checkConnectionRestart.addItemListener(new java.awt.event.ItemListener() {
+ public void itemStateChanged(java.awt.event.ItemEvent evt) {
+ checkConnectionRestartItemStateChanged(evt);
+ }
+ });
+ checkConnectionRestart.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ checkConnectionRestartActionPerformed(evt);
+ }
+ });
+ pnlTransferManagement.add(checkConnectionRestart);
+
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
@@ -1270,6 +1285,29 @@ public class IDROPConfigurationPanel extends javax.swing.JDialog {
idropGui.reinitializeForChangedIRODSAccount();
}//GEN-LAST:event_comboPrefsDefaultResourceActionPerformed
+ private void checkConnectionRestartActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_checkConnectionRestartActionPerformed
+
+
+
+
+
+ }//GEN-LAST:event_checkConnectionRestartActionPerformed
+
+ private void checkConnectionRestartItemStateChanged(java.awt.event.ItemEvent evt) {//GEN-FIRST:event_checkConnectionRestartItemStateChanged
+ boolean isSelected = false;
+ if (evt.getStateChange() == ItemEvent.SELECTED) {
+ isSelected = true;
+ }
+ log.info("updating connection restart to:{}", isSelected);
+ try {
+ idropCore.getIdropConfigurationService().updateConfig(IdropConfigurationService.IRODS_CONNECTION_RESTART, Boolean.toString(isSelected));
+ idropCore.getIdropConfigurationService().updateJargonPropertiesBasedOnIDROPConfig();
+ } catch (Exception ex) {
+ log.error("error setting property", ex);
+ throw new IdropRuntimeException(ex);
+ }
+ }//GEN-LAST:event_checkConnectionRestartItemStateChanged
+
private void btnOKActionPerformed(java.awt.event.ActionEvent evt) {
this.dispose();
}
@@ -1690,6 +1728,7 @@ public class IDROPConfigurationPanel extends javax.swing.JDialog {
private javax.swing.ButtonGroup buttonGroupSynchMode;
private javax.swing.JCheckBox checkAllowParallelTransfers;
private javax.swing.JCheckBox checkAllowRerouting;
+ private javax.swing.JCheckBox checkConnectionRestart;
private javax.swing.JCheckBox checkLogSuccessfulTransfer;
private javax.swing.JCheckBox checkShowFileProgress;
private javax.swing.JCheckBox checkShowGUI;
@@ -1783,6 +1822,7 @@ public class IDROPConfigurationPanel extends javax.swing.JDialog {
spinnerIrodsParallelSocketTimeout.setValue(idropConfig.getIrodsParallelConnectionTimeout());
spinnerIrodsMaxParallelThreads.setValue(idropConfig.getIrodsParallelTransferMaxThreads());
checkAllowParallelTransfers.setSelected(idropConfig.isUseParallelTransfers());
+ checkConnectionRestart.setSelected(idropConfig.isConnectionRestart());
checkUseNIOForParallelTransfers.setSelected(idropConfig.isUseNIOForParallelTransfers());
txtInternalInputBufferSize.setText(String.valueOf(idropConfig.getInternalInputStreamBufferSize()));
txtInternalOutputBufferSize.setText(String.valueOf(idropConfig.getInternalOutputStreamBufferSize()));
diff --git a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/services/IdropConfigurationService.java b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/services/IdropConfigurationService.java
index 2b136a9..e8df940 100644
--- a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/services/IdropConfigurationService.java
+++ b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/services/IdropConfigurationService.java
@@ -55,6 +55,7 @@ public interface IdropConfigurationService {
public static final String IRODS_IO_LOCAL_OUTPUT_STREAM_BUFFER_SIZE = "jargon.io.local.output.stream.buffer.size";
public static final String IRODS_IO_PUT_BUFFER_SIZE = "jargon.put.buffer.size";
public static final String IRODS_IO_GET_BUFFER_SIZE = "jargon.get.buffer.size";
+ public static final String IRODS_CONNECTION_RESTART = "transfer.reconnect";
Properties bootstrapConfigurationAndMergePropertiesFromLocalAndClasspath() throws IdropException;
diff --git a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/services/IdropConfigurationServiceImpl.java b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/services/IdropConfigurationServiceImpl.java
index 4242ad2..fe525da 100644
--- a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/services/IdropConfigurationServiceImpl.java
+++ b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/services/IdropConfigurationServiceImpl.java
@@ -325,6 +325,7 @@ public class IdropConfigurationServiceImpl implements IdropConfigurationService
idropConfig.setProperty(IdropConfigurationService.IRODS_PARALLEL_USE_NIO, String.valueOf(jargonProperties.isUseNIOForParallelTransfers()));
idropConfig.setProperty(IdropConfigurationService.IRODS_PARALLEL_USE_PARALLEL, String.valueOf(jargonProperties.isUseParallelTransfer()));
idropConfig.setProperty(IdropConfigurationService.IRODS_PARALLEL_USE_POOL, String.valueOf(jargonProperties.isUseTransferThreadsPool()));
+ idropConfig.setProperty(IdropConfigurationService.IRODS_CONNECTION_RESTART, String.valueOf(jargonProperties.isReconnect()));
}
}
@@ -352,6 +353,7 @@ public class IdropConfigurationServiceImpl implements IdropConfigurationService
newProps.setSendInputStreamBufferSize(idropCore.getIdropConfig().getSendInputStreamBufferSize());
newProps.setUseParallelTransfer(idropCore.getIdropConfig().isUseParallelTransfers());
newProps.setUseNIOForParallelTransfers(idropCore.getIdropConfig().isUseNIOForParallelTransfers());
+ newProps.setReconnect(idropCore.getIdropConfig().isConnectionRestart());
idropCore.getIrodsFileSystem().getIrodsSession().setJargonProperties(newProps);
}
diff --git a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/utils/IdropConfig.java b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/utils/IdropConfig.java
index 7ffc9d3..5371e3d 100644
--- a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/utils/IdropConfig.java
+++ b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/utils/IdropConfig.java
@@ -475,4 +475,15 @@ public class IdropConfig {
return propInt;
}
+
+ public boolean isConnectionRestart() {
+ boolean propBoolean = false;
+ String propString = idropProperties.getProperty(IdropConfigurationService.IRODS_CONNECTION_RESTART);
+
+ if (propString != null && propString.equals("true")) {
+ propBoolean = true;
+ }
+
+ return propBoolean;
+ }
}
diff --git a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/utils/Version.java b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/utils/Version.java
index 651203c..8de15d8 100644
--- a/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/utils/Version.java
+++ b/idrop-swing/src/main/java/org/irods/jargon/idrop/desktop/systraygui/utils/Version.java
@@ -1,5 +1,5 @@
package org.irods.jargon.idrop.desktop.systraygui.utils;
public final class Version {
- public static String VERSION="1.0.2";
- public static String BUILD_TIME="20121130-0937";
+ public static String VERSION="1.0.3-SNAPSHOT";
+ public static String BUILD_TIME="20121206-0814";
}
diff --git a/idrop-swing/src/main/resources/idrop.properties b/idrop-swing/src/main/resources/idrop.properties
index 4ab949d..c7ae201 100644
--- a/idrop-swing/src/main/resources/idrop.properties
+++ b/idrop-swing/src/main/resources/idrop.properties
@@ -64,7 +64,6 @@ jargon.io.local.input.stream.buffer.size=16384
jargon.put.buffer.size=4194304
# size of buffer used in get operations (file segment size per call to DataObjInp)
jargon.get.buffer.size=4194304
-
#allow resource redirects (redirect transfers to resource server containing file)
transfer.allow.redirects=false
#compute a checksum for every file put to iRODS (does not do a verification/comparison)
@@ -72,10 +71,13 @@ transfer.compute.checksum=false
#compute a checksum for every file put/get to iRODS and verify
transfer.computeandvalidate.checksum=false
#send within-file status call-backs on transfers (slight performance penalty, but allows monitoring of file progress if 'true'
-transfer.intra.file.callbacks=false
+transfer.intra.file.callbacks=true
#do not allow parallel trasfers at all
transfer.use.parallel=true
#use NIO variant for parallel transfers (use java nio transferTo between the local file system and iRODS) - EXPERIMENTAL
transfer.use.nio.for.parallel=false
#thread cap for parallel transfers, can interact with pool settings above, set to 0 for no max, transfer.use.parallel overrides this
transfer.max.parallel.threads=4
+#transfer reconnect setting for puts/gets will renew socket connections as in the -T icommand option
+transfer.reconnect=true
+
diff --git a/idrop-swing/src/main/resources/org/irods/jargon/idrop/desktop/systraygui/Bundle.properties b/idrop-swing/src/main/resources/org/irods/jargon/idrop/desktop/systraygui/Bundle.properties
index 825a534..827589d 100644
--- a/idrop-swing/src/main/resources/org/irods/jargon/idrop/desktop/systraygui/Bundle.properties
+++ b/idrop-swing/src/main/resources/org/irods/jargon/idrop/desktop/systraygui/Bundle.properties
@@ -115,3 +115,5 @@ IDROPConfigurationPanel.lblZone.AccessibleContext.accessibleDescription=Zone of
IDROPConfigurationPanel.lblResource.AccessibleContext.accessibleDescription=Current default resource
IDROPConfigurationPanel.lblUserName.AccessibleContext.accessibleName=User name of currently logged in grid
IDROPConfigurationPanel.lblResource.text=resource
+IDROPConfigurationPanel.checkConnectionRestart.text=Connection Restart
+IDROPConfigurationPanel.checkConnectionRestart.toolTipText=Periodically restart the connection, equivalent to the -T option