syncevolution/src/CmdlineSyncClient.h
Patrick Ohly 71fbf32c94 files and classes renamed, include statements cleaned up
The intention is to get rid of the historic and inconsistent
naming of some classes and their corresponding files:
* EvolutionSyncClient = class derived from Funambol's SyncClient,
* SyncEvolutionConfig = SyncEvolution's config

With the strict 'namespace SyncEvo' and the syncevo/ path prefix for
most header files it is no longer necessary to have "SyncEvolution" or
"Evolution" in the names. This patch thus renames as follows:
  EvolutionSyncClient => SyncContext
  EvolutionSmartPtr => SmartPtr
  SyncEvolutionCmdline => Cmdline
  SyncEvolutionConfig => SyncConfig
  SyncEvolutionUtil => util

The former EvolutionSyncClient always had a role that went beyond just
running a sync, for example it also provided config access. With the
upcoming server support it also won't be just a client. Thus the new
name "SyncContext".

The 'syncevo/' prefix is used throughout the code now.

removed whenever the prefix made it clear that the file belongs
to SyncEvolution. This helps finding incorrect include paths.

Quotes should be used exclusively for SyncEvolution files which don't
have a specific prefix yet (test.h, config.h) to help identifying
them.
2009-10-05 14:49:32 +02:00

58 lines
2 KiB
C++

/*
* Copyright (C) 2009 Intel Corporation
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) version 3.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
* 02110-1301 USA
*/
#ifndef INCL_CMDLINESYNCCLIENT
#define INCL_CMDLINESYNCCLIENT
#include <syncevo/SyncContext.h>
#include <syncevo/declarations.h>
SE_BEGIN_CXX
/**
* a command line sync client for the purpose of
* supporting a mechanism to save and retrieve password
* in keyring.
*/
class CmdlineSyncClient : public SyncContext {
public:
CmdlineSyncClient(const string &server,
bool doLogging = false,
const set<string> &sources = set<string>(),
bool useKeyring = false);
using EvolutionSyncConfig::savePassword;
/**
* These 2 functions are from ConfigUserInterface and implement it
* to use keyring to retrieve and save password in the keyring.
*/
virtual string askPassword(const string &passwordName, const string &descr, const ConfigPasswordKey &key);
virtual bool savePassword(const string &passwordName, const string &password, const ConfigPasswordKey &key);
void setKeyring(bool keyring) { m_keyring = keyring; }
bool getKeyring() const { return m_keyring; }
private:
/** a bool flag used to indicate whether to use keyring to store password */
bool m_keyring;
};
SE_END_CXX
#endif // INCL_CMDLINESYNCCLIENT