1 package fr.in2p3.jsaga.adaptor.data;
2
3 import fr.in2p3.jsaga.adaptor.data.permission.PermissionBytes;
4 import fr.in2p3.jsaga.adaptor.data.read.FileAttributes;
5 import fr.in2p3.jsaga.adaptor.schema.data.emulator.*;
6
7
8
9
10
11
12
13
14
15
16
17
18
19 public class EmulatorFileAttributes extends FileAttributes {
20 private EntryType m_entry;
21
22 public EmulatorFileAttributes(EntryType entry) {
23 m_entry = entry;
24 }
25
26 public String getName() {
27 return m_entry.getName();
28 }
29
30 public int getType() {
31 if (m_entry instanceof DirectoryType) {
32 return TYPE_DIRECTORY;
33 } else if (m_entry instanceof FileType) {
34 FileType file = (FileType) m_entry;
35 if (file.getLink() != null) {
36 return TYPE_LINK;
37 } else {
38 return TYPE_FILE;
39 }
40 } else {
41 return TYPE_UNKNOWN;
42 }
43 }
44
45 public long getSize() {
46 if (m_entry instanceof FileType) {
47 FileType file = (FileType) m_entry;
48 return (file.getContent()!=null ? file.getContent().length() : 0);
49 } else {
50 return SIZE_UNKNOWN;
51 }
52 }
53
54 public PermissionBytes getUserPermission() {
55 return PERMISSION_UNKNOWN;
56 }
57
58 public PermissionBytes getGroupPermission() {
59 return PERMISSION_UNKNOWN;
60 }
61
62 public PermissionBytes getAnyPermission() {
63 return PERMISSION_UNKNOWN;
64 }
65
66 public String getOwner() {
67 return ID_UNKNOWN;
68 }
69
70 public String getGroup() {
71 return ID_UNKNOWN;
72 }
73
74 public long getLastModified() {
75 return DATE_UNKNOWN;
76 }
77 }