Formatted source
[jalview.git] / src / jalview / io / FileParse.java
1 /*\r
2 * Jalview - A Sequence Alignment Editor and Viewer\r
3 * Copyright (C) 2005 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle\r
4 *\r
5 * This program is free software; you can redistribute it and/or\r
6 * modify it under the terms of the GNU General Public License\r
7 * as published by the Free Software Foundation; either version 2\r
8 * of the License, or (at your option) any later version.\r
9 *\r
10 * This program is distributed in the hope that it will be useful,\r
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
13 * GNU General Public License for more details.\r
14 *\r
15 * You should have received a copy of the GNU General Public License\r
16 * along with this program; if not, write to the Free Software\r
17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA\r
18 */\r
19 package jalview.io;\r
20 \r
21 import java.io.*;\r
22 \r
23 import java.net.*;\r
24 \r
25 \r
26 public class FileParse {\r
27     public File inFile;\r
28     public int fileSize;\r
29     public int noLines;\r
30     protected String type;\r
31     protected BufferedReader dataIn;\r
32 \r
33     public FileParse() {\r
34     }\r
35 \r
36     public FileParse(String fileStr, String type)\r
37         throws MalformedURLException, IOException {\r
38         this.type = type;\r
39 \r
40         if (type.equals("File")) {\r
41             this.inFile = new File(fileStr);\r
42             this.fileSize = (int) inFile.length();\r
43 \r
44             dataIn = new BufferedReader(new FileReader(fileStr));\r
45         } else if (type.equals("URL")) {\r
46             URL url = new URL(fileStr);\r
47             this.fileSize = 0;\r
48             dataIn = new BufferedReader(new InputStreamReader(url.openStream()));\r
49         } else if (type.equals("Paste")) {\r
50             dataIn = new BufferedReader(new StringReader(fileStr));\r
51         }\r
52     }\r
53 \r
54     public String nextLine() throws IOException {\r
55         String next = dataIn.readLine();\r
56 \r
57         if (next != null) {\r
58             noLines++;\r
59         }\r
60 \r
61         return next;\r
62     }\r
63 }\r