package org.netbeans.gradle.project.model;
import java.io.IOException;
import java.nio.file.Path;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
public final class MemPersistentModelStore<T> implements PersistentModelStore<T> {
private final Map<Path, T> models;
public MemPersistentModelStore() {
this.models = new ConcurrentHashMap<>();
}
public Map<Path, T> getSavedModels() {
return new HashMap<>(models);
}
@Override
public void persistModel(T model, Path dest) throws IOException {
models.put(dest, model);
}
@Override
public T tryLoadModel(Path src) throws IOException {
return models.get(src);
}
}