MyMoneyStorageANON Class Reference

#include <mymoneystorageanon.h>

Inheritance diagram for MyMoneyStorageANON:

MyMoneyStorageXML IMyMoneyStorageFormat
Collaboration diagram for MyMoneyStorageANON:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 MyMoneyStorageANON ()
virtual ~MyMoneyStorageANON ()

Protected Member Functions

void writeUserInformation (QDomElement &userInfo)
void writeInstitution (QDomElement &institutions, const MyMoneyInstitution &i)
void writePayee (QDomElement &payees, const MyMoneyPayee &p)
void writeAccount (QDomElement &accounts, const MyMoneyAccount &p)
void writeTransaction (QDomElement &transactions, const MyMoneyTransaction &tx)
void writeSchedule (QDomElement &scheduledTx, const MyMoneySchedule &tx)
void writeBudget (QDomElement &budgets, const MyMoneyBudget &b)
void readFile (QIODevice *s, IMyMoneySerialize *storage)
void writeSecurity (QDomElement &securityElement, const MyMoneySecurity &security)
QDomElement findChildElement (const QString &name, const QDomElement &root)

Private Member Functions

QString hideString (const QString &) const
MyMoneyMoney hideNumber (const MyMoneyMoney &) const
void fakeTransaction (MyMoneyTransaction &tn)
void fakeBudget (MyMoneyBudget &bn)
void fakeKeyValuePair (MyMoneyKeyValueContainer &_kvp)

Private Attributes

MyMoneyMoney m_factor

Static Private Attributes

static QStringList zKvpNoModify
static QStringList zKvpXNumber


Detailed Description

This class provides storage of an anonymized version of the current file. Any object with an ID (account, transaction, etc) is renamed with that ID. Any other string value the user typed in is replaced with x's equal in length to the original string. Any numeric value is replaced with an arbitrary number which matches the sign of the original.

The purpose of this class is to give users a way to send a developer their file without comprimising their financial data. If a user encounters an error, they should try saving the anonymous version of the file and see if the error is still there. If so, they should notify the list of the problem, and then when requested, send the anonymous file privately to the developer who takes the problem. I still don't think it's wise to post the file to the public list...maybe I'm just paranoid.

Author:
Ace Jones <ace.j@hotpop.com>

Constructor & Destructor Documentation

MyMoneyStorageANON::MyMoneyStorageANON (  ) 

virtual MyMoneyStorageANON::~MyMoneyStorageANON (  )  [virtual]


Member Function Documentation

void MyMoneyStorageANON::writeUserInformation ( QDomElement &  userInfo  )  [protected, virtual]

Reimplemented from MyMoneyStorageXML.

void MyMoneyStorageANON::writeInstitution ( QDomElement &  institutions,
const MyMoneyInstitution i 
) [protected, virtual]

Reimplemented from MyMoneyStorageXML.

void MyMoneyStorageANON::writePayee ( QDomElement &  payees,
const MyMoneyPayee p 
) [protected, virtual]

Reimplemented from MyMoneyStorageXML.

void MyMoneyStorageANON::writeAccount ( QDomElement &  accounts,
const MyMoneyAccount p 
) [protected, virtual]

Reimplemented from MyMoneyStorageXML.

void MyMoneyStorageANON::writeTransaction ( QDomElement &  transactions,
const MyMoneyTransaction tx 
) [protected, virtual]

Reimplemented from MyMoneyStorageXML.

void MyMoneyStorageANON::writeSchedule ( QDomElement &  scheduledTx,
const MyMoneySchedule tx 
) [protected, virtual]

Reimplemented from MyMoneyStorageXML.

void MyMoneyStorageANON::writeBudget ( QDomElement &  budgets,
const MyMoneyBudget b 
) [protected, virtual]

Reimplemented from MyMoneyStorageXML.

void MyMoneyStorageANON::readFile ( QIODevice *  s,
IMyMoneySerialize storage 
) [protected, virtual]

Reimplemented from MyMoneyStorageXML.

void MyMoneyStorageANON::writeSecurity ( QDomElement &  securityElement,
const MyMoneySecurity security 
) [protected, virtual]

Reimplemented from MyMoneyStorageXML.

QDomElement MyMoneyStorageANON::findChildElement ( const QString &  name,
const QDomElement &  root 
) [protected]

Reimplemented from MyMoneyStorageXML.

QString MyMoneyStorageANON::hideString ( const QString &   )  const [private]

MyMoneyMoney MyMoneyStorageANON::hideNumber ( const MyMoneyMoney  )  const [private]

void MyMoneyStorageANON::fakeTransaction ( MyMoneyTransaction tn  )  [private]

void MyMoneyStorageANON::fakeBudget ( MyMoneyBudget bn  )  [private]

void MyMoneyStorageANON::fakeKeyValuePair ( MyMoneyKeyValueContainer _kvp  )  [private]


Member Data Documentation

QStringList MyMoneyStorageANON::zKvpNoModify [static, private]

The list of key-value pairs to not modify

QStringList MyMoneyStorageANON::zKvpXNumber [static, private]

The list of key-value pairs which are numbers to be hidden


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

Generated on Wed Jan 26 13:09:29 2011 for KMyMoney by  doxygen 1.5.6