v1.2.0
·
895 commits
to master
since this release
v1.2.0 (04/02/2020)
Common
- Added a protected read-only cache. For details, see
olp::cache::CacheSettings. - Added a protected read-only cache usage example.
- Added ARM platform support for Embedded Linux with GCC 5.4 (32/64 bit).
- Added the
ErrorCodeToStringfunction to olp/core/http/NetworkTypes.h. - Improved the
olp::http::NetworkCurllogging. - Changed the
IsNullfunction in theolp::client::HRNclass to handle realms according to platform changes. - Added the bool operator to the
olp::client::HRNclass. You can now use the operator to check whether all the service type fields in theolp::client::HRNclass are not empty. - Fixed a possible data race in the
olp::client::Conditionclass. - Added the
MoveResultmethod to theolp::client::ApiResponseclass. The method returns an rvalue reference to the result. - CMake now requires RapidJSON v1.1.0.
- Various CMake cleanups.
- Improved error handling in Android
HttpClient. - Fixed the linking error when SDK was statically linked inside a shared library with
CMAKE_POSITION_INDEPENDENT_CODE=ON. - The retry policy now handles server errors automatically.
olp-cpp-sdk-authentication
- Added a possibility to parse credentials from a file or stream in
olp::authentication::AuthenticationCredentials. Now, to get credentials for theAuthenticationCredentialsclass, you can use the credentials.properties file that is provided by the platform. - Deprecated the
olp::authentication::TokenEndpointclass. It will be removed by 04.2020. - Deprecated the
olp::authentication::TokenRequestclass. It will be removed by 04.2020. - Deprecated various methods in
olp::authentication::AuthenticationClient. - Authentication now gets the current timestamp from the platform and uses it to request the OAuth2 token that prevents replay attacks. As a fallback, the system time is used.
olp-cpp-sdk-dataservice-read
- The
olp::dataservice::read::QueryApi,olp::dataservice::read::MetadataApi,olp::dataservice::read::LookupApi, andolp::dataservice::read::BlobApiclasses are now blocking and use the new synchronousCallApimethod inOlpClient. - The
GetDatamethod of the versioned and volatile layer now triggers theolp::client::ErrorCode::PreconditionFailederror if both a partition ID and data handle are passed in the data request. - Work-in-progress: Added reading support for streamed data using the new
olp::dataservice::read::StreamLayerClient. Currently, you can only subscribe, unsubscribe, and get data from a stream layer message.
olp-cpp-sdk-dataservice-write
- Enhanced
olp::dataservice::write::StreamLayerClientto useolp::thread::TaskSchedulerfor asynchronous operations instead of network threads. - Removed the unused
olp::dataservice::write::ThreadSafeQueueclass. - Deprecated the
CancelAllmethods in all layers. Use theCancelPendingRequestsmethods instead.