DEVOPS-514/Added configuration files in the project
Package Structure & Organization
- Migrated from mc_intra.demo to standardized com.marketingconfort.mcIntraDocumentation package structure
- Reorganized DTOs, controllers, services, and repositories under the new hierarchy
- Renamed main application class to McIntraDocumentationApplication
Configuration Management Environment-Specific Settings:
- application-local.yml
- application-pro.yml
- application-rec.yml
Caching: Environment-specific EhCache configurations (local-ehcache.xml, pro-ehcache.xml, rec-ehcache.xml) AWS Integration: S3 bucket policy definitions in bucketPolicy.json Build & Deployment:
- Maven build settings in scripts/settings.xml
- Updated Dockerfile for containerization
- Enhanced pom.xml with required dependencies
Data Transfer Objects (DTOs)
-
Converted DTOs to Java Records for immutability and improved performance Added standardized response DTOs:
-
CommentResponse — Comment data structure
-
CommentReplyResponse — Nested reply handling
Enhanced type safety with record-based architecture
Error Handling
- Replaced custom exceptions with FunctionalException from starter framework
- Removed deprecated exception classes (GlobalExceptionHandler, S3FileReadException, S3PresignedUrlGenerationException)
- Standardized error handling across all controllers and services
Entity & Identifier Updates
- Migrated all entity IDs from Long to String for UUID consistency
- Updated DTOs, entities, and method signatures to use String-based identifiers
- Improved type safety throughout the application
Service Layer Architecture
-
Added proper service layer separation with Implementation packages Introduced configuration classes:
-
AppConfig — Application-wide settings
-
JwtDecoderConfig — JWT token handling
-
ModelMapperConfig — Object mapping
-
SecurityConfiguration — Security settings
Centralized configuration values in constants package
Repository Layer
- Updated repository interfaces for String-based UUIDs
- Enhanced query methods for better performance
- Improved entity relationship mappings
Code Quality Improvements
- Removed deprecated model classes in favor of common library entities
- Reduced code redundancy and improved maintainability
- Added Jakarta Validation API annotations
- Enhanced documentation and code structure