Introduce a new HTTP file to send and retrieve ChatGPT interactions. This includes a POST request to submit prompts and a GET request to retrieve the conversation.
Implemented a new method in ChatService and ChatServiceImpl to fetch conversation history. Added a corresponding endpoint in AppController to handle GET requests for conversation dialogues based on requestId.
Introduced a `ConversationCache` for storing chat prompts and responses. Implemented a `ChatService` and `ChatServiceImpl` for processing chat prompts. Also added an `AppController` to handle HTTP requests for sending chat prompts.
Replaced generic exception handling with specific catch blocks for more explicit logging. Introduced KotlinLogging for better logging practices and added detailed error messages for different exceptions.
This change introduces GTIWrapper to handle request signing, replacing the in-controller HMAC-SHA1 computation. It simplifies the code and improves separation of concerns by delegating cryptographic operations to a dedicated service.
Extracted HMAC-SHA1 signature logic to GTIWrapper service for better code reusability and separation of concerns. Updated GTIProxyController to utilize the new GTIWrapper service, simplifying the controller logic.
This commit introduces the GTIProxyController to handle and forward GTI requests. It includes HMAC SHA1 authentication and communicates with the GTI API using RestTemplate. The controller processes POST requests with dynamic method paths and headers for authentication.