kpilot/lib
SyncAction::SyncMode Class Reference
#include <syncAction.h>
Detailed Description
This class encapsulates the different sync modes that can be used, and enforces a little discipline in changing the mode and messing around in general.It replaces a simple enum by not much more, but it makes things like local test backups less likely to happen.
Note that this could all be packed into a bitfield (5 bits needed) but that makes for messy code in the end.
Definition at line 144 of file syncAction.h.
Public Types | |
eFastSync = 1 | |
eHotSync = 2 | |
eFullSync = 3 | |
eCopyPCToHH = 4 | |
eCopyHHToPC = 5 | |
eBackup = 6 | |
eRestore = 7 | |
enum | Mode { eFastSync = 1, eHotSync = 2, eFullSync = 3, eCopyPCToHH = 4, eCopyHHToPC = 5, eBackup = 6, eRestore = 7 } |
Public Member Functions | |
SyncMode (Mode m, bool test=false, bool local=false) | |
SyncMode (const QStringList &l) | |
Mode | mode () const |
bool | setMode (int) |
bool | setMode (Mode m) |
bool | setOptions (bool test, bool local) |
bool | operator== (const Mode &m) const |
bool | operator== (const SyncMode &m) const |
bool | isTest () const |
bool | isLocal () const |
bool | isFullSync () const |
bool | isFirstSync () const |
bool | isSync () const |
bool | isCopy () const |
QString | name () const |
QStringList | list () const |
Static Public Member Functions | |
static QString | name (Mode) |
Member Enumeration Documentation
Constructor & Destructor Documentation
SyncAction::SyncMode::SyncMode | ( | Mode | m, | |
bool | test = false , |
|||
bool | local = false | |||
) |
Create a mode with the given Mode m
and the mix-ins test
and local
, which determine whether the sync should actually change anything at all (test mode) and whether the HH is to be simulated by local databases.
Definition at line 169 of file syncAction.cc.
SyncAction::SyncMode::SyncMode | ( | const QStringList & | l | ) |
Create a mode by parsing the string list.
This is used mostly by the conduit proxies, which use a string list to pass aparameters to the shared library loader.
Definition at line 146 of file syncAction.cc.
Member Function Documentation
bool SyncAction::SyncMode::isCopy | ( | ) | const [inline] |
Classify every mode as either a sync (two-way) or copy (one-way) mode.
Definition at line 235 of file syncAction.h.
bool SyncAction::SyncMode::isLocal | ( | ) | const [inline] |
Accessor for the local part of the mode.
Local syncs use a local database instead of one on the device link.
Definition at line 212 of file syncAction.h.
bool SyncAction::SyncMode::isSync | ( | ) | const [inline] |
Classify every mode as either a sync (two-way) or copy (one-way) mode.
Definition at line 227 of file syncAction.h.
bool SyncAction::SyncMode::isTest | ( | ) | const [inline] |
Accessor for the test part of the mode.
Test syncs should never actually modify data anywhere.
Definition at line 207 of file syncAction.h.
QStringList SyncAction::SyncMode::list | ( | ) | const |
Returns a QStringList that, when passed to the constructor of SyncMode, will re-create it.
Used to pass modes into shared library factories.
Definition at line 182 of file syncAction.cc.
Mode SyncAction::SyncMode::mode | ( | ) | const [inline] |
Returns the kind of sync; this is just incomplete information, since a test hot sync is very different from a non-test one.
Definition at line 176 of file syncAction.h.
QString SyncAction::SyncMode::name | ( | ) | const |
Returns a (human readable) name for this particular mode, including extra information about test and local mode.
Definition at line 224 of file syncAction.cc.
QString SyncAction::SyncMode::name | ( | Mode | ) | [static] |
bool SyncAction::SyncMode::operator== | ( | const Mode & | m | ) | const [inline] |
Shorthand to test for a specific mode enum.
This disregards the mixings local and test.
Definition at line 196 of file syncAction.h.
bool SyncAction::SyncMode::setMode | ( | Mode | m | ) |
Sets a mode from a mode
, if possible.
This leaves the options unchanged, so as to reward properly-typed programming.
Definition at line 257 of file syncAction.cc.
bool SyncAction::SyncMode::setMode | ( | int | ) |
Sets a mode from an integer mode
, if possible.
If the mode
is illegal, return false and set the mode to Fast Sync. As a side effect, options test and local are reset to false.
Definition at line 239 of file syncAction.cc.
bool SyncAction::SyncMode::setOptions | ( | bool | test, | |
bool | local | |||
) | [inline] |
Sets options.
Returns false if the combination of mode and the options is impossible.
Definition at line 191 of file syncAction.h.
The documentation for this class was generated from the following files: