homeserver.py 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. # Copyright 2021 The Matrix.org Foundation C.I.C.
  2. #
  3. # Licensed under the Apache License, Version 2.0 (the "License");
  4. # you may not use this file except in compliance with the License.
  5. # You may obtain a copy of the License at
  6. #
  7. # http://www.apache.org/licenses/LICENSE-2.0
  8. #
  9. # Unless required by applicable law or agreed to in writing, software
  10. # distributed under the License is distributed on an "AS IS" BASIS,
  11. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. # See the License for the specific language governing permissions and
  13. # limitations under the License.
  14. from ._base import RootConfig
  15. from .account_validity import AccountValidityConfig
  16. from .api import ApiConfig
  17. from .appservice import AppServiceConfig
  18. from .auth import AuthConfig
  19. from .background_updates import BackgroundUpdateConfig
  20. from .cache import CacheConfig
  21. from .captcha import CaptchaConfig
  22. from .cas import CasConfig
  23. from .consent import ConsentConfig
  24. from .database import DatabaseConfig
  25. from .emailconfig import EmailConfig
  26. from .experimental import ExperimentalConfig
  27. from .federation import FederationConfig
  28. from .groups import GroupsConfig
  29. from .jwt import JWTConfig
  30. from .key import KeyConfig
  31. from .logger import LoggingConfig
  32. from .metrics import MetricsConfig
  33. from .modules import ModulesConfig
  34. from .oembed import OembedConfig
  35. from .oidc import OIDCConfig
  36. from .password_auth_providers import PasswordAuthProviderConfig
  37. from .push import PushConfig
  38. from .ratelimiting import RatelimitConfig
  39. from .redis import RedisConfig
  40. from .registration import RegistrationConfig
  41. from .repository import ContentRepositoryConfig
  42. from .retention import RetentionConfig
  43. from .room import RoomConfig
  44. from .room_directory import RoomDirectoryConfig
  45. from .saml2 import SAML2Config
  46. from .server import ServerConfig
  47. from .server_notices import ServerNoticesConfig
  48. from .spam_checker import SpamCheckerConfig
  49. from .sso import SSOConfig
  50. from .stats import StatsConfig
  51. from .third_party_event_rules import ThirdPartyRulesConfig
  52. from .tls import TlsConfig
  53. from .tracer import TracerConfig
  54. from .user_directory import UserDirectoryConfig
  55. from .voip import VoipConfig
  56. from .workers import WorkerConfig
  57. class HomeServerConfig(RootConfig):
  58. config_classes = [
  59. ModulesConfig,
  60. ServerConfig,
  61. RetentionConfig,
  62. TlsConfig,
  63. FederationConfig,
  64. CacheConfig,
  65. DatabaseConfig,
  66. LoggingConfig,
  67. RatelimitConfig,
  68. ContentRepositoryConfig,
  69. OembedConfig,
  70. CaptchaConfig,
  71. VoipConfig,
  72. RegistrationConfig,
  73. AccountValidityConfig,
  74. MetricsConfig,
  75. ApiConfig,
  76. AppServiceConfig,
  77. KeyConfig,
  78. SAML2Config,
  79. OIDCConfig,
  80. CasConfig,
  81. SSOConfig,
  82. JWTConfig,
  83. AuthConfig,
  84. EmailConfig,
  85. PasswordAuthProviderConfig,
  86. PushConfig,
  87. SpamCheckerConfig,
  88. RoomConfig,
  89. GroupsConfig,
  90. UserDirectoryConfig,
  91. ConsentConfig,
  92. StatsConfig,
  93. ServerNoticesConfig,
  94. RoomDirectoryConfig,
  95. ThirdPartyRulesConfig,
  96. TracerConfig,
  97. WorkerConfig,
  98. RedisConfig,
  99. ExperimentalConfig,
  100. BackgroundUpdateConfig,
  101. ]