
// Auto-generated file -- do not edit

#include "Box.h"
#include "autogen_BackupStoreException.h"

#include "MemLeakFindOn.h"

#ifdef EXCEPTION_CODENAMES_EXTENDED
	#ifdef EXCEPTION_CODENAMES_EXTENDED_WITH_DESCRIPTION
static const char *whats[] = {
	"BackupStore Internal",
	"BackupStore BadAccountDatabaseFile",
	"BackupStore AccountDatabaseNoSuchEntry",
	"BackupStore InvalidBackupStoreFilename",
	"BackupStore UnknownFilenameEncoding",
	"BackupStore CouldntReadEntireStructureFromStream",
	"BackupStore BadDirectoryFormat",
	"BackupStore CouldNotFindEntryInDirectory",
	"BackupStore OutputFileAlreadyExists",
	"BackupStore OSFileError",
	"BackupStore StreamDoesntHaveRequiredFeatures",
	"BackupStore BadBackupStoreFile",
	"BackupStore CouldNotLoadStoreInfo",
	"BackupStore BadStoreInfoOnLoad",
	"BackupStore StoreInfoIsReadOnly",
	"BackupStore StoreInfoDirNotInList",
	"BackupStore StoreInfoBlockDeltaMakesValueNegative",
	"BackupStore DirectoryHasBeenDeleted",
	"BackupStore StoreInfoNotInitialised",
	"BackupStore StoreInfoAlreadyLoaded",
	"BackupStore StoreInfoNotLoaded",
	"BackupStore ReadFileFromStreamTimedOut",
	"BackupStore FileWrongSizeAfterBeingStored",
	"BackupStore AddedFileDoesNotVerify",
	"BackupStore StoreInfoForWrongAccount",
	"BackupStore ContextIsReadOnly",
	"BackupStore AttributesNotLoaded",
	"BackupStore AttributesNotUnderstood",
	"BackupStore WrongServerVersion",
	"BackupStore ClientMarkerNotAsExpected (Another process logged into the store and modified it while this process was running. Check you're not running two or more clients on the same account.)",
	"BackupStore NameAlreadyExistsInDirectory",
	"BackupStore BerkelyDBFailure",
	"BackupStore InodeMapIsReadOnly",
	"BackupStore InodeMapNotOpen",
	"BackupStore FilenameEncryptionKeyNotKnown",
	"BackupStore FilenameEncryptionNoKeyForSpecifiedMethod",
	"BackupStore FilenameEncryptionNotSetup",
	"BackupStore CouldntLoadClientKeyMaterial",
	"BackupStore BadEncryptedAttributes",
	"BackupStore EncryptedAttributesHaveUnknownEncoding",
	"BackupStore OutputSizeTooSmallForChunk",
	"BackupStore BadEncodedChunk",
	"BackupStore NotEnoughSpaceToDecodeChunk",
	"BackupStore ChunkHasUnknownEncoding",
	"BackupStore ChunkContainsBadCompressedData",
	"BackupStore CantWriteToEncodedFileStream",
	"BackupStore Temp_FileEncodeStreamDidntReadBuffer",
	"BackupStore CantWriteToDecodedFileStream",
	"BackupStore WhenDecodingExpectedToReadButCouldnt",
	"BackupStore BackupStoreFileFailedIntegrityCheck",
	"BackupStore ThereIsNoDataInASymLink",
	"BackupStore IVLengthForEncodedBlockSizeDoesntMeetLengthRequirements",
	"BackupStore BlockEntryEncodingDidntGiveExpectedLength",
	"BackupStore CouldNotFindUnusedIDDuringAllocation",
	"BackupStore AddedFileExceedsStorageLimit",
	"BackupStore CannotDiffAnIncompleteStoreFile",
	"BackupStore CannotDecodeDiffedFilesWithoutCombining",
	"BackupStore FailedToReadBlockOnCombine",
	"BackupStore OnCombineFromFileIsIncomplete",
	"BackupStore BadNotifySysadminEventCode",
	"BackupStore InternalAlgorithmErrorCheckIDNotMonotonicallyIncreasing",
	"BackupStore CouldNotLockStoreAccount (Another process is accessing this account -- is a client connected to the server?)",
	"BackupStore AttributeHashSecretNotSet",
	"BackupStore AEScipherNotSupportedByInstalledOpenSSL (The system needs to be compiled with support for OpenSSL 0.9.7 or later to be able to decode files encrypted with AES)",
	"BackupStore SignalReceived (A signal was received by the process, restart or terminate needed. Exception thrown to abort connection.)",
	"BackupStore IncompatibleFromAndDiffFiles (Attempt to use a diff and a from file together, when they're not related)",
	"BackupStore DiffFromIDNotFoundInDirectory (When uploading via a diff, the diff from file must be in the same directory)",
	"BackupStore PatchChainInfoBadInDirectory (A directory contains inconsistent information. Run bbstoreaccounts check to fix it.)",
	"BackupStore UnknownObjectRefCountRequested (A reference count was requested for an object whose reference count is not known.)"
};
	#else
static const char *whats[] = {
	"BackupStore Internal",
	"BackupStore BadAccountDatabaseFile",
	"BackupStore AccountDatabaseNoSuchEntry",
	"BackupStore InvalidBackupStoreFilename",
	"BackupStore UnknownFilenameEncoding",
	"BackupStore CouldntReadEntireStructureFromStream",
	"BackupStore BadDirectoryFormat",
	"BackupStore CouldNotFindEntryInDirectory",
	"BackupStore OutputFileAlreadyExists",
	"BackupStore OSFileError",
	"BackupStore StreamDoesntHaveRequiredFeatures",
	"BackupStore BadBackupStoreFile",
	"BackupStore CouldNotLoadStoreInfo",
	"BackupStore BadStoreInfoOnLoad",
	"BackupStore StoreInfoIsReadOnly",
	"BackupStore StoreInfoDirNotInList",
	"BackupStore StoreInfoBlockDeltaMakesValueNegative",
	"BackupStore DirectoryHasBeenDeleted",
	"BackupStore StoreInfoNotInitialised",
	"BackupStore StoreInfoAlreadyLoaded",
	"BackupStore StoreInfoNotLoaded",
	"BackupStore ReadFileFromStreamTimedOut",
	"BackupStore FileWrongSizeAfterBeingStored",
	"BackupStore AddedFileDoesNotVerify",
	"BackupStore StoreInfoForWrongAccount",
	"BackupStore ContextIsReadOnly",
	"BackupStore AttributesNotLoaded",
	"BackupStore AttributesNotUnderstood",
	"BackupStore WrongServerVersion",
	"BackupStore ClientMarkerNotAsExpected",
	"BackupStore NameAlreadyExistsInDirectory",
	"BackupStore BerkelyDBFailure",
	"BackupStore InodeMapIsReadOnly",
	"BackupStore InodeMapNotOpen",
	"BackupStore FilenameEncryptionKeyNotKnown",
	"BackupStore FilenameEncryptionNoKeyForSpecifiedMethod",
	"BackupStore FilenameEncryptionNotSetup",
	"BackupStore CouldntLoadClientKeyMaterial",
	"BackupStore BadEncryptedAttributes",
	"BackupStore EncryptedAttributesHaveUnknownEncoding",
	"BackupStore OutputSizeTooSmallForChunk",
	"BackupStore BadEncodedChunk",
	"BackupStore NotEnoughSpaceToDecodeChunk",
	"BackupStore ChunkHasUnknownEncoding",
	"BackupStore ChunkContainsBadCompressedData",
	"BackupStore CantWriteToEncodedFileStream",
	"BackupStore Temp_FileEncodeStreamDidntReadBuffer",
	"BackupStore CantWriteToDecodedFileStream",
	"BackupStore WhenDecodingExpectedToReadButCouldnt",
	"BackupStore BackupStoreFileFailedIntegrityCheck",
	"BackupStore ThereIsNoDataInASymLink",
	"BackupStore IVLengthForEncodedBlockSizeDoesntMeetLengthRequirements",
	"BackupStore BlockEntryEncodingDidntGiveExpectedLength",
	"BackupStore CouldNotFindUnusedIDDuringAllocation",
	"BackupStore AddedFileExceedsStorageLimit",
	"BackupStore CannotDiffAnIncompleteStoreFile",
	"BackupStore CannotDecodeDiffedFilesWithoutCombining",
	"BackupStore FailedToReadBlockOnCombine",
	"BackupStore OnCombineFromFileIsIncomplete",
	"BackupStore BadNotifySysadminEventCode",
	"BackupStore InternalAlgorithmErrorCheckIDNotMonotonicallyIncreasing",
	"BackupStore CouldNotLockStoreAccount",
	"BackupStore AttributeHashSecretNotSet",
	"BackupStore AEScipherNotSupportedByInstalledOpenSSL",
	"BackupStore SignalReceived",
	"BackupStore IncompatibleFromAndDiffFiles",
	"BackupStore DiffFromIDNotFoundInDirectory",
	"BackupStore PatchChainInfoBadInDirectory",
	"BackupStore UnknownObjectRefCountRequested"
};
	#endif
#endif

unsigned int BackupStoreException::GetType() const throw()
{
	return BackupStoreException::ExceptionType;
}

unsigned int BackupStoreException::GetSubType() const throw()
{
	return mSubType;
}

const char *BackupStoreException::what() const throw()
{
#ifdef EXCEPTION_CODENAMES_EXTENDED
	if(mSubType < 0 || mSubType > (sizeof(whats) / sizeof(whats[0])))
	{
		return "BackupStore";
	}
	return whats[mSubType];
#else
	return "BackupStore";
#endif
}

