Skip to content
Snippets Groups Projects
Commit 53689730 authored by Ruud Overeem's avatar Ruud Overeem
Browse files

Bug 1083:

parent 8ce56341
No related branches found
No related tags found
No related merge requests found
......@@ -91,6 +91,7 @@ public:
PVSSresult flush();
void setSubscription(bool on);
void setConfirmation(bool on);
protected:
friend class PropSetResponse;
......@@ -140,6 +141,7 @@ private:
PVSSresponse* itsOwnResponse; // callback to myself
DPanswer* itsExtResponse; // callback to client
bool itsExtSubscription; // client has subscription
bool itsExtConfirmation; // client want confirmation
// map with pointers to Property objects
typedef map<string /*propName*/, Property*> PropertyMap_t;
......@@ -154,6 +156,12 @@ inline void RTDBPropertySet::setSubscription(bool on)
itsExtSubscription = on;
}
// setConfirmation(on)
inline void RTDBPropertySet::setConfirmation(bool on)
{
itsExtConfirmation = on;
}
} // namespace RTDB
} // namespace GCF
} // namespace LOFAR
......
......@@ -52,7 +52,8 @@ RTDBPropertySet::RTDBPropertySet (const string& name,
itsService (0),
itsOwnResponse (0),
itsExtResponse (new DPanswer(clientTask)),
itsExtSubscription(false)
itsExtSubscription(false),
itsExtConfirmation(true)
{
LOG_TRACE_FLOW_STR("RTDBPropertySet(" << name << "," << type << "," << accessType << ")");
......@@ -398,7 +399,9 @@ void RTDBPropertySet::dpCreated(const string& propName, PVSSresult result)
_createAllProperties();
// Pass 'created' event to client.
itsExtResponse->dpCreated(itsScope, result);
if (itsExtConfirmation) {
itsExtResponse->dpCreated(itsScope, result);
}
}
//
......@@ -406,7 +409,9 @@ void RTDBPropertySet::dpCreated(const string& propName, PVSSresult result)
//
void RTDBPropertySet::dpDeleted (const string& propName, PVSSresult result)
{
itsExtResponse->dpDeleted(propName, result);
if (itsExtConfirmation) {
itsExtResponse->dpDeleted(propName, result);
}
}
//
......@@ -424,7 +429,9 @@ void RTDBPropertySet::dpeSubscribed (const string& propName, PVSSresult result)
//
void RTDBPropertySet::dpeSubscriptionLost (const string& propName, PVSSresult result)
{
itsExtResponse->dpeSubscriptionLost(propName, result);
if (itsExtConfirmation) {
itsExtResponse->dpeSubscriptionLost(propName, result);
}
}
//
......@@ -432,7 +439,9 @@ void RTDBPropertySet::dpeSubscriptionLost (const string& propName, PVSSresult re
//
void RTDBPropertySet::dpeUnsubscribed (const string& propName, PVSSresult result)
{
itsExtResponse->dpeUnsubscribed(propName, result);
if (itsExtConfirmation) {
itsExtResponse->dpeUnsubscribed(propName, result);
}
}
//
......@@ -440,7 +449,9 @@ void RTDBPropertySet::dpeUnsubscribed (const string& propName, PVSSresult result
//
void RTDBPropertySet::dpQuerySubscribed (uint32 queryId, PVSSresult result)
{
itsExtResponse->dpQuerySubscribed(queryId, result);
if (itsExtConfirmation) {
itsExtResponse->dpQuerySubscribed(queryId, result);
}
}
//
......@@ -453,8 +464,9 @@ void RTDBPropertySet::dpeValueSet(const string& propName, PVSSresult result)
}
// if (itsAccessType & PSAT_RD_MASK) {
if (itsExtConfirmation) {
itsExtResponse->dpeValueSet(propName, result);
// }
}
}
//
......
......@@ -427,7 +427,7 @@ GCFEvent::TResult tPropertySet::WriteDelayTest(GCFEvent& e, GCFPortInterface& /*
break;
case F_TIMER:
LOG_DEBUG_STR("First part of WriteDeleayTest " << (gTestPassed ? "was successful" : "FAILED"));
LOG_DEBUG_STR("First part of WriteDelayTest " << (gTestPassed ? "was successful" : "FAILED"));
if (gTestPassed) {
LOG_DEBUG_STR("Calling flush");
itsPropSet->flush();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment