Implemented a generic HarperDB client which can be used with any .Net core base project for integration with HarperDB
- HarperDbConfiguration: A class with properties to store the configuration details required to establish connections with HarperDB, such as the Instance URL, AuthToken, and Schema.
- HarperDbResponse: A class representing the response received from HarperDB, containing properties like StatusCode, Content, ResponseStatus, and StatusDescription.
- HarperDbRequest: A class used to generate the request object sent to HarperDB for operations like insert, update, and delete.
- IHarperClient: An interface that declares methods for various CRUD and DDL (Data Definition Language) operations supported by the custom HarperClient.
- HarperClient: The main class that handles the logic for CRUD operations with HarperDB. It uses RestSharp for HTTP requests and implements methods for creating schemas, tables, and performing CRUD operations.
- IConfigurationHandler: An interface with a method to get HarperDB configuration details from the app settings.
- ConfigurationHandler: A class that implements the IConfigurationHandler interface and provides methods to retrieve HarperDB configuration details from app settings.
- DependencyInjector: A static class containing an extension method for IServiceCollection to resolve dependencies for various repositories.
- Repositories: Classes/interfaces that handle CRUD operations for the Domain entity and DDL operations for schema and table creation.
- Controllers: API endpoints for handling schema and domain-related operations, using the corresponding repositories.
- Startup.cs: Configures dependency injection for the required repositories.