Michael Davidsaver
b1444b6192
client: fix monitor crash on type change
2017-09-29 15:23:14 -05:00
Michael Davidsaver
0a9797f962
detect type change bug
2017-09-28 16:48:16 -05:00
Michael Davidsaver
5137b90f56
minor client message handling
...
avoid unnecessary dynamic_cast
2017-09-06 13:49:24 -05:00
Michael Davidsaver
27ec187bd4
inetAddressUtil no more new vector
...
no more allocating vector.
2017-09-02 09:55:15 -05:00
Michael Davidsaver
98df225583
insturment with reftrack
2017-08-30 11:17:03 -05:00
Michael Davidsaver
561ea53198
Revert "avoid unnecessary temp. vector"
...
This reverts commit 623596f327 .
Turns out it is necessary as reportStatus()
can modify m_responseRequests
2017-08-16 10:34:43 +02:00
Michael Davidsaver
623596f327
avoid unnecessary temp. vector
2017-07-19 16:20:00 +02:00
Michael Davidsaver
23133e5c10
disambiguate Destroyable
...
MSVC gets confused by 'using epics::pvData'
which pulls in typedef.
2017-07-17 16:32:22 +02:00
Michael Davidsaver
39a69fc155
unnecessary include of deprecated
2017-07-17 11:27:19 +02:00
Michael Davidsaver
006224b4d1
pva client break ref loop with ChannelRequester
...
pvutils: remove ChannelRequesterImpl
2017-07-07 18:44:24 +02:00
Michael Davidsaver
05b6da623a
rename GUID -> ServerGUID
...
avoid ambigious name on windows/mingw
2017-07-04 17:57:20 +02:00
Michael Davidsaver
e2a40b1a54
pva client fix getField
2017-07-03 19:24:01 +02:00
Michael Davidsaver
c84d41396d
pva client: reverse operation -> requester strong ref
...
make this a weak ref as it is more natural
that the initiator (requester) holds
a strong ref to the operation.
2017-07-03 19:24:00 +02:00
Michael Davidsaver
83ee4522ce
remove necessary indirection
2017-07-03 19:24:00 +02:00
Michael Davidsaver
734110eba5
remove unused
2017-07-03 19:24:00 +02:00
Michael Davidsaver
63a7649693
quiet spurious warning
2017-06-27 12:59:13 +02:00
Michael Davidsaver
8a35fbb11e
reduce the number of public symbols
2017-06-26 20:17:18 +02:00
Michael Davidsaver
c8bdcb62de
quiet spurious warning
2017-06-22 13:17:22 +02:00
Michael Davidsaver
e7c6b83c43
add OVERRIDE FINAL to PVA client/server providers
2017-06-20 20:27:06 +02:00
Michael Davidsaver
dc87ee0e31
client: prevent escape of internal refs
2017-06-20 11:20:48 +02:00
Michael Davidsaver
163ab8fbd8
client context ownership
...
client Channels don't keep their provider alive
2017-06-20 11:06:18 +02:00
Michael Davidsaver
1d038fdba8
yet most client ref. loop breaking
2017-06-19 18:57:49 +02:00
Michael Davidsaver
bb31417d4c
more client ref. loop breaking
2017-06-19 16:24:11 +02:00
Michael Davidsaver
c5c6510a13
avoid log spam
2017-06-19 14:28:32 +02:00
Michael Davidsaver
cd722388dc
fix client Channel ref leak through Context search map
2017-06-19 11:30:08 +02:00
Michael Davidsaver
f610f498fa
more missing virtual dtors
2017-06-19 11:16:14 +02:00
Michael Davidsaver
33e842db2e
boilerplate reduction
2017-06-08 16:23:15 +02:00
Michael Davidsaver
8febd176bb
PVA client ref. loop breaking
...
Adjust ownership of BaseRequestImpl sub-classes.
Keep two weak_ptr<>.
one (internal) for tracking relations with Channel.
one (external) for tracking relations w/ user code, and send Q.
external wraps internal, and calls destroy() to break
ref. loops involving internal.
death to m_thisPointer!
2017-06-07 13:33:10 +02:00
Michael Davidsaver
0334483297
avoid unnecessary globals
2017-06-06 16:23:22 +02:00
Michael Davidsaver
ad2ad17fe5
drop unused
2017-06-06 15:33:49 +02:00
Michael Davidsaver
58b4a5ef64
ClientFactory::start() avoid custom ChannelProviderFactory
2017-06-06 10:41:36 +02:00
Michael Davidsaver
f8c8925b83
don't swallow exception
2017-06-06 08:18:13 +02:00
Michael Davidsaver
3fa6a4e4cc
TransportRegistry composed
...
no need for a seperate allocation and shared_ptr
2017-05-31 15:48:30 +02:00
Michael Davidsaver
ce25f0b175
ServerContext ref. loop breaking and threading
...
Drop unnecessary "worker" thread which does no work.
Ensure that returned shared_ptr is unique()==true.
Add ServerContext::create() to start a new server
with specific config and/or providers
2017-05-31 11:40:51 +02:00
Michael Davidsaver
277e5c33fb
privatize some API details
...
hide a number of APIs which should not
be public APIs.
2017-05-30 17:12:31 +02:00
Michael Davidsaver
7c2a093338
add ChannelBaseRequester::channelDisconnect()
...
per-operation notification of channel disconnect/destroy.
2017-05-25 18:01:41 -04:00
Michael Davidsaver
e80ab0464e
less hacky-ness in operation disconnect/destroy notification
...
avoid pointer/reference comparison.
2017-05-24 17:20:17 -04:00
Michael Davidsaver
b05e7699b5
remove no-op lock/unlock from Lock sub-classes
2017-05-24 17:20:17 -04:00
Michael Davidsaver
65cb1c8397
minor
2017-05-10 14:59:16 -04:00
Michael Davidsaver
065d653a14
minor
2017-05-09 18:23:45 -04:00
Andrew Johnson
12d68fe209
Add epicsExportSharedSymbols, move some includes
2016-04-06 10:59:22 -05:00
Matej Sekoranja
02656af922
"monitor reconnect of different type channel" fix
...
In addition Monitor::release method checks if structure is of the right
type.
References #40 .
2016-04-06 14:00:17 +02:00
Matej Sekoranja
2f73b206bb
destroy channel: missing 4 bytes request
2016-03-30 09:11:21 +02:00
Michael Davidsaver
15449dde6b
used aliased names for Monitor*
2016-03-18 15:01:48 -04:00
Matej Sekoranja
5279d247ca
general indent beautification
2016-03-10 23:36:16 +01:00
Matej Sekoranja
b1539df759
remote client context: context-provider relationship removed, unnecessary dangling transport creation (server on multiple NIFs)
2016-03-08 22:25:21 +01:00
Matej Sekoranja
d380e4c367
VxWorks compilation fixes
2016-03-02 15:01:14 +01:00
Matej Sekoranja
56b6279035
manual merge
2016-03-02 13:34:05 +01:00
Matej Sekoranja
0db4a9a342
udp transport initialization refactoring (deduplication)
2016-03-02 12:37:58 +01:00
Matej Sekoranja
1ca3918afa
local multicast reimplemented
2016-03-01 12:11:25 +01:00