Vidalia  0.3.1
Public Member Functions | Protected Member Functions | Private Attributes | List of all members
AbstractTorSettings Class Referenceabstract

#include <AbstractTorSettings.h>

Inheritance diagram for AbstractTorSettings:
VSettings NetworkSettings ServerSettings TorSettings

Public Member Functions

 AbstractTorSettings (const QString &group, TorControl *torControl=0)
 
void setChanged (bool changed)
 
virtual bool changedSinceLastApply () const
 
virtual void revert ()
 
virtual bool apply (QString *errmsg)=0
 
- Public Member Functions inherited from VSettings
 VSettings (const QString group=QString())
 
virtual QVariant value (const QString &key, const QVariant &defaultVal=QVariant()) const
 

Protected Member Functions

virtual QVariant value (const QString &key) const
 
virtual QVariant localValue (const QString &key) const
 
virtual QVariant torValue (const QString &key) const
 
virtual void setValue (const QString &key, const QVariant &value)
 
bool isEmptyValue (const QVariant &value) const
 
TorControltorControl () const
 
- Protected Member Functions inherited from VSettings
void setDefault (const QString &key, const QVariant &val)
 
QVariant defaultValue (const QString &key) const
 
QMap< QString, QVariantallSettings () const
 

Private Attributes

TorControl_torControl
 
QMap< QString, QVariant_backupSettings
 

Additional Inherited Members

- Static Public Member Functions inherited from VSettings
static QString settingsFile ()
 
static bool settingsFileExists ()
 
static void reset ()
 

Detailed Description

Definition at line 22 of file AbstractTorSettings.h.

Constructor & Destructor Documentation

AbstractTorSettings::AbstractTorSettings ( const QString &  group,
TorControl torControl = 0 
)

Constructor. All settings will be under the heading group and torControl will be used to getconf values from Tor.

Definition at line 25 of file AbstractTorSettings.cpp.

References _backupSettings, _torControl, VSettings::allSettings(), VSettings::setDefault(), SETTING_CHANGED, and torControl().

Member Function Documentation

virtual bool AbstractTorSettings::apply ( QString *  errmsg)
pure virtual

Subclasses must implement this to setconf values to apply them to a running Tor instance.

Implemented in NetworkSettings, TorSettings, and ServerSettings.

bool AbstractTorSettings::changedSinceLastApply ( ) const
virtual

Returns true if any settings have changed since the last time apply() was called.

Definition at line 49 of file AbstractTorSettings.cpp.

References localValue(), and SETTING_CHANGED.

Referenced by AdvancedPage::changedSinceLastApply(), NetworkPage::changedSinceLastApply(), ServerPage::changedSinceLastApply(), ServerSettings::isServerEnabled(), and value().

bool AbstractTorSettings::isEmptyValue ( const QVariant value) const
protected

Returns true if the given QVariant contains an empty value, depending on the data type. For example, 0 is considered an empty integer and "" is an empty string.

Definition at line 68 of file AbstractTorSettings.cpp.

Referenced by torValue().

QVariant AbstractTorSettings::localValue ( const QString &  key) const
protectedvirtual
void AbstractTorSettings::revert ( )
virtual

Reverts all settings to their values at the last time apply() was called.

Definition at line 38 of file AbstractTorSettings.cpp.

References _backupSettings, and setValue().

Referenced by AdvancedPage::revert(), NetworkPage::revert(), and ServerPage::revert().

void AbstractTorSettings::setChanged ( bool  changed)

Sets a value indicating that the server settings have changed since apply() was last called.

Definition at line 57 of file AbstractTorSettings.cpp.

References _backupSettings, VSettings::allSettings(), SETTING_CHANGED, and VSettings::setValue().

Referenced by ConfigDialog::saveConf(), and setValue().

void AbstractTorSettings::setValue ( const QString &  key,
const QVariant value 
)
protectedvirtual

Saves the value val for the setting key to the local settings file.

Reimplemented from VSettings.

Definition at line 123 of file AbstractTorSettings.cpp.

References localValue(), setChanged(), and VSettings::setValue().

Referenced by revert(), TorSettings::setAuthenticationMethod(), TorSettings::setAutoControlPort(), ServerSettings::setBandwidthAvgRate(), ServerSettings::setBandwidthBurstRate(), TorSettings::setBootstrap(), TorSettings::setBootstrapFrom(), ServerSettings::setBridgeEnabled(), NetworkSettings::setBridgeList(), ServerSettings::setContactInfo(), TorSettings::setControlAddress(), TorSettings::setControlMethod(), TorSettings::setControlPassword(), TorSettings::setControlPort(), TorSettings::setDataDirectory(), ServerSettings::setDirectoryMirror(), ServerSettings::setDirPort(), TorSettings::setExecutable(), ServerSettings::setExitPolicy(), NetworkSettings::setFascistFirewall(), ServerSettings::setNickname(), ServerSettings::setNonExitEnabled(), ServerSettings::setORPort(), NetworkSettings::setProxyAddress(), NetworkSettings::setProxyPassword(), NetworkSettings::setProxyType(), NetworkSettings::setProxyUsername(), ServerSettings::setPublishServerDescriptor(), NetworkSettings::setReachablePorts(), TorSettings::setRejectPlaintextPorts(), ServerSettings::setServerEnabled(), TorSettings::setSocketPath(), TorSettings::setTorrc(), ServerSettings::setUpnpEnabled(), NetworkSettings::setUseBridges(), TorSettings::setUseRandomPassword(), and TorSettings::setWarnPlaintextPorts().

TorControl* AbstractTorSettings::torControl ( ) const
inlineprotected

Returns the TorControl object used for reading settings from or writing settings to Tor, if one was specified. Returns 0 if no TorControl object was given.

Definition at line 68 of file AbstractTorSettings.h.

References _torControl.

Referenced by AbstractTorSettings(), ServerSettings::apply(), TorSettings::apply(), NetworkSettings::apply(), ServerSettings::confValues(), TorSettings::getAuthenticationMethod(), TorSettings::getTorrc(), ServerSettings::isServerEnabled(), and ServerSettings::torValue().

QVariant AbstractTorSettings::torValue ( const QString &  key) const
protectedvirtual

Returns the value associated with key by querying TOr via getconf key.

Reimplemented in ServerSettings.

Definition at line 96 of file AbstractTorSettings.cpp.

References _torControl, VSettings::defaultValue(), TorControl::getConf(), isEmptyValue(), localValue(), and QVariant.

Referenced by ServerSettings::torValue(), and value().

QVariant AbstractTorSettings::value ( const QString &  key) const
protectedvirtual

Member Data Documentation

QMap<QString, QVariant> AbstractTorSettings::_backupSettings
private

Collection of settings values at the last time apply() was called.

Definition at line 75 of file AbstractTorSettings.h.

Referenced by AbstractTorSettings(), revert(), and setChanged().

TorControl* AbstractTorSettings::_torControl
private

TorControl object used for reading settings from or applying settings to Tor.

Definition at line 68 of file AbstractTorSettings.h.

Referenced by AbstractTorSettings(), torControl(), torValue(), and value().


The documentation for this class was generated from the following files: