package com.jakewharton.resourcefs;
import java.io.IOException;
import java.nio.file.FileStore;
import java.nio.file.attribute.BasicFileAttributeView;
import java.nio.file.attribute.FileAttributeView;
import java.nio.file.attribute.FileStoreAttributeView;
import static java.util.Objects.requireNonNull;
final class ResourceFileStore extends FileStore {
@Override public String name() {
return "resources";
}
@Override public String type() {
return "resourcefs";
}
@Override public boolean isReadOnly() {
return true;
}
@Override public long getTotalSpace() throws IOException {
return 0;
}
@Override public long getUsableSpace() throws IOException {
return 0;
}
@Override public long getUnallocatedSpace() throws IOException {
return 0;
}
@Override public boolean supportsFileAttributeView(Class<? extends FileAttributeView> type) {
return type == BasicFileAttributeView.class;
}
@Override public boolean supportsFileAttributeView(String name) {
return "basic".equals(name);
}
@Override public <V extends FileStoreAttributeView> V getFileStoreAttributeView(Class<V> type) {
requireNonNull(type);
return null;
}
@Override public Object getAttribute(String attribute) throws IOException {
throw new UnsupportedOperationException("Unsupported attribute: " + attribute);
}
}