homeserver.py 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. # Copyright 2014-2016 OpenMarket Ltd
  2. # Copyright 2018 New Vector Ltd
  3. #
  4. # Licensed under the Apache License, Version 2.0 (the "License");
  5. # you may not use this file except in compliance with the License.
  6. # You may obtain a copy of the License at
  7. #
  8. # http://www.apache.org/licenses/LICENSE-2.0
  9. #
  10. # Unless required by applicable law or agreed to in writing, software
  11. # distributed under the License is distributed on an "AS IS" BASIS,
  12. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13. # See the License for the specific language governing permissions and
  14. # limitations under the License.
  15. from ._base import RootConfig
  16. from .account_validity import AccountValidityConfig
  17. from .api import ApiConfig
  18. from .appservice import AppServiceConfig
  19. from .auth import AuthConfig
  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 .oidc import OIDCConfig
  34. from .password_auth_providers import PasswordAuthProviderConfig
  35. from .push import PushConfig
  36. from .ratelimiting import RatelimitConfig
  37. from .redis import RedisConfig
  38. from .registration import RegistrationConfig
  39. from .repository import ContentRepositoryConfig
  40. from .room import RoomConfig
  41. from .room_directory import RoomDirectoryConfig
  42. from .saml2 import SAML2Config
  43. from .server import ServerConfig
  44. from .server_notices import ServerNoticesConfig
  45. from .spam_checker import SpamCheckerConfig
  46. from .sso import SSOConfig
  47. from .stats import StatsConfig
  48. from .third_party_event_rules import ThirdPartyRulesConfig
  49. from .tls import TlsConfig
  50. from .tracer import TracerConfig
  51. from .user_directory import UserDirectoryConfig
  52. from .voip import VoipConfig
  53. from .workers import WorkerConfig
  54. class HomeServerConfig(RootConfig):
  55. config_classes = [
  56. ServerConfig,
  57. ExperimentalConfig,
  58. TlsConfig,
  59. FederationConfig,
  60. CacheConfig,
  61. DatabaseConfig,
  62. LoggingConfig,
  63. RatelimitConfig,
  64. ContentRepositoryConfig,
  65. CaptchaConfig,
  66. VoipConfig,
  67. RegistrationConfig,
  68. AccountValidityConfig,
  69. MetricsConfig,
  70. ApiConfig,
  71. AppServiceConfig,
  72. KeyConfig,
  73. SAML2Config,
  74. OIDCConfig,
  75. CasConfig,
  76. SSOConfig,
  77. JWTConfig,
  78. AuthConfig,
  79. EmailConfig,
  80. PasswordAuthProviderConfig,
  81. PushConfig,
  82. SpamCheckerConfig,
  83. RoomConfig,
  84. GroupsConfig,
  85. UserDirectoryConfig,
  86. ConsentConfig,
  87. StatsConfig,
  88. ServerNoticesConfig,
  89. RoomDirectoryConfig,
  90. ThirdPartyRulesConfig,
  91. TracerConfig,
  92. WorkerConfig,
  93. RedisConfig,
  94. ]