InventoryAttachmentService.java
/*
* Copyright 2026 Global Crop Diversity Trust
* Licensed under the Apache License, Version 2.0
* See LICENSE file in project root folder or http://www.apache.org/licenses/LICENSE-2.0
*/
package org.gringlobal.service;
import java.nio.file.Path;
import java.util.List;
import org.gringlobal.model.AccessionInvAttach;
import org.gringlobal.model.Inventory;
import org.gringlobal.service.filter.AccessionInvAttachFilter;
/**
* @author Maxym Borodenko
*/
public interface InventoryAttachmentService extends AttachmentFilteredService<Inventory, AccessionInvAttach, InventoryAttachmentService.InventoryAttachmentRequest, AccessionInvAttachFilter> {
class InventoryAttachmentRequest extends AttachmentService.AttachmentRequest<AccessionInvAttach> {
}
/**
* Find inventory attachment by full file path
* @param inventory the inventory
* @param filePath the full path of the attachment
* @return maybe null
*/
AccessionInvAttach findAttachment(Inventory inventory, Path filePath);
/**
* Share attachment to inventories
*
* @param source the attachment to share
* @param inventories the inventories
*/
void shareAttachment(AccessionInvAttach source, List<Inventory> inventories);
}