feat: HttpClient, String&Date Utility classes, Transformer + updates to QueryBuilder and SObjectSelector #70
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
This pull request introduces updates across multiple files, focusing on enhancing utility classes for date formatting, HTTP client functionality, and query building. The changes include the addition of new methods, classes, and interfaces to improve functionality and maintainability.
Date Formatting Utilities:
src/apex/utils/classes/DateFormatUtility.cls
: AddedDateFormatUtility
class with methods for formatting and parsing dates and date-times, including custom exceptions and handling different date formats.HTTP Client Enhancements:
src/apex/utils/classes/HttpClient.cls
: IntroducedHttpClient
class implementingIHttpClient.Callout
andIHttpClient.Callback
, with nested classes for URL handling, request building, and JSON configuration parsing. This includes methods for synchronous and asynchronous HTTP callouts, and retry logic.Query Building Improvements:
src/apex/utils/classes/QueryBuilder.cls
: EnhancedQueryBuilder
class to support complex query conditions, bind variables, and improved filter handling. This includes changes to theCondition
class for better expression handling and the addition of methods for setting and retrieving bind variables. [1] [2] [3] [4] [5] [6] [7] [8] [9]SObject Selector Update:
src/apex/utils/classes/SObjectSelector.cls
: UpdatedSObjectSelector
class to includeaccessLevel
andbuilder
attributes, enhancing its configuration capabilities.