summaryrefslogtreecommitdiff
path: root/redfish-core/lib/storage_controller.hpp
AgeCommit message (Collapse)AuthorFilesLines
2026-09-11redfish-core: Refactor StorageController lambdaYuvakumar Selvamani1-15/+20
Extract the long D-Bus GetProperty callback lambda in populateStorageController() into a named function, afterGetStorageControllerPresent(), bound via std::bind_front(), per the <10 line lambda coding standard in docs/COMMON_ERRORS.md. Tested: - No functional change. - Build successfully compiled. - Redfish Service Validator passed with no new errors or warnings introduced. Change-Id: I0c93e8b2e2381a14cc7d8a7299cd28af9e086b28 Signed-off-by: Yuvakumar Selvamani <yuvakumars@ami.com>
2026-07-01Flag long lambdasEd Tanous1-0/+1
Long lambdas have been documented as an anti-pattern for some time.[1] Despite this being generally understood, bmcweb has a long ways to go cleaning these up, and routinely code is submitted in violation of this anti-pattern. Invent an ast-grep rule that can identify when new examples of this anti-pattern are added, and ignore the existing 200+ examples that are in the codebase already using ast-grep ignore. These flags will give us something to search for as we clean this up, and will help to prevent new instances from being added unintentionally. [1] https://github.com/openbmc/docs/blob/master/anti-patterns.md#very-long-lambda-callbacks Tested: Comment only change. ast-grep passes. Manually removing an ast-grep ignore flag shows as a failure in ast-grep scan Change-Id: I77d634a393884969f184d2c39c02cc08288d5a29 Signed-off-by: Ed Tanous <etanous@nvidia.com>
2026-04-15sdbusplus: use shorter type aliasesPatrick Williams1-2/+2
The sdbusplus headers provide shortened aliases for many types. Switch to using them to provide better code clarity and shorter lines. Possible replacements are for: * bus_t * exception_t * manager_t * match_t * message_t * object_t * slot_t * object_path Change-Id: Iace20f9ad26e8d9dc234979e7a4087d599da2641 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
2026-03-25Fix routes missing trailing slashDavy Marrero1-1/+1
bmcweb's route handler generates handlers for both /foo/ and /foo when a route is registered with a trailing slash. This change adds trailing slashes to 24 routes that were missing them. Existing clients are not affected: the router already accepted both forms. This change makes the route registrations consistent and lets the trailing-slash ast-grep rule pass without suppressions. Routes using <path> captures already match everything and do not need a trailing slash, so those are excluded in the ast-grep rule. Tested: ast-grep scan --error exits 0. Change-Id: I9de641bd8ffec773b313b7e4da9034be0fd7e8e8 Signed-off-by: Davy Marrero <dmarrero@nvidia.com>
2026-01-21Use boost::urls::formatBrad Bishop1-2/+2
boost::urls::format is specifically meant for URL construction. It handles encoding like percentage encoding which std::format does not. Change-Id: I16c1467c856e36f072bd4248186b9819e40ae228 Signed-off-by: Brad Bishop <bradbish@qti.qualcomm.com>
2025-11-24redfish-core: Refactor storage.hppChristopher Meis1-0/+201
This change splits out storage controller and storage drive route setup and code into new files and unifies the call of route setup for storage, storage controller and storage drive collection and single storage controller properties. Tested: CI ran through without errors, build testing succeeded. Change-Id: I234eb034205b7e6c3a5f307172019d53d42de6e3 Signed-off-by: Christopher Meis <christopher.meis@9elements.com>