00001 /* 00002 * Copyright (C) 2006, Jose Renato Santos. 00003 * 00004 * This file may be distributed under the terms of the Q Public License 00005 * as defined by Trolltech AS of Norway and appearing in the file 00006 * LICENSE.QPL included in the packaging of this file. 00007 * 00008 * THIS FILE IS PROVIDED AS IS WITH NO WARRANTY OF ANY KIND, INCLUDING 00009 * THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR 00010 * PURPOSE. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, 00011 * INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING 00012 * FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, 00013 * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION 00014 * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 00015 * 00016 */ 00017 00018 /////////////////////////////////////////////////////////////////////////////// 00019 // SessionManagerTypes.h: Data types used for Session Manager Interface 00020 /////////////////////////////////////////////////////////////////////////////// 00021 00022 #ifndef __SESSIONMANAGERTYPES_H_ 00023 #define __SESSIONMANAGERTYPES_H_ 00024 00025 class CSystemManager; 00026 class CStreamManager; 00027 class CObjectManager; 00028 class CUserManager; 00029 class CRouter; 00030 class DiskMgr; 00031 // ---------------------------------------------------------------------------- 00032 00033 // Session Config 00034 typedef struct 00035 { 00036 int MaxSessions; 00037 unsigned int BlockSize; 00038 // added to support df command --------------------------------- 00039 unsigned int NumberOfDisks; 00040 unsigned int NumberOfStorageNodes; 00041 DiskMgr *diskMgr; 00042 // ------------------------------------------------------------------------ 00043 CStreamManager *StreamManager; 00044 CObjectManager *ObjectManager; 00045 CUserManager *UserManager; 00046 CRouter *Router; 00047 CSystemManager *SystemManager; 00048 char *FileRoot; 00049 // ------------------------------------------------------------------------ 00050 // Novo parametro com o valor inteiro que define (se for diferente de 0) se 00051 // o log da classe deve ser gerado. 00052 int GenerateLogs; 00053 // Novo parametro com o nome do caminho do diretorio onde o log deve ser 00054 // salvo. 00055 char *LogsDirectory; 00056 // Novo parametro usado para indicar o tempo maximo que o servidor espera 00057 // por uma requisicao de um cliente antes de fechar a conexao com a 00058 // suposicao de que ela caiu. 00059 int ClientsTimeOut; 00060 // Novo parametro que armazena o tamanho que o arquivo de log deve atingir 00061 // antes de o log ser compactado. 00062 unsigned int MaxLogFileSize; 00063 // Tamanho maximo ocupado por todos os logs (apos este tamanho, os logs 00064 // compactados mais antigos serao removidos ate que o tamanho deixe de 00065 // passar do maximo). 00066 unsigned long long int MaxCombinedLogFilesSize; 00067 // Nova variavel usada para indicar se o salvamento dos logs esta ou nao 00068 // habilitado 00069 bool SaveLogs; 00070 } SessionManagerConfig; 00071 00072 #endif //__SESSIONMANAGERTYPES_H_