Vidalia 0.2.15
Public Types | Public Member Functions | Static Public Member Functions | Private Attributes
Circuit Class Reference

#include <Circuit.h>

List of all members.

Public Types

enum  Status {
  Unknown, Launched, Built, Extended,
  Failed, Closed
}

Public Member Functions

 Circuit ()
 Circuit (const CircuitId &circuit)
bool isValid () const
CircuitId id () const
Status status () const
QString statusString () const
uint length () const
QStringList routerNames () const
QStringList routerIDs () const

Static Public Member Functions

static Status toStatus (const QString &strStatus)
static bool isValidCircuitId (const CircuitId &circId)

Private Attributes

CircuitId _circId
Status _status
QStringList _names
QStringList _ids
bool _isValid

Detailed Description

Definition at line 27 of file Circuit.h.


Member Enumeration Documentation

Circuit status events

Enumerator:
Unknown 

Unknown circuit status

Launched 

Circuit ID assigned to new circuit

Built 

All hops finished

Extended 

Circuit extended by one hop

Failed 

Circuit closed (was not built)

Closed 

Circuit closed (was built)

Definition at line 33 of file Circuit.h.


Constructor & Destructor Documentation

Circuit::Circuit ( )

Default constructor.

Definition at line 24 of file Circuit.cpp.

References _isValid, _status, and Unknown.

Circuit::Circuit ( const CircuitId circuit)

Constructor.

Parses the string given in Tor control protocol format for a circuit. The format is:

CircuitID SP CircStatus [SP Path]

If the status is "LAUNCHED", the Path is empty. Server names in the path must follow Tor's VERBOSE_NAMES format.

Definition at line 38 of file Circuit.cpp.

References _circId, _ids, _isValid, _names, _status, err(), isValidCircuitId(), toStatus(), and tc::warn().


Member Function Documentation

CircuitId Circuit::id ( ) const [inline]

Returns the ID for this circuit

Definition at line 51 of file Circuit.h.

References _circId.

Referenced by NetViewer::addCircuit(), CircuitListWidget::addCircuit(), NetViewer::circuitSelected(), CircuitItem::id(), and CircuitListWidget::removeCircuit().

bool Circuit::isValid ( ) const [inline]

Returns true if this circuit is valid.

Definition at line 48 of file Circuit.h.

References _isValid.

Referenced by TorControl::getCircuits().

bool Circuit::isValidCircuitId ( const CircuitId circId) [static]

Returns true iff circId consists of only between 1 and 16 (inclusive) ASCII-encoded letters and numbers.

Definition at line 74 of file Circuit.cpp.

References i(), and length().

Referenced by Circuit(), and Stream::isValid().

uint Circuit::length ( ) const [inline]

Returns the length of the circuit's path.

Definition at line 57 of file Circuit.h.

References _ids.

Referenced by isValidCircuitId(), and CircuitItem::update().

QStringList Circuit::routerIDs ( ) const [inline]

Returns the circuit's path as an ordered list of router fingerprints.

Definition at line 61 of file Circuit.h.

References _ids.

Referenced by NetViewer::addCircuit(), NetViewer::circuitSelected(), and NetViewer::retranslateUi().

QStringList Circuit::routerNames ( ) const [inline]

Returns the circuit's path as an ordered list of router nicknames.

Definition at line 59 of file Circuit.h.

References _names.

Referenced by CircuitItem::update().

Status Circuit::status ( ) const [inline]

Returns the status of this circuit

Definition at line 53 of file Circuit.h.

References _status.

Referenced by CircuitListWidget::addCircuit(), CircuitListWidget::customContextMenuRequested(), TorControl::isCircuitEstablished(), and statusString().

QString Circuit::statusString ( ) const

Returns a string representation of the status of this circuit.

Returns a string representation of the circuit's status.

Definition at line 107 of file Circuit.cpp.

References _status, Built, Closed, Extended, Failed, Launched, and status().

Referenced by CircuitItem::update().

Circuit::Status Circuit::toStatus ( const QString &  status) [static]

Converts a string description of a circuit's status to an enum value

Converts the circuit status string to its proper enum value

Definition at line 90 of file Circuit.cpp.

References Built, Closed, Extended, Failed, Launched, and Unknown.

Referenced by Circuit().


Member Data Documentation

Circuit ID.

Definition at line 71 of file Circuit.h.

Referenced by Circuit(), and id().

QStringList Circuit::_ids [private]

IDs of the routers in the circuit.

Definition at line 74 of file Circuit.h.

Referenced by Circuit(), length(), and routerIDs().

bool Circuit::_isValid [private]

Definition at line 75 of file Circuit.h.

Referenced by Circuit(), and isValid().

QStringList Circuit::_names [private]

Nicknames of the routers in the circuit.

Definition at line 73 of file Circuit.h.

Referenced by Circuit(), and routerNames().

Circuit status.

Definition at line 72 of file Circuit.h.

Referenced by Circuit(), status(), and statusString().


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