kpilot/lib

SyncAction::SyncMode Class Reference

#include <syncAction.h>

List of all members.


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

Available modes for the sync.

Definition at line 148 of file syncAction.h.


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]

Returns a standard name for each of the sync modes.

Definition at line 209 of file syncAction.cc.

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:
KDE Home | KDE Accessibility Home | Description of Access Keys