Author: mes
Date: 2012-04-09 16:55:32 -0700 (Mon, 09 Apr 2012)
New Revision: 28775

Added:
   
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/session/CySessionWriter.java
Removed:
   
core3/api/trunk/io-api/src/main/java/org/cytoscape/io/write/CySessionWriter.java
Modified:
   
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/session/SaveSessionAsTask.java
   
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/session/SaveSessionTask.java
Log:
fixes #37 Instead of adding all other writers, I removed CySessionWriter from 
the public API.  If and when it needs to become public, we can revisit this 
decision.

Deleted: 
core3/api/trunk/io-api/src/main/java/org/cytoscape/io/write/CySessionWriter.java
===================================================================
--- 
core3/api/trunk/io-api/src/main/java/org/cytoscape/io/write/CySessionWriter.java
    2012-04-09 23:31:55 UTC (rev 28774)
+++ 
core3/api/trunk/io-api/src/main/java/org/cytoscape/io/write/CySessionWriter.java
    2012-04-09 23:55:32 UTC (rev 28775)
@@ -1,69 +0,0 @@
-package org.cytoscape.io.write;
-
-
-import org.cytoscape.session.CySession;
-import org.cytoscape.io.CyFileFilter;
-import org.cytoscape.work.TaskMonitor;
-import org.cytoscape.work.AbstractTask;
-import java.io.File;
-import java.util.List;
-
-
-/**
- * A utility Task implementation that writes a {@link 
org.cytoscape.session.CySession} to a file.
- * @CyAPI.Final.Class
- */
-public final class CySessionWriter extends AbstractTask implements CyWriter {
-       private final CySession session; 
-       private final CySessionWriterManager writerMgr; 
-       private File outputFile; 
-
-       /**
-        * Constructs this CySessionWriter.
-        * @param writerMgr The {@link 
org.cytoscape.io.write.CySessionWriterManager} contains single expected
-        * {@link org.cytoscape.io.write.CySessionWriterFactory} to use to 
write the file.
-        * @param session The {@link org.cytoscape.session.CySession} to be 
written out. 
-        * @param outputFile The file the {@link 
org.cytoscape.session.CySession} should be written to.
-        */
-       public CySessionWriter(CySessionWriterManager writerMgr, CySession 
session, File outputFile) {
-               if ( writerMgr == null )
-                       throw new NullPointerException("Writer Manager is 
null");
-               this.writerMgr = writerMgr;
-
-               if ( session == null )
-                       throw new NullPointerException("Session Manager is 
null");
-               this.session = session;
-
-               if ( outputFile == null )
-                       throw new NullPointerException("Output File is null");
-               this.outputFile = outputFile;
-       }
-
-       /**
-        * The method that will actually write the specified session to the 
specified
-        * file.
-        * @param tm The {@link org.cytoscape.work.TaskMonitor} provided by the 
TaskManager execution environment.
-        */
-       public final void run(TaskMonitor tm) throws Exception {
-               List<CyFileFilter> filters = 
writerMgr.getAvailableWriterFilters();
-               if ( filters == null || filters.size() < 1)
-                       throw new NullPointerException("No Session file filters 
found");
-               if ( filters.size() > 1 )
-                       throw new IllegalArgumentException("Found too many 
session filters!");
-
-               if (!HasFileExtension(outputFile.getName()))
-                       outputFile = new File(outputFile.getPath() + ".cys");
-
-               CyWriter writer = 
writerMgr.getWriter(session,filters.get(0),outputFile); 
-               if ( writer == null )
-                       throw new NullPointerException("No CyWriter found for 
specified file type!");
-
-               insertTasksAfterCurrentTask( writer );
-       }
-
-       private static boolean HasFileExtension(final String pathName) {
-               final int lastDotPos = pathName.lastIndexOf('.');
-               final int lastSlashPos = 
pathName.lastIndexOf(File.separatorChar);
-               return lastSlashPos < lastDotPos; // Yes, this also works if 
one or both of lastSlashPos and lastDotPos are -1!
-       }
-}

Copied: 
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/session/CySessionWriter.java
 (from rev 28772, 
core3/api/trunk/io-api/src/main/java/org/cytoscape/io/write/CySessionWriter.java)
===================================================================
--- 
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/session/CySessionWriter.java
                              (rev 0)
+++ 
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/session/CySessionWriter.java
      2012-04-09 23:55:32 UTC (rev 28775)
@@ -0,0 +1,72 @@
+package org.cytoscape.task.internal.session;
+
+
+import org.cytoscape.session.CySession;
+import org.cytoscape.io.CyFileFilter;
+import org.cytoscape.io.write.CySessionWriterFactory;
+import org.cytoscape.io.write.CySessionWriterManager;
+import org.cytoscape.io.write.CyWriter;
+import org.cytoscape.work.TaskMonitor;
+import org.cytoscape.work.AbstractTask;
+import java.io.File;
+import java.util.List;
+
+
+/**
+ * A utility Task implementation that writes a {@link 
org.cytoscape.session.CySession} to a file.
+ * @CyAPI.Final.Class
+ */
+public final class CySessionWriter extends AbstractTask implements CyWriter {
+       private final CySession session; 
+       private final CySessionWriterManager writerMgr; 
+       private File outputFile; 
+
+       /**
+        * Constructs this CySessionWriter.
+        * @param writerMgr The {@link 
org.cytoscape.io.write.CySessionWriterManager} contains single expected
+        * {@link org.cytoscape.io.write.CySessionWriterFactory} to use to 
write the file.
+        * @param session The {@link org.cytoscape.session.CySession} to be 
written out. 
+        * @param outputFile The file the {@link 
org.cytoscape.session.CySession} should be written to.
+        */
+       public CySessionWriter(CySessionWriterManager writerMgr, CySession 
session, File outputFile) {
+               if ( writerMgr == null )
+                       throw new NullPointerException("Writer Manager is 
null");
+               this.writerMgr = writerMgr;
+
+               if ( session == null )
+                       throw new NullPointerException("Session Manager is 
null");
+               this.session = session;
+
+               if ( outputFile == null )
+                       throw new NullPointerException("Output File is null");
+               this.outputFile = outputFile;
+       }
+
+       /**
+        * The method that will actually write the specified session to the 
specified
+        * file.
+        * @param tm The {@link org.cytoscape.work.TaskMonitor} provided by the 
TaskManager execution environment.
+        */
+       public final void run(TaskMonitor tm) throws Exception {
+               List<CyFileFilter> filters = 
writerMgr.getAvailableWriterFilters();
+               if ( filters == null || filters.size() < 1)
+                       throw new NullPointerException("No Session file filters 
found");
+               if ( filters.size() > 1 )
+                       throw new IllegalArgumentException("Found too many 
session filters!");
+
+               if (!HasFileExtension(outputFile.getName()))
+                       outputFile = new File(outputFile.getPath() + ".cys");
+
+               CyWriter writer = 
writerMgr.getWriter(session,filters.get(0),outputFile); 
+               if ( writer == null )
+                       throw new NullPointerException("No CyWriter found for 
specified file type!");
+
+               insertTasksAfterCurrentTask( writer );
+       }
+
+       private static boolean HasFileExtension(final String pathName) {
+               final int lastDotPos = pathName.lastIndexOf('.');
+               final int lastSlashPos = 
pathName.lastIndexOf(File.separatorChar);
+               return lastSlashPos < lastDotPos; // Yes, this also works if 
one or both of lastSlashPos and lastDotPos are -1!
+       }
+}

Modified: 
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/session/SaveSessionAsTask.java
===================================================================
--- 
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/session/SaveSessionAsTask.java
    2012-04-09 23:31:55 UTC (rev 28774)
+++ 
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/session/SaveSessionAsTask.java
    2012-04-09 23:55:32 UTC (rev 28775)
@@ -33,7 +33,6 @@
 
 import org.cytoscape.event.CyEventHelper;
 import org.cytoscape.io.util.RecentlyOpenedTracker;
-import org.cytoscape.io.write.CySessionWriter;
 import org.cytoscape.io.write.CySessionWriterManager;
 import org.cytoscape.session.CySession;
 import org.cytoscape.session.CySessionManager;

Modified: 
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/session/SaveSessionTask.java
===================================================================
--- 
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/session/SaveSessionTask.java
      2012-04-09 23:31:55 UTC (rev 28774)
+++ 
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/session/SaveSessionTask.java
      2012-04-09 23:55:32 UTC (rev 28775)
@@ -32,7 +32,6 @@
 import java.io.File;
 
 import org.cytoscape.io.util.RecentlyOpenedTracker;
-import org.cytoscape.io.write.CySessionWriter;
 import org.cytoscape.io.write.CySessionWriterManager;
 import org.cytoscape.session.CySession;
 import org.cytoscape.work.AbstractTask;

-- 
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.

Reply via email to