feat: ESPI 4.0 Schema Compliance - Phase 5: IntervalBlock #71
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Phase 5 of the ESPI 4.0 schema compliance project updates IntervalBlock entity, DTO, mapper, repository, and tests to match the espi.xsd element sequence and optimize for read-only operations.
Changes Made
IntervalBlockDto
interval,intervalReadingsOffsetDateTimeimportIntervalBlockMapper
toDtomapping - removed mappings for deleted Atom fieldstoEntitymapping - marked Atom fields asignore=trueupdateEntitymethod (read-only operations only)@MappingTargetimportIntervalBlockRepository
findAllIds()- returns all interval block IDsfindAllByMeterReadingId()- indexed on meter_reading_idfindAllIdsByUsagePointId()- indexed through relationshipsdeleteByUuid()- redundant with inheriteddeleteById()findAllIdsByXpath3()- complex join without indexfindIdByXpath()- complex join without indexfindByMeterReadingEntity()- duplicate offindAllByMeterReadingId()findByUri()- non-indexed query on self_link_hrefIntervalBlockServiceImpl
findAllByMeterReading()to usefindAllByMeterReadingId()findByURI()with warning (non-indexed query removed)IntervalBlockRepositoryTest
shouldDeleteIntervalBlockByUuidtestshouldFindAllIntervalBlockIdsByXpath3shouldFindIntervalBlockIdByXpathshouldFindIntervalBlocksByMeterReadingEntityshouldFindIntervalBlockByUrishouldHandleEmptyResultsGracefullytestValidation
XML Output Validation
The DtoExportServiceImplTest confirms proper XML structure:
Related Issues
Testing Instructions
🤖 Generated with Claude Code