bool CInstanceConfigurableElement::sync(CParameterAccessContext& parameterAccessContext) const { if (!parameterAccessContext.getAutoSync()) { // AutoSync is disabled, do not perform the sync. // This is not an error, but the expected behavior so return true anyway. return true; } ISyncer* pSyncer = getSyncer(); if (!pSyncer) { parameterAccessContext.setError("Unable to synchronize modification. No Syncer object associated to configurable element:"); return false; } std::string strError; if (!pSyncer->sync(*parameterAccessContext.getParameterBlackboard(), false, strError)) { parameterAccessContext.setError(strError); return false; } return true; }
// Syncer set (me, ascendant or descendant ones) void CConfigurableElement::fillSyncerSet(CSyncerSet& syncerSet) const { // Try me or ascendants ISyncer* pMineOrAscendantSyncer = getSyncer(); if (pMineOrAscendantSyncer) { // Provide found syncer object syncerSet += pMineOrAscendantSyncer; // Done return; } // Fetch descendant ones fillSyncerSetFromDescendant(syncerSet); }
// Sync bool CInstanceConfigurableElement::sync(CParameterAccessContext& parameterAccessContext) const { ISyncer* pSyncer = getSyncer(); if (!pSyncer) { parameterAccessContext.setError("Unable to synchronize modification. No Syncer object associated to configurable element:"); return false; } string strError; if (!pSyncer->sync(*parameterAccessContext.getParameterBlackboard(), false, strError)) { parameterAccessContext.setError(strError); return false; } return true; }