TreeFrogFramework: src/twebapplication.h Source File

18#ifdef TF_USE_GUI_MODULE

19 : public QApplication

20#else

21 : public QCoreApplication

22#endif

23{

24 Q_OBJECT

25public:

27 Invalid = 0,

28 Thread = 1,

29 Epoll = 2,

30 };

31

34

35 int exec();

36 QString webRootPath() const { return _webRootAbsolutePath; }

37 bool webRootExists() const;

38 QString publicPath() const;

39 QString configPath() const;

40 QString libPath() const;

41 QString logPath() const;

42 QString pluginPath() const;

43 QString tmpPath() const;

45 void setDatabaseEnvironment(const QString &environment);

46

47 bool appSettingsFileExists() const;

48 QString appSettingsFilePath() const;

49 const QVariantMap &sqlDatabaseSettings(int databaseId) const;

50 int sqlDatabaseSettingsCount() const;

51 const QVariantMap &kvsSettings(Tf::KvsEngine engine) const;

53 bool cacheEnabled() const;

54 QString cacheBackend() const;

55 int databaseIdForCache() const;

56 const QVariantMap &loggerSettings() const { return _loggerSetting; }

58 QString validationErrorMessage(int rule) const;

59 QByteArray internetMediaType(const QString &ext, bool appendCharset = false);

60 MultiProcessingModule multiProcessingModule() const;

62 int maxNumberOfAppServers() const;

63 int maxNumberOfThreadsPerAppServer() const;

64 QString routesConfigFilePath() const;

65 QString systemLogFilePath() const;

66 QString accessLogFilePath() const;

67 QString sqlQueryLogFilePath() const;

68 QStringConverter::Encoding encodingForInternal() const { return _encodingInternal; }

71 QThread *databaseContextMainThread() const;

73 const QVariantMap &getConfig(const QString &configName);

74 QVariant getConfigValue(const QString &configName, const QString &key, const QVariant &defaultValue = QVariant());

75 void initializeCache();

76 void cleanupCache();

77

78#if defined(Q_OS_UNIX)

79 void watchUnixSignal(int sig, bool watch = true);

80 void ignoreUnixSignal(int sig, bool ignore = true);

81#endif

82

83#if defined(Q_OS_WIN)

84 void watchConsoleSignal();

85 void ignoreConsoleSignal();

86 void watchLocalSocket();

87 static bool sendLocalCtrlMessage(const QByteArray &msg, int targetProcess);

88

89private slots:

90 void recvLocalSocket();

91#endif

92

93protected:

94 void timerEvent(QTimerEvent *event);

95 static int signalNumber();

96

97private:

98 QString _webRootAbsolutePath;

99 QString _dbEnvironment;

100 QVector<QVariantMap> _sqlSettings;

102 QVariantMap _loggerSetting;

103 QVariantMap _validationSetting;

104 QVariantMap _mediaTypes;

105 QStringConverter::Encoding _encodingInternal {QStringConverter::Utf8};

106 QStringConverter::Encoding _encodingHttp {QStringConverter::Utf8};

107

108 int _appServerId {-1};

109 QBasicTimer _timer;

110 QMap<QString, QVariantMap> _configMap;

111 int _cacheSqlDbIndex {-1};

113

114 static void resetSignalNumber();

115

118};

126{

127 _dbEnvironment = environment;

128}

136 virtual bool nativeEventFilter(const QByteArray &eventType, void *message, qintptr *);

The TDatabaseContext class is the base class of contexts for database access.

Definition tdatabasecontext.h:11