homeserver.py 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. # -*- coding: utf-8 -*-
  2. # Copyright 2014-2016 OpenMarket Ltd
  3. # Copyright 2018 New Vector Ltd
  4. #
  5. # Licensed under the Apache License, Version 2.0 (the "License");
  6. # you may not use this file except in compliance with the License.
  7. # You may obtain a copy of the License at
  8. #
  9. # http://www.apache.org/licenses/LICENSE-2.0
  10. #
  11. # Unless required by applicable law or agreed to in writing, software
  12. # distributed under the License is distributed on an "AS IS" BASIS,
  13. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  14. # See the License for the specific language governing permissions and
  15. # limitations under the License.
  16. from ._base import RootConfig
  17. from .api import ApiConfig
  18. from .appservice import AppServiceConfig
  19. from .captcha import CaptchaConfig
  20. from .cas import CasConfig
  21. from .consent_config import ConsentConfig
  22. from .database import DatabaseConfig
  23. from .emailconfig import EmailConfig
  24. from .groups import GroupsConfig
  25. from .jwt_config import JWTConfig
  26. from .key import KeyConfig
  27. from .logger import LoggingConfig
  28. from .metrics import MetricsConfig
  29. from .oidc_config import OIDCConfig
  30. from .password import PasswordConfig
  31. from .password_auth_providers import PasswordAuthProviderConfig
  32. from .push import PushConfig
  33. from .ratelimiting import RatelimitConfig
  34. from .redis import RedisConfig
  35. from .registration import RegistrationConfig
  36. from .repository import ContentRepositoryConfig
  37. from .room_directory import RoomDirectoryConfig
  38. from .saml2_config import SAML2Config
  39. from .server import ServerConfig
  40. from .server_notices_config import ServerNoticesConfig
  41. from .spam_checker import SpamCheckerConfig
  42. from .sso import SSOConfig
  43. from .stats import StatsConfig
  44. from .third_party_event_rules import ThirdPartyRulesConfig
  45. from .tls import TlsConfig
  46. from .tracer import TracerConfig
  47. from .user_directory import UserDirectoryConfig
  48. from .voip import VoipConfig
  49. from .workers import WorkerConfig
  50. class HomeServerConfig(RootConfig):
  51. config_classes = [
  52. ServerConfig,
  53. TlsConfig,
  54. DatabaseConfig,
  55. LoggingConfig,
  56. RatelimitConfig,
  57. ContentRepositoryConfig,
  58. CaptchaConfig,
  59. VoipConfig,
  60. RegistrationConfig,
  61. MetricsConfig,
  62. ApiConfig,
  63. AppServiceConfig,
  64. KeyConfig,
  65. SAML2Config,
  66. OIDCConfig,
  67. CasConfig,
  68. SSOConfig,
  69. JWTConfig,
  70. PasswordConfig,
  71. EmailConfig,
  72. WorkerConfig,
  73. PasswordAuthProviderConfig,
  74. PushConfig,
  75. SpamCheckerConfig,
  76. GroupsConfig,
  77. UserDirectoryConfig,
  78. ConsentConfig,
  79. StatsConfig,
  80. ServerNoticesConfig,
  81. RoomDirectoryConfig,
  82. ThirdPartyRulesConfig,
  83. TracerConfig,
  84. RedisConfig,
  85. ]