Accommodates the results and individual errors that occurred during the category-wise deletion of diagnostic bulk data.
AI-GENERATEDunreviewedModel: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: e28735957e77ProvenanceOpen questions (2)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original
Accommodates the results and individual errors that occurred during the category-wise deletion of diagnostic bulk data.
The structure ara::diag::SovdBulkData::DeleteByCategoryResult provides the aggregated result when deleting all bulk data of a category in the SOVD diagnostic module ([SWS_DM_01926]). It separates the results into successfully deleted entries (deleted_items) and failed instances along with the error cause (failed_items) ([SWS_DM_01842], [SWS_DM_01843]). Callers must evaluate both lists to handle partial successes deterministically.
Context
The structure ara::diag::SovdBulkData::DeleteByCategoryResult acts as a standardized result type for the method “Delete All Bulk Data Defined by Category” in the area of Service-Oriented Vehicle Diagnostics (SOVD) bulk data management ([SWS_DM_01926], AUTOSAR_AP_SWS_Diagnostics §8.53.3 “Struct: DeleteByCategoryResult”). In the AUTOSAR Adaptive diagnostic module (diag), bulk data such as log files, trace recordings, or measurement series can be assigned to semantic categories. If a diagnostic client requests the deletion of all instances of a category via the interface ara::diag::SovdBulkData, this data structure summarizes the overall status of the operation (AUTOSAR_AP_SWS_Diagnostics §8.53.3 “Definition of API class ara::diag::SovdBulkData::DeleteByCategoryResult”).
Typically, an external SOVD client or diagnostic application, the functional diagnostic interface ara::diag::SovdBulkData, and the internal persistence subsystem for bulk data act as interaction partners. The result object bridges the boundary between the synchronous or asynchronous execution unit and the evaluating client by aggregating the status of all affected data objects.
Lifecycle
According to the class definition in header #include "ara/diag/sovd_bulk_data.h", it is a passive data structure (struct) without its own complex state logic ([SWS_DM_01842], [SWS_DM_01843]). It is created on the server side by the diagnostic runtime environment immediately after completion of the category-related bulk data deletion. In doing so, the member variables deleted_items and failed_items are populated with the respective descriptors and error objects.
Since it is a pure data transfer structure, passing to the calling site in the context of the Adaptive Platform is likely to occur by value or move semantics—for example, packaged in an asynchronous result container. Question Q-bafa9fbd3ae683c1 (open) In this process, ownership is completely transferred to the caller. The destruction of the object and the deallocation of memory for the contained ara::core::Vector instances occur deterministically upon leaving the caller scope. No shared concurrency exists at the instance level; parallel deletion requests for different categories create mutually independent instances.
Usage Path
The typical usage sequence comprises initiating the deletion, execution by the diagnostic service, and separate evaluation of the resulting object by the caller:
A diagnostic client requests the removal of all associated bulk data via the method for deleting by category.
The server iterates over the instances of the specified category and executes the deletion operations.
Successfully removed entries are logged in the list deleted_items ([SWS_DM_01842]).
Failed instances are collected with their respective error cause in failed_items ([SWS_DM_01843]).
The aggregated DeleteByCategoryResult is returned to the caller ([SWS_DM_01926]), which acknowledges the successful deletions and evaluates any errors.
A central feature of bulk data deletion is the possibility of partial success. Because a category can bundle a large number of independent data records, the overall operation does not necessarily fail in the event of individual errors. For the caller, the division into two separate vectors presumably means that partial processing takes place without an atomic rollback. Question Q-35307a7eccf0afa9 (open)
Failed deletions of individual data records are conveyed via the element failed_items, which is typed as ara::core::Vector<DeletionError> ([SWS_DM_01843], AUTOSAR_AP_SWS_Diagnostics §8.53.3.1.2 “failed_items”). As a precondition for a complete success notification, callers must check whether failed_items.empty() holds true. If the list contains elements, the specific deletion error (for example, locking due to active read access or insufficient permissions) can be analyzed for each affected bulk data instance. At the same time, deleted_items reliably documents all data records that could be deleted despite the presence of individual errors ([SWS_DM_01842]).
This guide is based on the AUTOSAR Adaptive Platform R25-11 specification and was generated automatically.
UML class diagram
Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.
gemini-3.8-flash-low· 2026-10-13 · German original