Program Listing for File fileNameSanitizer.hpp

Return to documentation for file (include\db\fileNameSanitizer.hpp)

#pragma once
#include <cppcodec/base64_url_unpadded.hpp>
#include <filesystem>
#include <optional>
#include <string>
namespace fs = std::filesystem;

using SANITIZED = std::string;

using UNSANITIZED = std::string;

using DONT_SANITIZE = std::string;

using SANITIZED_ORNOT = std::string;

using cbase = cppcodec::base64_url_unpadded;

class PDJE_Name_Sanitizer {
  public:
    static std::optional<SANITIZED>
    sanitizeFileName(const std::string &fileName);

    static std::string
    getFileName(const SANITIZED &sanitized);

    PDJE_Name_Sanitizer()  = delete;
    ~PDJE_Name_Sanitizer() = delete;
};