Author: kono
Date: 2011-06-30 14:01:46 -0700 (Thu, 30 Jun 2011)
New Revision: 25988
Modified:
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/session/SaveSessionAsTask.java
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/session/SaveSessionTask.java
Log:
fixes #304 Session file name problem fixed.
Modified:
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/session/SaveSessionAsTask.java
===================================================================
---
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/session/SaveSessionAsTask.java
2011-06-30 20:32:19 UTC (rev 25987)
+++
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/session/SaveSessionAsTask.java
2011-06-30 21:01:46 UTC (rev 25988)
@@ -57,6 +57,7 @@
}
public void run(TaskMonitor taskMonitor) throws Exception {
+ sessionMgr.setCurrentSession(sessionMgr.getCurrentSession(),
file.getName());
insertTasksAfterCurrentTask(new CySessionWriter(writerMgr,
sessionMgr.getCurrentSession(), file));
}
}
Modified:
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/session/SaveSessionTask.java
===================================================================
---
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/session/SaveSessionTask.java
2011-06-30 20:32:19 UTC (rev 25987)
+++
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/session/SaveSessionTask.java
2011-06-30 21:01:46 UTC (rev 25988)
@@ -30,33 +30,51 @@
package org.cytoscape.task.internal.session;
+import java.io.File;
+
+import org.cytoscape.io.write.CySessionWriter;
import org.cytoscape.io.write.CySessionWriterManager;
-import org.cytoscape.io.write.CySessionWriter;
import org.cytoscape.session.CySession;
import org.cytoscape.session.CySessionManager;
import org.cytoscape.work.AbstractTask;
import org.cytoscape.work.TaskMonitor;
-import java.io.File;
-
public class SaveSessionTask extends AbstractTask {
private final CySessionWriterManager writerMgr;
private final CySessionManager sessionMgr;
+
/**
* setAcceleratorCombo(KeyEvent.VK_S, ActionEvent.CTRL_MASK);
*/
- public SaveSessionTask(CySessionWriterManager writerMgr,
CySessionManager sessionMgr) {
+ public SaveSessionTask(final CySessionWriterManager writerMgr, final
CySessionManager sessionMgr) {
super();
+
+ if(writerMgr == null)
+ throw new NullPointerException("CySessionWriterManager
is null.");
+ if(sessionMgr == null)
+ throw new NullPointerException("CySessionManager is
null.");
+
this.writerMgr = writerMgr;
this.sessionMgr = sessionMgr;
}
+
+ @Override
public void run(TaskMonitor taskMonitor) throws Exception {
- CySession session = sessionMgr.getCurrentSession();
- File file = new File(sessionMgr.getCurrentSessionFileName());
- insertTasksAfterCurrentTask(new CySessionWriter(writerMgr,
session, file ));
+ final CySession session = sessionMgr.getCurrentSession();
+ if(session == null)
+ throw new NullPointerException("Could not find current
session.");
+
+ final String sessionFileName =
sessionMgr.getCurrentSessionFileName();
+ if(sessionFileName == null) {
+ // Could not find session file. Save as new file.
+ insertTasksAfterCurrentTask(new
SaveSessionAsTask(writerMgr, sessionMgr));
+ } else {
+ final File file = new File(sessionFileName);
+ insertTasksAfterCurrentTask(new
CySessionWriter(writerMgr, session, file));
+ }
}
-}
+}
\ No newline at end of file
--
You received this message because you are subscribed to the Google Groups
"cytoscape-cvs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/cytoscape-cvs?hl=en.