Author: pwang
Date: 2012-05-10 17:08:00 -0700 (Thu, 10 May 2012)
New Revision: 29217

Added:
   core3/samples/trunk/sample27/
   core3/samples/trunk/sample27/pom.xml
   core3/samples/trunk/sample27/src/
   core3/samples/trunk/sample27/src/main/
   core3/samples/trunk/sample27/src/main/java/
   core3/samples/trunk/sample27/src/main/java/org/
   core3/samples/trunk/sample27/src/main/java/org/cytoscape/
   core3/samples/trunk/sample27/src/main/java/org/cytoscape/sample/
   core3/samples/trunk/sample27/src/main/java/org/cytoscape/sample/internal/
   
core3/samples/trunk/sample27/src/main/java/org/cytoscape/sample/internal/Sample27App.java
   
core3/samples/trunk/sample27/src/main/java/org/cytoscape/sample/internal/TCReader.java
   
core3/samples/trunk/sample27/src/main/java/org/cytoscape/sample/internal/TCReaderFactory.java
Log:
Original creation

Added: core3/samples/trunk/sample27/pom.xml
===================================================================
--- core3/samples/trunk/sample27/pom.xml                                (rev 0)
+++ core3/samples/trunk/sample27/pom.xml        2012-05-11 00:08:00 UTC (rev 
29217)
@@ -0,0 +1,100 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd";>
+       <modelVersion>4.0.0</modelVersion>
+ 
+       <properties>
+               <bundle.symbolicName>sample27</bundle.symbolicName>
+               
<bundle.namespace>org.cytoscape.sample.internal</bundle.namespace>              
+               
<cytoscape.api.version>3.0.0-alpha8-SNAPSHOT</cytoscape.api.version>
+               <maven-jar-plugin.version>2.3.1</maven-jar-plugin.version>
+               
<maven-surefire-plugin.version>2.7.1</maven-surefire-plugin.version>
+       </properties>
+  
+       <groupId>org.cytoscape.sample</groupId>
+       <artifactId>sample27</artifactId>
+       <packaging>jar</packaging>
+       <name>${bundle.symbolicName}</name>
+  
+       <version>3.0.0-alpha8-SNAPSHOT</version>
+       
+       <build>
+    <plugins>
+    <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-jar-plugin</artifactId>
+        <version>${maven-jar-plugin.version}</version>
+        <configuration>
+          <archive>
+            <manifestEntries>
+              
<Cytoscape-App>org.cytoscape.sample.internal.Sample27App</Cytoscape-App>
+            </manifestEntries>
+          </archive>
+        </configuration>
+      </plugin>
+    
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-surefire-plugin</artifactId>
+        <version>${maven-surefire-plugin.version}</version>
+        <configuration>
+          <redirectTestOutputToFile>true</redirectTestOutputToFile>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+  
+       <!-- Links to the Cytoscape Maven repositories. -->
+       <repositories>
+               <repository>
+                       <id>cytoscape_snapshots</id>
+                       <snapshots>
+                               <enabled>true</enabled>
+                       </snapshots>
+                       <releases>
+                               <enabled>false</enabled>
+                       </releases>
+                       <name>Cytoscape Snapshots</name>
+                       
<url>http://code.cytoscape.org/nexus/content/repositories/snapshots/</url>
+               </repository>
+               <repository>
+                       <id>cytoscape_releases</id>
+                       <snapshots>
+                               <enabled>false</enabled>
+                       </snapshots>
+                       <releases>
+                               <enabled>true</enabled>
+                       </releases>
+                       <name>Cytoscape Releases</name>
+                       
<url>http://code.cytoscape.org/nexus/content/repositories/releases/</url>
+               </repository>
+       </repositories>
+  
+    <dependencies>
+       <dependency>
+               <groupId>org.cytoscape</groupId>
+               <artifactId>plugin-api</artifactId>
+               <version>${cytoscape.api.version}</version>
+       </dependency>
+       <dependency>
+               <groupId>org.cytoscape</groupId>
+               <artifactId>core-task-api</artifactId>
+               <version>${cytoscape.api.version}</version>
+       </dependency>
+  
+               <dependency>
+               <groupId>org.cytoscape</groupId>
+               <artifactId>swing-application-api</artifactId>
+               <version>${cytoscape.api.version}</version>
+               </dependency>
+               <dependency>
+                       <groupId>org.cytoscape</groupId>
+                       <artifactId>work-swing-api</artifactId>
+                       <version>${cytoscape.api.version}</version>
+               </dependency>
+               <dependency>
+                       <groupId>org.cytoscape</groupId>
+                       <artifactId>swing-app-api</artifactId>
+                       <version>${cytoscape.api.version}</version>
+               </dependency>
+    </dependencies>
+  
+</project>

Added: 
core3/samples/trunk/sample27/src/main/java/org/cytoscape/sample/internal/Sample27App.java
===================================================================
--- 
core3/samples/trunk/sample27/src/main/java/org/cytoscape/sample/internal/Sample27App.java
                           (rev 0)
+++ 
core3/samples/trunk/sample27/src/main/java/org/cytoscape/sample/internal/Sample27App.java
   2012-05-11 00:08:00 UTC (rev 29217)
@@ -0,0 +1,41 @@
+package org.cytoscape.sample.internal;
+
+import java.util.HashSet;
+import java.util.Properties;
+import org.cytoscape.app.swing.AbstractCySwingApp;
+import org.cytoscape.app.swing.CySwingAppAdapter;
+import org.cytoscape.io.BasicCyFileFilter;
+import org.cytoscape.io.DataCategory;
+import org.cytoscape.io.read.InputStreamTaskFactory;
+import org.cytoscape.io.util.StreamUtil;
+
+/**
+ * 
+ */
+public class Sample27App extends AbstractCySwingApp {
+       
+       public Sample27App(CySwingAppAdapter swingAdapter){
+               super(swingAdapter);
+
+               //a.get
+               StreamUtil streamUtil = null;
+               
+               // Define a filter
+               HashSet<String> extensions = new HashSet<String>();
+               extensions.add("tc");
+               HashSet<String> contentTypes = new HashSet<String>();
+               contentTypes.add("txt");
+               String description = "My test filter";
+               DataCategory category = DataCategory.NETWORK;
+               BasicCyFileFilter filter = new 
BasicCyFileFilter(extensions,contentTypes, description, category, streamUtil);
+               
+               // Create an instance of the TaskFactory
+               TCReaderFactory factory = new TCReaderFactory(filter, 
swingAdapter.getCyNetworkFactory(), swingAdapter.getCyNetworkViewFactory());
+               
+               //register the ReaderFactory as an InputStreamTaskFactory.
+               Properties props = new Properties();
+               props.setProperty("readerDescription","TC file reader");
+               props.setProperty("readerId","tcNetworkReader");
+               swingAdapter.getCyServiceRegistrar().registerService(factory, 
InputStreamTaskFactory.class, props);
+       }
+}

Added: 
core3/samples/trunk/sample27/src/main/java/org/cytoscape/sample/internal/TCReader.java
===================================================================
--- 
core3/samples/trunk/sample27/src/main/java/org/cytoscape/sample/internal/TCReader.java
                              (rev 0)
+++ 
core3/samples/trunk/sample27/src/main/java/org/cytoscape/sample/internal/TCReader.java
      2012-05-11 00:08:00 UTC (rev 29217)
@@ -0,0 +1,74 @@
+package org.cytoscape.sample.internal;
+
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.StringWriter;
+import org.cytoscape.io.read.CyNetworkReader;
+import org.cytoscape.model.CyNetwork;
+import org.cytoscape.model.CyNetworkFactory;
+import org.cytoscape.model.CyNode;
+import org.cytoscape.model.CyRow;
+import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.model.CyNetworkViewFactory;
+import org.cytoscape.work.AbstractTask;
+import org.cytoscape.work.TaskMonitor;
+
+public class TCReader extends AbstractTask implements CyNetworkReader  {
+//     reads the file and creates a CyNetwork.
+       private static final int BUFFER_SIZE = 16384;
+       
+       private final InputStream stream;
+       private final CyNetworkFactory networkFactory;
+       private final CyNetworkViewFactory viewFactory;
+       private CyNetwork network;
+       
+       public TCReader(InputStream stream, CyNetworkFactory networkFactory, 
CyNetworkViewFactory viewFactory) {
+               this.stream = stream;
+               this.networkFactory = networkFactory;
+               this.viewFactory = viewFactory;
+       }
+
+
+       public void run(TaskMonitor taskMonitor) throws Exception {
+               String text = readString(stream);
+               
+               
+               network = networkFactory.createNetwork();
+               
+               
+               CyNode node = network.addNode();
+               CyRow attributes = network.getRow(node);
+               attributes.set("name", "NAMENAME");
+               
+               
+               
+               
+               
+       }
+       
+       public CyNetwork[] getNetworks() {
+               return new CyNetwork[] { network };
+       }
+
+       public CyNetworkView buildCyNetworkView(CyNetwork network) {
+               return viewFactory.createNetworkView(network);
+       }
+       
+       private static String readString(InputStream source) throws IOException 
{
+               StringWriter writer = new StringWriter();
+               BufferedReader reader = new BufferedReader(new 
InputStreamReader(source));
+               try {
+                       char[] buffer = new char[BUFFER_SIZE];
+                       int charactersRead = reader.read(buffer, 0, 
buffer.length);
+                       while (charactersRead != -1) {
+                               writer.write(buffer, 0, charactersRead);
+                               charactersRead = reader.read(buffer, 0, 
buffer.length);
+                       }
+               } finally {
+                       reader.close();
+               }
+               return writer.toString();
+       }
+}

Added: 
core3/samples/trunk/sample27/src/main/java/org/cytoscape/sample/internal/TCReaderFactory.java
===================================================================
--- 
core3/samples/trunk/sample27/src/main/java/org/cytoscape/sample/internal/TCReaderFactory.java
                               (rev 0)
+++ 
core3/samples/trunk/sample27/src/main/java/org/cytoscape/sample/internal/TCReaderFactory.java
       2012-05-11 00:08:00 UTC (rev 29217)
@@ -0,0 +1,26 @@
+package org.cytoscape.sample.internal;
+
+import java.io.InputStream;
+import org.cytoscape.io.CyFileFilter;
+import org.cytoscape.io.read.AbstractInputStreamTaskFactory;
+import org.cytoscape.model.CyNetworkFactory;
+import org.cytoscape.view.model.CyNetworkViewFactory;
+import org.cytoscape.work.TaskIterator;
+
+public class TCReaderFactory extends AbstractInputStreamTaskFactory {
+
+       
+       private CyNetworkFactory networkFactory;
+       private CyNetworkViewFactory viewFactory;
+       
+       public TCReaderFactory(CyFileFilter filter, CyNetworkFactory 
networkFactory,CyNetworkViewFactory viewFactory) {
+               super(filter);
+               this.networkFactory = networkFactory;
+               this.viewFactory = viewFactory;
+       }
+       
+       public TaskIterator createTaskIterator(InputStream stream, String 
inputName) {
+               return new TaskIterator(new TCReader(stream, 
this.networkFactory, this.viewFactory));
+       }
+}
+

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