} catch (MountException e1) {
mountClient.close();
throw new IOException(e1.getMessage());
}
ExportEntry exportEntry = null;
for (ExportEntry e : exportList) {
if (path.startsWith(e.getDirectory())) {
if (exportEntry == null) {
exportEntry = e;
} else {
if (exportEntry.getDirectory().length() < e.getDirectory().length()) {
exportEntry = e;
}
}
}
}
if (exportEntry == null) {
throw new IOException("The path " + path + " it is not exported");
}
mountDirectory = exportEntry.getDirectory();
MountResult mountResult;
try {
mountResult = mountClient.mount(mountDirectory);
} catch (MountException e) {
mountClient.close();
throw new IOException(e.getMessage());
}
byte[] tempFileHandle = mountResult.getFileHandle();
try {
String filePath = path.substring(exportEntry.getDirectory().length());
StringTokenizer tokenizer = new StringTokenizer(filePath, "/");
List<String> tokenList = new ArrayList<String>();
while (tokenizer.hasMoreElements()) {
String t = tokenizer.nextToken();
tokenList.add(t);