Dennis Klein
8e6c50e7cc
refactor: Prepare deprecation of non-namespaced types and headers
2021-09-07 20:53:16 +02:00
Alexey Rybalchenko
4dbb5535c3
Add empty msg check for transport compatibility checker
2021-06-24 14:11:43 +02:00
Alexey Rybalchenko
882edbbdb8
Apply modernize-pass-by-value
2021-05-28 13:14:51 +02:00
Alexey Rybalchenko
6aeac265ec
Apply modernize-use-equals-default
2021-05-28 13:14:51 +02:00
Alexey Rybalchenko
29f45fa77d
Rename TransferResult to TransferCode
2021-01-13 12:36:32 +01:00
Alexey Rybalchenko
bb1ce794b6
Let single message methods also return int64_t
2020-11-17 14:04:20 +01:00
Alexey Rybalchenko
6699711e17
FairMQChannel: Refactor, moving short methods to header
2020-10-06 16:17:37 +02:00
Alexey Rybalchenko
cf004f69b2
FairMQChannel: replace ResetChannel() with Invalidate()
2020-10-06 16:17:37 +02:00
Alexey Rybalchenko
cfa18ccfce
FairMQChannel: remove artifacts from no longer used optimizations
2020-10-06 16:17:37 +02:00
Alexey Rybalchenko
e332e20dbd
Remove thread-safety from channel methods
2020-10-06 16:17:37 +02:00
Alexey Rybalchenko
3ab10ced7a
FairMQChannel: remove deprecated methods
2020-10-06 16:17:37 +02:00
Alexey Rybalchenko
35c7959c53
Workaround Cpp17MoveInsertable issue on xcode 12
2020-09-22 05:33:29 +02:00
Alexey Rybalchenko
6932f88c84
Adjust transfer methods behaviour when interrupted
...
A transer is attempted even if the transport has been interrupted
(with a timeout). When the timeout is reached, transfer methods will
return TransferResult::interrupted (-3).
2020-09-16 15:43:58 +02:00
Alexey Rybalchenko
5e97d85956
Cleanup includes
2020-09-08 16:56:35 +02:00
Alexey Rybalchenko
d22023bcb5
Implement bulk callbacks for unmanaged regions
2020-05-18 14:32:19 +02:00
Alexey Rybalchenko
a15d59c725
Remove nanomsg transport
2020-05-11 17:38:16 +02:00
Alexey Rybalchenko
e1a113aabe
Add region events subscriptions
2020-04-28 14:09:04 +02:00
Alexey Rybalchenko
c34d1f0946
Cleanup includes
2019-10-29 20:06:31 +01:00
Dennis Klein
0d182dc18f
fairmq: Fix -Wdefaulted-function-deleted
2019-09-04 21:17:35 +02:00
Alexey Rybalchenko
5c943bbedb
Add debug output
2019-07-11 18:58:46 +02:00
Alexey Rybalchenko
cba6d19781
Add config plugin class.
2019-07-10 19:35:18 +02:00
Alexey Rybalchenko
bf8ec968e7
Remove FairMQChannel from parser, implement bulk operations
2019-07-10 19:35:18 +02:00
Alexey Rybalchenko
fbb003b50f
FairMQChannel: defaults values, copy-ability
2019-07-10 19:35:18 +02:00
Alexey Rybalchenko
3538d9f410
Deprecate Channel::GetChannelX() in favor of Channel::GetX()
2019-07-10 19:35:18 +02:00
Alexey Rybalchenko
73ccefa4cb
Remove deprecated *Async() methods
2019-07-10 19:35:18 +02:00
Alexey Rybalchenko
0e35f1cb22
Shmem region: support huge pages via path to hugetlbfs mount
2019-07-05 15:58:28 +02:00
Alexey Rybalchenko
44a9946ea6
Allow creating region with a callback with default transport
2019-03-11 20:20:22 +01:00
Alexey Rybalchenko
ffbe90b638
Update to new DDS 2.2 API
...
- require DDS 2.2
- fix regressions in automatic port binding
- fix regression in channel API
- update DDS example readme
2018-11-28 16:55:34 +01:00
Alexey Rybalchenko
25fcf13985
Move Bind/Connect/Attach to FairMQChannel
2018-11-13 11:08:48 +01:00
Alexey Rybalchenko
3b5b2b501f
Use exceptions for fatal errors in device/channel
...
- These will be caught by StateMachine::ProcessWork
and lead to error state.
- Solve issue where device goes into ready state if
it encounters misconfigured channel in the Run.
- deprecate WaitForInitialValidation().
2018-10-31 15:26:43 +01:00
mkrzewic
d40bbfe208
Equip FairMQMessage with pointer to factory (at creation)
...
the patch seems big but most of it is just propagating the new notion of
constness of the factory - since it keeps track of created messages with
the internal allocator it no longer is const
2018-10-31 13:12:38 +01:00
Alexey Rybalchenko
0cfa9192d7
Deprecate Send-/ReceiveAsync, use timeout variant instead
2018-10-30 10:39:35 +01:00
Alexey Rybalchenko
ce4062f3a0
Remove GetSocket interface that exposes transport details
2018-10-17 13:28:50 +02:00
Alexey Rybalchenko
44acd4997d
Implement nanomsg linger in our transport
2018-10-17 13:28:50 +02:00
Alexey Rybalchenko
59b04a1a64
Handle Receive differently when switching transports
...
No need for buffer+size message on Receive.
2018-06-12 13:55:18 +02:00
Alexey Rybalchenko
653e82cab4
Avoid copy (where possible) when switching transports
2018-06-08 13:10:06 +02:00
Alexey Rybalchenko
d93dc2f7f7
Use enum transport types instead of strings in Channel/Device
2018-05-15 19:18:11 +02:00
Alexey Rybalchenko
7a4fd96b27
Fix namespaces in Transports.h and add conversion map
2018-05-15 19:18:11 +02:00
Alexey Rybalchenko
155618af57
Used cached default transport in FairMQDevice::Transport()
2018-05-15 19:18:11 +02:00
Alexey Rybalchenko
fed7601be4
replace cmd socket with transport specific unblock mechanism
2018-03-26 13:58:20 +02:00
Dennis Klein
e73fcbd595
FairMQ: Parameterize the command interface initializing with sub socket
...
! THIS PATCH BREAKS NANOMSG TRANSPORT !
The subscriber command socket was created using the transport factory of
the channel which might not implement sub sockets. This patch creates
the subscriber command sockets in the device initialization and passes
them down (move) to the command interface initialization.
This patch puts more focus on the GetSocket interface of FairMQSocket,
because all command sockets are now implemented with the default
transport - the channels use an internal poller which polls over sockets
of potentially different transports now (e.g. zeromq command socket and
nanomsg data socket). Basically, all transports need to return file
descriptors compatible to be used in a single poll set. THIS IS NOT THE CASE!
! THIS PATCH BREAKS NANOMSG TRANSPORT !
2018-03-26 13:58:20 +02:00
Dennis Klein
3670dd8835
FairMQ: Remove unused Attach method and unused socket flags
2018-03-26 13:58:20 +02:00
Dennis Klein
9b7841e89e
FairMQ: Remove deprecated TransportFactory factory method
2018-03-26 13:58:20 +02:00
Mohammad Al-Turany
b5e32403ea
correct typo in copyright section
2017-11-29 13:11:35 +01:00
Alexey Rybalchenko
01327426c3
Port DDS plugin to the new plugin system.
2017-10-05 15:32:12 +02:00
Alexey Rybalchenko
2db114bc5c
Eliminate warnings in FairLink and FairMQ Plugins.
2017-10-05 15:32:12 +02:00
Dennis Klein
3205e0c378
refactor to more idiomatic RAII
...
* FairMQTransportFactoryZMQ: move the config invariant
initialization to ctor
* FairMQChannel: add new ctor that creates usable channel
* FairMQSocket*: close sockets in dtor
* FairMQTransportFactory*: terminate context in dtor
* FairMQChannel: add Bind/Connect facades (for explicit control, e.g. timing)
2017-05-18 20:01:44 +02:00
Dennis Klein
87252edbe0
move New*Message apis to TransportFactory
...
* add facades to Device and Channel
* add Transport() getter to Device
* inline Transport() getter from Channel
2017-05-18 20:01:44 +02:00
Dennis Klein
f522dc1717
add FairMQParts Send/Receive apis
2017-05-18 20:01:44 +02:00
Dennis Klein
3cb80de773
add channel name setter
2017-05-18 20:01:44 +02:00