@startuml namespace gemini { Configuration ..> "produces" Information Network ..> "uses" TaskRequest Network ..> "uses" Information TaskRequest ..> "uses" Information TaskRequest ..> "uses" CacheFiles class TaskRequest { - request: string } class Network { - context: io_context - ssl: ssl::stream + Network() + Network(&&) + operator=(&&) } class Configuration { + filename: const string + Configuration(string filename) + create_infos(): Information } class Information { + enable_cache: const bool + cache_size: const int + ssl_pem_path: const path + ssl_cert_path: const path } class CacheFiles { - files: unordered_set - content: unordered_map + CacheFiles() + get_files(): files + get_content(): content } } @enduml