Skip to content

feat - Issue 98, implementing remaining controller functionality #115

Open
springframeworkguru wants to merge 2 commits intoGreenButtonAlliance:mainfrom
springframeworkguru:98.1-controller-functionality
Open

feat - Issue 98, implementing remaining controller functionality #115
springframeworkguru wants to merge 2 commits intoGreenButtonAlliance:mainfrom
springframeworkguru:98.1-controller-functionality

Conversation

@springframeworkguru
Copy link
Copy Markdown
Contributor

This pull request introduces several enhancements and new features to the DTO export and mapping services in the Green Button Alliance codebase. The main focus is on expanding support for Atom feeds and entries for various domain entities, improving DTO mapping, and adding a new DTO for service status. The changes improve modularity, extensibility, and clarity in how domain objects are exposed as DTOs and Atom feeds.

Closes #98

Key changes include:

Atom Feed and Entry Export Enhancements

  • Added multiple new methods to the DtoExportService and its implementations (DtoExportServiceFacade and DtoExportServiceImpl) to support Atom feed and entry creation for UsagePoint, TimeConfiguration, RetailCustomer, UsageSummary, ReadingType, and ServiceStatus entities. This includes feed creation by entity lists or IDs, and entry creation by entity or ID. [1] [2] [3]

  • Introduced a new method in BaseExportService to create an Atom entry for the service status, wrapping a new ServiceStatusDto.

DTO and Mapper Improvements

  • Added a new DTO: ServiceStatusDto, representing the service status with JAXB annotations for XML serialization.

  • Extended the CustomerMapper interface to include a default method for mapping a RetailCustomerEntity to a CustomerDto, including nested mapping for organization, email, and phone details.

Repository and Service Interface Updates

  • Updated the ReadingTypeService interface to add a findAll() method for retrieving all reading types.

Dependency and Constructor Updates

  • Updated constructor and field dependencies in DtoExportServiceFacade and DtoExportServiceImpl to inject and use the new repositories and mappers required for the enhanced export and mapping functionality. [1] [2]

Import Cleanups

  • Added necessary import statements in multiple files to support the new DTOs, mappers, and repositories used in the new and updated methods. [1] [2] [3] [4] [5] [6]

References:
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14]

…hods; add corresponding tests. Update controllers to leverage `ApiRequestValidator`. Introduce new test classes for `BatchController` and `IntervalBlockController`.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Complete Get Controller Functionality

1 participant