#
70b63f18 |
|
11-Sep-2021 |
Niels Sascha Reedijk <niels.reedijk@gmail.com> |
netservices: remove all old conditional code Change-Id: Idf3773c081ce103647c5dbea6e82c22bfc5606c9
|
#
78b14420 |
|
24-Jul-2020 |
Leorize <leorize+oss@disroot.org> |
libbnetapi: BUrlRequest now outputs to BDataIO Previously, BUrlRequest returns data received via a callback that can't return any value. This approach have several issues: - It's not possible to signify failures to the request. - Users have to implement custom listeners just to handle the common case of outputting to a buffer/file/etc. - The received data has to be serialized into BMessage when BUrlProtocolDispatchingListener is employed. This can cause a noticible slowdown in real-world scenarios as evident by #10748. With this change, BUrlRequest will output directly into a BDataIO, which exposes a richer API for request handlers to work with (for example a BitTorrent client can request a BPositionIO for non-linear data delivery), as well as simplifying common cases for users. The adaptation only requires one additional API: BHttpRequest::SetStopOnError(). This API simply instructs the HTTP request handler to cancel the request if an HTTP error is occurred. Change-Id: I4160884d77bff0e7678e0a623e2587987704443a Reviewed-on: https://review.haiku-os.org/c/haiku/+/3084 Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
|
#
3e27f8d5 |
|
17-Jul-2020 |
Leorize <leorize+oss@disroot.org> |
libbnetservices: BUrlResult is no longer a BArchivable The switch to make BUrlResult serializable was debuted in f9e1854f198d4200f21a9cbe29fdfb0fabbe192f with the rationale is that BHttpRequest auto-redirection might cause the headers to become obsolete by the time a client process the BMessage received from BUrlProtocolDispatchingListener. With the change to BHttpRequest to not notify listeners when auto-redirection is enabled, this is no longer the case and the serialization code can go away now. This simplifies BUrlResult and its subclasses, and gain us some performance for clients using BUrlProtocolDispatchingListener as the result object no longer has to be serialized. This also change the ABI of BUrlProtocolListener::HeadersReceived to no longer passing a BUrlResult. Additionally, BUrlResult and BHttpResult now express the size of the content as an off_t, thus allowing results larger than 4 GB. Change-Id: I9dd29a8b26fdd9aa8e5bbad8d1728084f136312d Reviewed-on: https://review.haiku-os.org/c/haiku/+/3082 Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
|
#
ce64ffdb |
|
22-Jan-2021 |
Niels Sascha Reedijk <niels.reedijk@gmail.com> |
libnetservices.a: Put the experimental API into BPrivate::Network namespace In order to prevent classes between libnetapi.so with the legacy API and applications using the libnetservices.a library, the latter will have the classes in a distinct namespace. In the implementation, both libbnetapi.so and libnetservices.a will use the same header and source files. If LIBNETAPI_DEPRECATED is defined during build, the headers and source will have binary compatible behavior. Otherwise, the classes and other objects will be put in the HaikuExt namespace. In order to build the libbnetapi.so and libnetservices.a with the proper build configuration, there is a stub `src/kits/net/libnetapi_deprecated` folder that applies the special configuration to the source files. Currently HaikuDepot, Webpositive, libshared.a and the http_streamer add on use the compatible API in libbnetapi.so. Change-Id: Ic73e9f271ef75749adda46f6f72e9a0b2851b461 Reviewed-on: https://review.haiku-os.org/c/haiku/+/3667 Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
|
#
35d8d4d1 |
|
19-Jan-2021 |
Niels Sascha Reedijk <niels.reedijk@gmail.com> |
libnetapi.so: move deprecated classes out into a libnetservices directory These classes have been moved to the public API too soon, and they need some more time to mature before they can be declared stable. In this first step the classes that are involved, are moved to a separate folder. They will still be linked to libnetapi.so, so that binaries that depend on them currently will not break. Change-Id: I6c16f17573d819314a27936f065ebe675846f763 Reviewed-on: https://review.haiku-os.org/c/haiku/+/3664 Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
|