internal StoreObjectId CreateDefaultFolder(DefaultFolderType defaultFolderType)
        {
            EnumValidator.ThrowIfInvalid <DefaultFolderType>(defaultFolderType, DefaultFolderManager.validFolderTypesForCreateDefaultFolder);
            DefaultFolder defaultFolder = this.GetDefaultFolder(defaultFolderType);

            defaultFolder.Create();
            StoreObjectId result;

            if (!defaultFolder.TryGetFolderId(out result))
            {
                throw new AccessDeniedException(ServerStrings.DefaultFolderAccessDenied(defaultFolder.ToString()));
            }
            return(result);
        }
 internal override void Recover(DefaultFolder defaultFolder, Exception e, ref DefaultFolderData defaultFolderData)
 {
     try
     {
         defaultFolder.RemoveForRecover(ref defaultFolderData);
         defaultFolder.CreateInternal(ref defaultFolderData);
     }
     catch (StoragePermanentException innerException)
     {
         throw new CorruptDataException(ServerStrings.ExCorruptDataRecoverError(defaultFolder.ToString()), innerException);
     }
     catch (StorageTransientException innerException2)
     {
         throw new CorruptDataException(ServerStrings.ExCorruptDataRecoverError(defaultFolder.ToString()), innerException2);
     }
 }
        internal StoreObjectId CreateDefaultSystemFolder()
        {
            DefaultFolder defaultFolder = this.GetDefaultFolder(DefaultFolderType.System);

            defaultFolder.Create();
            StoreObjectId result;

            if (!defaultFolder.TryGetFolderId(out result))
            {
                throw new AccessDeniedException(ServerStrings.DefaultFolderAccessDenied(defaultFolder.ToString()));
            }
            return(result);
        }