Michael Davidsaver
b3fcffb18e
avoid magic number
2017-11-16 14:56:59 -06:00
Michael Davidsaver
6f39f02f3a
more client locking violations
...
As with #72 more use of m_pendingRequest w/o locking
2017-11-16 14:56:48 -06:00
Michael Davidsaver
5bcbc0d717
Incorrect locking in client monitor
2017-11-15 20:02:25 -06:00
Michael Davidsaver
576b241faa
consolidate TransportClient and ChannelImpl as ClientChannelImpl
2017-11-06 15:51:43 -06:00
Michael Davidsaver
7118e34222
merge DataResponse into ResponseRequest
...
DataResponse is only sub-"interface"/class of ResponseRequest.
2017-11-06 15:26:05 -06:00
Michael Davidsaver
3154e3431e
consolidate SubscriptionRequest with BaseRequestImpl
...
"interface" with a single implementation.
combine and de-virtualize
2017-11-06 15:22:09 -06:00
Michael Davidsaver
1d7f15de25
combine AbstractResponseHandler and ResponseHandler
2017-11-06 14:27:46 -06:00
Michael Davidsaver
dcb74b781d
be explicit about epics::auto_ptr
2017-11-06 12:46:13 -06:00
Michael Davidsaver
49173ec884
disable pvAccessMB and unused ref-counting boilerplate
2017-11-05 16:54:10 -06:00
Michael Davidsaver
5e900b1f11
remove super abstract authNZInitialize(void*)
...
with separate client and server calls.
Still dynamic_cast ugliness as Transport and Codec
hierarchies don't have a common root.
2017-11-05 16:41:59 -06:00
Michael Davidsaver
7ca0688326
second destroy() is a no-op
2017-11-01 14:17:55 -05:00
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