use of org.apache.crail.CrailStore in project incubator-crail by apache.
the class CrailFsck method getLocations.
public void getLocations(String filename, long offset, long length) throws Exception {
System.out.println("getLocations, filename " + filename + ", offset " + offset + ", len " + length);
CrailConfiguration conf = new CrailConfiguration();
CrailStore fs = CrailStore.newInstance(conf);
CrailBlockLocation[] locations = fs.lookup(filename).get().getBlockLocations(offset, length);
for (int i = 0; i < locations.length; i++) {
System.out.println("location " + i + " : " + locations[i].toString());
}
fs.close();
}
use of org.apache.crail.CrailStore in project incubator-crail by apache.
the class CrailFsck method blockStatistics.
public void blockStatistics(String filename) throws Exception {
HashMap<String, AtomicInteger> stats = new HashMap<String, AtomicInteger>();
CrailConfiguration conf = new CrailConfiguration();
CrailStore fs = CrailStore.newInstance(conf);
CrailNode node = fs.lookup(filename).get();
if (node.getType() == CrailNodeType.DIRECTORY) {
CrailDirectory directory = node.asDirectory();
Iterator<String> iter = directory.listEntries();
while (iter.hasNext()) {
String path = iter.next();
CrailFile child = fs.lookup(path).get().asFile();
walkBlocks(stats, fs, child.getPath(), 0, child.getCapacity());
}
} else if (node.getType() == CrailNodeType.DATAFILE) {
CrailFile file = node.asFile();
walkBlocks(stats, fs, file.getPath(), 0, file.getCapacity());
} else if (node.getType() == CrailNodeType.MULTIFILE) {
CrailMultiFile directory = node.asMultiFile();
Iterator<String> iter = directory.listEntries();
while (iter.hasNext()) {
String path = iter.next();
CrailFile child = fs.lookup(path).get().asFile();
walkBlocks(stats, fs, child.getPath(), 0, child.getCapacity());
}
}
printStats(stats);
fs.close();
}
use of org.apache.crail.CrailStore in project incubator-crail by apache.
the class CrailFsck method createDirectory.
public void createDirectory(String filename, int storageClass, int locationClass) throws Exception {
System.out.println("createDirectory, filename " + filename + ", storageClass " + storageClass + ", locationClass " + locationClass);
CrailConfiguration conf = new CrailConfiguration();
CrailStore fs = CrailStore.newInstance(conf);
fs.create(filename, CrailNodeType.DIRECTORY, CrailStorageClass.get(storageClass), CrailLocationClass.get(locationClass), true).get().syncDir();
fs.close();
}
Aggregations