|
1 | 1 | # APIMatic JAVA Core Library Interfaces |
| 2 | + |
2 | 3 | [![Maven Central][maven-badge]][maven-url] |
3 | 4 | [![Tests][test-badge]][test-url] |
4 | 5 | [![Lint Code][lint-badge]][lint-url] |
5 | 6 | [![Maintainability][maintainability-url]][code-climate-url] |
6 | 7 | [![Licence][license-badge]][license-url] |
| 8 | + |
7 | 9 | ## Introduction |
8 | | -This project contains the abstract layer for APIMatic's core library and Apimatic's JAVA SDK. |
| 10 | + |
| 11 | +This project contains the abstract layer for APIMatic's core library and Apimatic's JAVA SDK. |
9 | 12 |
|
10 | 13 | ## Prerequisites |
| 14 | + |
11 | 15 | * The JRE flavor requires `JDK 1.8`. |
| 16 | + |
12 | 17 | ## Install the maven package |
| 18 | + |
13 | 19 | Core Interfaces's Maven group ID is `io.apimatic`, and its artifact ID is `core-interfaces`. |
14 | 20 |
|
15 | 21 | ## Interfaces |
16 | | -| Name | Description | |
17 | | -|-------------------------------------------------------------------------|--------------------------------------------------------------------| |
18 | | -| [`Context`](./src/main/java/io/apimatic/coreinterfaces/http/Context.java) | To save both Request and Response after the completion of response | |
19 | | -| [`Callback`](./src/main/java/io/apimatic/coreinterfaces/http/Callback.java) | To perform action before Request and after the completion of response | |
20 | | -| [`HttpClient`](./src/main/java/io/apimatic/coreinterfaces/http/HttpClient.java) | To provide abstraction to execute API call in HttpClient | |
21 | | -| [`HttpHeaders`](./src/main/java/io/apimatic/coreinterfaces/http/HttpHeaders.java) | To save additional information about the request and response | |
22 | | -| [`ClientConfiguration`](./src/main/java/io/apimatic/coreinterfaces/http/ClientConfiguration.java) | To hold the default configurations for HttpClient | |
23 | | -| [`Authentication`](./src/main/java/io/apimatic/coreinterfaces/authentication/Authentication.java) | To Provide abstraction for all Authentications | |
24 | | -| [`Request`](./src/main/java/io/apimatic/coreinterfaces/http/request/Request.java) | To create and manage HTTP Requests | |
25 | | -| [`Multipart`](./src/main/java/io/apimatic/coreinterfaces/http/request/Multipart.java) | To wrap byteArray and headers to be sent as part of a multipart request | |
26 | | -| [`MultipartFile`](./src/main/java/io/apimatic/coreinterfaces/http/request/MultipartFile.java) | To wrap file and headers to be sent as part of a multipart request | |
27 | | -| [`CoreEndpointConfiguration`](./src/main/java/io/apimatic/coreinterfaces/http/request/configuration/CoreEndpointConfiguration.java) | To Provide endpoint level configuration | |
28 | | -| [`Response`](./src/main/java/io/apimatic/coreinterfaces/http/response/Response.java) | To get the properties from the instance of Response | |
29 | | -| [`DynamicType`](./src/main/java/io/apimatic/coreinterfaces/http/response/DynamicType.java) | To get the properties from the instance of Dynamic Response Type | |
30 | | -| [`ApiResponseType`](./src/main/java/io/apimatic/coreinterfaces/http/response/ApiResponseType.java) | To get the properties from the instance of ApiResponseType | |
31 | | -| [`CompatibilityFactory`](./src/main/java/io/apimatic/coreinterfaces/compatibility\CompatibilityFactory.java) | Holds required converter methods to create SDK classes | |
32 | | -| [`CoreFileWrapper`](./src/main/java/io/apimatic/coreinterfaces/type/CoreFileWrapper.java) | To wrap file and contentType to be sent as part of a HTTP request. | |
33 | | -| [`HttpApiException`](./src/main/java/io/apimatic/coreinterfaces/type/HttpApiException.java) | Default interface for all the exception models in SDK | |
34 | | -| [`ApiLogger`](./src/main/java/io/apimatic/coreinterfaces/logger/ApiLogger.java) | To log the useful information or errors | |
35 | | -| [`ReadonlyLogging`](./src/main/java/io/apimatic/coreinterfaces/logger/ReadonlyLogging.java) | To hold logging configuration | |
36 | | -| [`Deserializer`](./src/main/java/io/apimatic/coreinterfaces/type/functional/Deserializer.java) | Functional interface to apply the deserialization function | |
37 | | -| [`ExceptionCreator`](./src/main/java/io/apimatic/coreinterfaces/type/functional/ExceptionCreator.java) | Functional interface to create the SDK exception | |
38 | | -| [`Serializer`](./src/main/java/io/apimatic/coreinterfaces/type/functional/Serializer.java) | Functional interface to apply the serialization function | |
39 | | -| [`ContextInitializer`](./src/main/java/io/apimatic/coreinterfaces/type/functional/ContextInitializer.java) | Functional Interface to apply the context initialization function for the response models | |
| 22 | + |
| 23 | +| Name | Description | |
| 24 | +|-------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------| |
| 25 | +| [`Context`](./src/main/java/io/apimatic/coreinterfaces/http/Context.java) | To save both Request and Response after the completion of response | |
| 26 | +| [`Callback`](./src/main/java/io/apimatic/coreinterfaces/http/Callback.java) | To perform action before Request and after the completion of response | |
| 27 | +| [`HttpClient`](./src/main/java/io/apimatic/coreinterfaces/http/HttpClient.java) | To provide abstraction to execute API call in HttpClient | |
| 28 | +| [`HttpHeaders`](./src/main/java/io/apimatic/coreinterfaces/http/HttpHeaders.java) | To save additional information about the request and response | |
| 29 | +| [`ClientConfiguration`](./src/main/java/io/apimatic/coreinterfaces/http/ClientConfiguration.java) | To hold the default configurations for HttpClient | |
| 30 | +| [`Authentication`](./src/main/java/io/apimatic/coreinterfaces/authentication/Authentication.java) | To Provide abstraction for all Authentications | |
| 31 | +| [`Request`](./src/main/java/io/apimatic/coreinterfaces/http/request/Request.java) | To create and manage HTTP Requests | |
| 32 | +| [`Multipart`](./src/main/java/io/apimatic/coreinterfaces/http/request/Multipart.java) | To wrap byteArray and headers to be sent as part of a multipart request | |
| 33 | +| [`MultipartFile`](./src/main/java/io/apimatic/coreinterfaces/http/request/MultipartFile.java) | To wrap file and headers to be sent as part of a multipart request | |
| 34 | +| [`CoreEndpointConfiguration`](./src/main/java/io/apimatic/coreinterfaces/http/request/configuration/CoreEndpointConfiguration.java) | To Provide endpoint level configuration | |
| 35 | +| [`Response`](./src/main/java/io/apimatic/coreinterfaces/http/response/Response.java) | To get the properties from the instance of Response | |
| 36 | +| [`DynamicType`](./src/main/java/io/apimatic/coreinterfaces/http/response/DynamicType.java) | To get the properties from the instance of Dynamic Response Type | |
| 37 | +| [`ApiResponseType`](./src/main/java/io/apimatic/coreinterfaces/http/response/ApiResponseType.java) | To get the properties from the instance of ApiResponseType | |
| 38 | +| [`CompatibilityFactory`](./src/main/java/io/apimatic/coreinterfaces/compatibility/CompatibilityFactory.java) | Holds required converter methods to create SDK classes | |
| 39 | +| [`CoreFileWrapper`](./src/main/java/io/apimatic/coreinterfaces/type/CoreFileWrapper.java) | To wrap file and contentType to be sent as part of a HTTP request. | |
| 40 | +| [`HttpApiException`](./src/main/java/io/apimatic/coreinterfaces/type/HttpApiException.java) | Default interface for all the exception models in SDK | |
| 41 | +| [`ApiLogger`](./src/main/java/io/apimatic/coreinterfaces/logger/ApiLogger.java) | Interface for Loggin Api Calls. | |
| 42 | +| [`Logger`](./src/main/java/io/apimatic/coreinterfaces/logger/Logger.java) | Interface for logging at different levels. | |
| 43 | +| [`LoggingConfiguration`](./src/main/java/io/apimatic/coreinterfaces/logger/configuration/LoggingConfiguration.java) | To hold logging configuration | |
| 44 | +| [`HttpLoggingConfiguration`](./src/main/java/io/apimatic/coreinterfaces/logger/configuration/HttpLoggingConfiguration.java) | To hold configuration for http logging | |
| 45 | +| [`RequestLoggingConfiguration`](./src/main/java/io/apimatic/coreinterfaces/logger/configuration/RequestLoggingConfiguration.java) | To hold Request configuration for logging | |
| 46 | +| [`ResponseLoggingConfiguration`](./src/main/java/io/apimatic/coreinterfaces/logger/configuration/ResponseLoggingConfiguration.java) | To hold Response configuration for logging | |
| 47 | +| [`Deserializer`](./src/main/java/io/apimatic/coreinterfaces/type/functional/Deserializer.java) | Functional interface to apply the deserialization function | |
| 48 | +| [`ExceptionCreator`](./src/main/java/io/apimatic/coreinterfaces/type/functional/ExceptionCreator.java) | Functional interface to create the SDK exception | |
| 49 | +| [`Serializer`](./src/main/java/io/apimatic/coreinterfaces/type/functional/Serializer.java) | Functional interface to apply the serialization function | |
| 50 | +| [`ContextInitializer`](./src/main/java/io/apimatic/coreinterfaces/type/functional/ContextInitializer.java) | Functional Interface to apply the context initialization function for the response models | |
40 | 51 |
|
41 | 52 | ## Enumerations |
42 | | -| Name | Description | |
43 | | -|-------------------------------------------------------------------------------|-----------------------------------------------------------------| |
44 | | -| [`Method`](./src/main/java/io/apimatic/coreinterfaces/http/Method.java) | Enumeration for all possible types of requests | |
45 | | -| [`HttpMethodType`](./src/main/java/io/apimatic/coreinterfaces/http/HttpMethodType.java) | HTTP methods enumeration. | |
46 | | -| [`RetryOption`](./src/main/java/io/apimatic/coreinterfaces/http/request/configuration/RetryOption.java) | Enumeration for RetryingOption of each API call | |
47 | | -| [`ArraySerializationFormat`](./src/main/java/io/apimatic/coreinterfaces/http/request/ArraySerializationFormat.java) | Enumeration for all ArraySerialization formats | |
48 | | -| [`MutliPartRequestType`](./src/main/java/io/apimatic/coreinterfaces/http/request/MutliPartRequestType.java) | Enumeration for multipart request | |
49 | | -| [`ResponseClassType`](./src/main/java/io/apimatic/coreinterfaces/http/request/ResponseClassType.java) | Enumeration for Response class type | |
50 | | -| [`HeaderLoggingPolicyLevel`](./src/main/java/io/apimatic/coreinterfaces/http/HeaderLoggingPolicyLevel.java) | Enumeration of Header Logging ploicy | |
51 | | -| [`LoggingLevel`](./src/main/java/io/apimatic/coreinterfaces/http/LoggingLevel.java) | Enumeration of all the possible Logging Level | |
52 | | -| [`LoggingLevelType`](./src/main/java/io/apimatic/coreinterfaces/http/LoggingLevelType.java) | Enumeration of Logging Level | |
| 53 | + |
| 54 | +| Name | Description | |
| 55 | +|---------------------------------------------------------------------------------------------------------------------|-------------------------------------------------| |
| 56 | +| [`Method`](./src/main/java/io/apimatic/coreinterfaces/http/Method.java) | Enumeration for all possible types of requests | |
| 57 | +| [`HttpMethodType`](./src/main/java/io/apimatic/coreinterfaces/http/HttpMethodType.java) | HTTP methods enumeration. | |
| 58 | +| [`RetryOption`](./src/main/java/io/apimatic/coreinterfaces/http/request/configuration/RetryOption.java) | Enumeration for RetryingOption of each API call | |
| 59 | +| [`ArraySerializationFormat`](./src/main/java/io/apimatic/coreinterfaces/http/request/ArraySerializationFormat.java) | Enumeration for all ArraySerialization formats | |
| 60 | +| [`MutliPartRequestType`](./src/main/java/io/apimatic/coreinterfaces/http/request/MutliPartRequestType.java) | Enumeration for multipart request | |
| 61 | +| [`ResponseClassType`](./src/main/java/io/apimatic/coreinterfaces/http/request/ResponseClassType.java) | Enumeration for Response class type | |
| 62 | +| [`HeaderLoggingPolicyLevel`](./src/main/java/io/apimatic/coreinterfaces/http/HeaderLoggingPolicyLevel.java) | Enumeration of Header Logging ploicy | |
53 | 63 |
|
54 | 64 | [license-badge]: https://img.shields.io/badge/licence-MIT-blue |
| 65 | + |
55 | 66 | [license-url]: LICENSE |
| 67 | + |
56 | 68 | [maven-badge]: https://img.shields.io/maven-central/v/io.apimatic/core-interfaces?color=green |
| 69 | + |
57 | 70 | [maven-url]: https://central.sonatype.dev/artifact/io.apimatic/core-interfaces/0.1.1 |
| 71 | + |
58 | 72 | [test-badge]: https://github.com/apimatic/core-interfaces-java/actions/workflows/build-and-test.yml/badge.svg |
| 73 | + |
59 | 74 | [test-url]: https://github.com/apimatic/core-interfaces-java/actions/workflows/build-and-test.yml |
| 75 | + |
60 | 76 | [code-climate-url]: https://codeclimate.com/github/apimatic/core-interfaces-java |
| 77 | + |
61 | 78 | [maintainability-url]: https://api.codeclimate.com/v1/badges/71332f9af318d309c3dc/maintainability |
| 79 | + |
62 | 80 | [lint-badge]: https://github.com/apimatic/core-interfaces-java/actions/workflows/linter.yml/badge.svg |
| 81 | + |
63 | 82 | [lint-url]: https://github.com/apimatic/core-interfaces-java/actions/workflows/linter.yml |
64 | 83 |
|
0 commit comments