class FileWorkspaceImpl implements FileWorkspace {

    @Override
    public void store(WorkspaceItem item, Object value) throws IOException {
        Objects.requireNonNull(value, "value");

        Index.Key key = toKey(item);
        indexer.checkId(key);

        handlers.storeValue(key.getFamily(), rootFolder, key.getId(), value);
        indexer.storeIndex(indexer.loadIndex().withItem(key, toValue(item)));
    }

    private  FileWorkspaceImpl(Path indexFile, FileFormat fileFormat, Path rootFolder, Indexer indexer, SafeHandler handlers);

}