Merge branch 'lab7-dev' into develop

This commit is contained in:
Ivan Zinchenko 2024-06-08 19:46:29 +03:00
commit 5555786417
Signed by: zinch
GPG Key ID: 6D45AA2C8FD6A37E

View File

@ -28,8 +28,8 @@ import java.util.concurrent.locks.Lock;
public class ProductCollection implements IStorage {
private static final Logger log = LoggerFactory.getLogger(ProductCollection.class);
private TreeSet<Product> productList;
private Map<Long, String> productsOwners;
private final TreeSet<Product> productList;
private final Map<Long, String> productsOwners;
private final Lock lock = new ReentrantLock();
private List<Product> fetchProducts(Connection connection) {
@ -84,6 +84,7 @@ public class ProductCollection implements IStorage {
try {
var product = DbWrapper.addProduct(productDTO, DbController.getConnection(), user);
productList.add(product);
productsOwners.put(product.getId(), user.getLogin());
return product;
} finally {
lock.unlock();
@ -107,6 +108,7 @@ public class ProductCollection implements IStorage {
var product = getProductById(id);
if (DbWrapper.removeProductById(id, DbController.getConnection(), user)) {
productList.remove(product);
productsOwners.remove(product.getId());
return product;
}
return null;