__init__.py 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. # -*- coding: utf-8 -*-
  2. # Copyright 2014-2016 OpenMarket 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 synapse.rest.client import (
  16. versions,
  17. )
  18. from synapse.rest.client.v1 import (
  19. room,
  20. events,
  21. profile,
  22. presence,
  23. initial_sync,
  24. directory,
  25. voip,
  26. admin,
  27. pusher,
  28. push_rule,
  29. register as v1_register,
  30. login as v1_login,
  31. logout,
  32. )
  33. from synapse.rest.client.v2_alpha import (
  34. sync,
  35. filter,
  36. account,
  37. register,
  38. auth,
  39. receipts,
  40. keys,
  41. tokenrefresh,
  42. tags,
  43. account_data,
  44. report_event,
  45. openid,
  46. )
  47. from synapse.http.server import JsonResource
  48. class ClientRestResource(JsonResource):
  49. """A resource for version 1 of the matrix client API."""
  50. def __init__(self, hs):
  51. JsonResource.__init__(self, hs, canonical_json=False)
  52. self.register_servlets(self, hs)
  53. @staticmethod
  54. def register_servlets(client_resource, hs):
  55. versions.register_servlets(client_resource)
  56. # "v1"
  57. room.register_servlets(hs, client_resource)
  58. events.register_servlets(hs, client_resource)
  59. v1_register.register_servlets(hs, client_resource)
  60. v1_login.register_servlets(hs, client_resource)
  61. profile.register_servlets(hs, client_resource)
  62. presence.register_servlets(hs, client_resource)
  63. initial_sync.register_servlets(hs, client_resource)
  64. directory.register_servlets(hs, client_resource)
  65. voip.register_servlets(hs, client_resource)
  66. admin.register_servlets(hs, client_resource)
  67. pusher.register_servlets(hs, client_resource)
  68. push_rule.register_servlets(hs, client_resource)
  69. logout.register_servlets(hs, client_resource)
  70. # "v2"
  71. sync.register_servlets(hs, client_resource)
  72. filter.register_servlets(hs, client_resource)
  73. account.register_servlets(hs, client_resource)
  74. register.register_servlets(hs, client_resource)
  75. auth.register_servlets(hs, client_resource)
  76. receipts.register_servlets(hs, client_resource)
  77. keys.register_servlets(hs, client_resource)
  78. tokenrefresh.register_servlets(hs, client_resource)
  79. tags.register_servlets(hs, client_resource)
  80. account_data.register_servlets(hs, client_resource)
  81. report_event.register_servlets(hs, client_resource)
  82. openid.register_servlets(hs, client_resource)