Author: kono
Date: 2011-07-14 10:54:01 -0700 (Thu, 14 Jul 2011)
New Revision: 26178
Modified:
core3/swing-application-impl/trunk/src/main/java/org/cytoscape/internal/actions/RecentSessionManager.java
core3/swing-application-impl/trunk/src/main/java/org/cytoscape/internal/task/OpenRecentSessionTaskFactory.java
Log:
refs #112 Recent session reader's bug fixed.
Modified:
core3/swing-application-impl/trunk/src/main/java/org/cytoscape/internal/actions/RecentSessionManager.java
===================================================================
---
core3/swing-application-impl/trunk/src/main/java/org/cytoscape/internal/actions/RecentSessionManager.java
2011-07-14 14:50:06 UTC (rev 26177)
+++
core3/swing-application-impl/trunk/src/main/java/org/cytoscape/internal/actions/RecentSessionManager.java
2011-07-14 17:54:01 UTC (rev 26178)
@@ -32,6 +32,8 @@
public class RecentSessionManager implements SessionLoadedListener,
CytoscapeShutdownListener {
private static final Logger logger =
LoggerFactory.getLogger(RecentSessionManager.class);
+
+ private static final String MENU_CATEGORY = "File.Recent Session";
private final RecentlyOpenedTracker tracker;
private final CyServiceRegistrar registrar;
@@ -79,8 +81,9 @@
for (final URL url : urls) {
final Dictionary<String, String> dict = new
Hashtable<String, String>();
- dict.put("preferredMenu", "File.Recent");
+ dict.put("preferredMenu", MENU_CATEGORY);
dict.put("title", url.getFile());
+ dict.put("menuGravity", "6.0");
final OpenRecentSessionTaskFactory factory = new
OpenRecentSessionTaskFactory(sessionManager, readerManager, appManager,
tracker, url);
registrar.registerService(factory, TaskFactory.class,
dict);
@@ -104,8 +107,8 @@
public DummyAction(CyApplicationManager applicationManager) {
super("(No recent session files)", applicationManager);
- setPreferredMenu("File.Recent Files");
- setMenuGravity(7.0f);
+ setPreferredMenu(MENU_CATEGORY);
+ setMenuGravity(6.0f);
this.setEnabled(false);
}
Modified:
core3/swing-application-impl/trunk/src/main/java/org/cytoscape/internal/task/OpenRecentSessionTaskFactory.java
===================================================================
---
core3/swing-application-impl/trunk/src/main/java/org/cytoscape/internal/task/OpenRecentSessionTaskFactory.java
2011-07-14 14:50:06 UTC (rev 26177)
+++
core3/swing-application-impl/trunk/src/main/java/org/cytoscape/internal/task/OpenRecentSessionTaskFactory.java
2011-07-14 17:54:01 UTC (rev 26178)
@@ -16,8 +16,12 @@
import org.cytoscape.work.TaskFactory;
import org.cytoscape.work.TaskIterator;
import org.cytoscape.work.TaskMonitor;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
public class OpenRecentSessionTaskFactory implements TaskFactory {
+
+ private static final Logger logger =
LoggerFactory.getLogger(OpenRecentSessionTaskFactory.class);
private final CySessionManager sessionManager;
private final CySessionReaderManager readerManager;
@@ -48,9 +52,25 @@
if(reader == null)
throw new NullPointerException("Could not find
reader.");
- return new TaskIterator(new LoadRecentSessionTask(reader));
+ return new TaskIterator(new LoadSessionFromURLTask(reader), new
LoadRecentSessionTask(reader));
}
+
+ private final class LoadSessionFromURLTask extends AbstractTask {
+ private final CySessionReader reader;
+
+ LoadSessionFromURLTask(final CySessionReader reader) {
+ logger.debug("First, load the session file");
+ this.reader = reader;
+ }
+
+ @Override
+ public void run(TaskMonitor taskMonitor) throws Exception {
+ reader.run(taskMonitor);
+ }
+
+ }
+
private final class LoadRecentSessionTask extends AbstractTask {
private final CySessionReader reader;
@@ -61,6 +81,8 @@
@Override
public void run(TaskMonitor taskMonitor) throws Exception {
+ logger.debug("Post processiong for session...");
+
final CySession newSession = reader.getCySession();
if (newSession == null)
throw new NullPointerException("Session could
not be read for file: " + targetSession.toString());
--
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.