From 2891deb47d6e805b636d02d55a60383220b6d770 Mon Sep 17 00:00:00 2001 From: whaffman Date: Mon, 6 Oct 2025 16:01:33 +0200 Subject: [PATCH] style: format code for consistency and readability in validation rules --- .../RequiredLocationBlocksRule.cpp | 16 +++++++------- .../RequiredLocationBlocksRule.hpp | 4 ++-- .../structural_rules/StructuralRules.hpp | 18 ++++++++-------- .../UniqueServerNamesRule.cpp | 21 +++++++++++-------- .../UniqueServerNamesRule.hpp | 2 +- 5 files changed, 33 insertions(+), 28 deletions(-) diff --git a/webserv/config/validation/structural_rules/RequiredLocationBlocksRule.cpp b/webserv/config/validation/structural_rules/RequiredLocationBlocksRule.cpp index 1347ac6..80a6bdb 100644 --- a/webserv/config/validation/structural_rules/RequiredLocationBlocksRule.cpp +++ b/webserv/config/validation/structural_rules/RequiredLocationBlocksRule.cpp @@ -6,8 +6,9 @@ #include RequiredLocationBlocksRule::RequiredLocationBlocksRule(size_t minimumLocations) - : AStructuralValidationRule("RequiredLocationBlocksRule", - "Ensures server has at least " + std::to_string(minimumLocations) + " location block(s)"), + : AStructuralValidationRule("RequiredLocationBlocksRule", "Ensures server has at least " + + std::to_string(minimumLocations) + + " location block(s)"), minimumLocations_(minimumLocations) { } @@ -16,16 +17,17 @@ ValidationResult RequiredLocationBlocksRule::validateServer(const ServerConfig * { Log::trace(LOCATION); - if (config == nullptr) { + if (config == nullptr) + { return ValidationResult::error("Server config is null"); } size_t locationCount = config->getLocationPaths().size(); - if (locationCount < minimumLocations_) { - return ValidationResult::error( - "Server block must have at least " + std::to_string(minimumLocations_) + - " location block(s), but found " + std::to_string(locationCount)); + if (locationCount < minimumLocations_) + { + return ValidationResult::error("Server block must have at least " + std::to_string(minimumLocations_) + + " location block(s), but found " + std::to_string(locationCount)); } return ValidationResult::success(); diff --git a/webserv/config/validation/structural_rules/RequiredLocationBlocksRule.hpp b/webserv/config/validation/structural_rules/RequiredLocationBlocksRule.hpp index 47d6203..ba1d241 100644 --- a/webserv/config/validation/structural_rules/RequiredLocationBlocksRule.hpp +++ b/webserv/config/validation/structural_rules/RequiredLocationBlocksRule.hpp @@ -8,10 +8,10 @@ class ServerConfig; class RequiredLocationBlocksRule : public AStructuralValidationRule { -private: + private: size_t minimumLocations_; -public: + public: explicit RequiredLocationBlocksRule(size_t minimumLocations = 1); ~RequiredLocationBlocksRule() override = default; diff --git a/webserv/config/validation/structural_rules/StructuralRules.hpp b/webserv/config/validation/structural_rules/StructuralRules.hpp index d789e71..0c68b0e 100644 --- a/webserv/config/validation/structural_rules/StructuralRules.hpp +++ b/webserv/config/validation/structural_rules/StructuralRules.hpp @@ -10,27 +10,27 @@ /** * Structural Validation Rules for WebServ Configuration - * + * * These rules validate the overall structure and relationships * between configuration blocks, rather than individual directive values. - * + * * Available Rules: - * + * * 1. MinimumServerBlocksRule - Ensures global config has minimum number of server blocks - * 2. RequiredLocationBlocksRule - Ensures each server has minimum number of location blocks + * 2. RequiredLocationBlocksRule - Ensures each server has minimum number of location blocks * 3. UniqueServerNamesRule - Ensures all server names are unique across configuration - * + * * Usage: - * + * * // In ValidationEngine setup * engine.addStructuralRule(std::make_unique(1)); * engine.addStructuralRule(std::make_unique(1)); * engine.addStructuralRule(std::make_unique()); - * + * * Each rule inherits from AStructuralValidationRule and can validate at: * - Global level (validateGlobal) - * - Server level (validateServer) + * - Server level (validateServer) * - Location level (validateLocation) - * + * * Rules have descriptive names and descriptions set in their constructors. */ \ No newline at end of file diff --git a/webserv/config/validation/structural_rules/UniqueServerNamesRule.cpp b/webserv/config/validation/structural_rules/UniqueServerNamesRule.cpp index a2f45e6..d161674 100644 --- a/webserv/config/validation/structural_rules/UniqueServerNamesRule.cpp +++ b/webserv/config/validation/structural_rules/UniqueServerNamesRule.cpp @@ -9,8 +9,7 @@ #include UniqueServerNamesRule::UniqueServerNamesRule() - : AStructuralValidationRule("UniqueServerNamesRule", - "Ensures all server blocks have unique server names") + : AStructuralValidationRule("UniqueServerNamesRule", "Ensures all server blocks have unique server names") { } @@ -18,27 +17,31 @@ ValidationResult UniqueServerNamesRule::validateGlobal(const GlobalConfig *confi { Log::trace(LOCATION); - if (config == nullptr) { + if (config == nullptr) + { return ValidationResult::error("Global config is null"); } std::set serverNames; auto servers = config->getServerConfigs(); - for (const auto *server : servers) { - if (server == nullptr) { + for (const auto *server : servers) + { + if (server == nullptr) + { continue; } auto serverNameOpt = server->get("server_name"); auto listenOpt = server->get("listen"); - if (serverNameOpt.has_value() && listenOpt.has_value()) { + if (serverNameOpt.has_value() && listenOpt.has_value()) + { const std::string &serverName = serverNameOpt.value(); int listenPort = listenOpt.value(); - if (serverNames.contains(serverName + ":" + std::to_string(listenPort))) { - return ValidationResult::error( - "Duplicate server name '" + serverName + "' found in configuration"); + if (serverNames.contains(serverName + ":" + std::to_string(listenPort))) + { + return ValidationResult::error("Duplicate server name '" + serverName + "' found in configuration"); } serverNames.insert(serverName + ":" + std::to_string(listenPort)); diff --git a/webserv/config/validation/structural_rules/UniqueServerNamesRule.hpp b/webserv/config/validation/structural_rules/UniqueServerNamesRule.hpp index 1ccf402..6fd90b6 100644 --- a/webserv/config/validation/structural_rules/UniqueServerNamesRule.hpp +++ b/webserv/config/validation/structural_rules/UniqueServerNamesRule.hpp @@ -6,7 +6,7 @@ class GlobalConfig; class UniqueServerNamesRule : public AStructuralValidationRule { -public: + public: UniqueServerNamesRule(); ~UniqueServerNamesRule() override = default;