01: /*
02: * Spoon - http://spoon.gforge.inria.fr/
03: * Copyright (C) 2006 INRIA Futurs <renaud.pawlak@inria.fr>
04: *
05: * This software is governed by the CeCILL-C License under French law and
06: * abiding by the rules of distribution of free software. You can use, modify
07: * and/or redistribute the software under the terms of the CeCILL-C license as
08: * circulated by CEA, CNRS and INRIA at http://www.cecill.info.
09: *
10: * This program is distributed in the hope that it will be useful, but WITHOUT
11: * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12: * FITNESS FOR A PARTICULAR PURPOSE. See the CeCILL-C License for more details.
13: *
14: * The fact that you are presently reading this means that you have had
15: * knowledge of the CeCILL-C license and that you accept its terms.
16: */
17:
18: package spoon.support.builder.support;
19:
20: import java.io.File;
21: import java.io.FileInputStream;
22: import java.io.FileNotFoundException;
23: import java.io.InputStream;
24:
25: import spoon.support.builder.CtFile;
26: import spoon.support.builder.CtFolder;
27: import spoon.support.builder.FileFactory;
28:
29: public class CtFileFile implements CtFile {
30:
31: File file;
32:
33: public CtFileFile(File file) {
34: super ();
35: this .file = file;
36: }
37:
38: public InputStream getContent() {
39: try {
40: return new FileInputStream(file);
41: } catch (FileNotFoundException e) {
42: e.printStackTrace();
43: }
44: return null;
45: }
46:
47: public String getName() {
48: return file.getName();
49: }
50:
51: public CtFolder getParent() {
52: try {
53: return FileFactory.createFolder(file.getParentFile());
54: } catch (FileNotFoundException e) {
55: e.printStackTrace();
56: }
57: return null;
58: }
59:
60: public boolean isFile() {
61: return true;
62: }
63:
64: public boolean isJava() {
65: return getName().endsWith(".java");
66: }
67:
68: public String getPath() {
69: return toString();
70: }
71:
72: @Override
73: public String toString() {
74: return file.toString();
75: }
76: }
|