package p.packer.repositories;

import com.fasterxml.jackson.databind.ObjectMapper;
import p.packer.models.PackerDiagnostic;
import p.packer.models.PackerFileProbe;
import p.packer.models.PackerProbeResult;
import p.packer.models.PackerSoundBankRequirements;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Set;

public class PackerSoundBankWalker extends PackerAbstractBankWalker<PackerSoundBankRequirements> {
    private static final Set<String> SUPPORTED_MIME_TYPES = Set.of("audio/wav");

    public PackerSoundBankWalker(ObjectMapper mapper) {
        super(mapper);
    }

    @Override
    protected Set<String> getSupportedMimeTypes() {
        return SUPPORTED_MIME_TYPES;
    }

    @Override
    protected PackerProbeResult processFileProbe(
            final PackerFileProbe fileProbe,
            final java.nio.file.Path assetRoot,
            final PackerSoundBankRequirements requirements) {
        final List<PackerDiagnostic> diagnostics = new ArrayList<>();
        return new PackerProbeResult(fileProbe, Map.of(), diagnostics);
    }
}
