From 2918dd466ef6a8e526698ca3f1bc7f9b793f2824 Mon Sep 17 00:00:00 2001
From: asteroide <thomas.duval@orange.com>
Date: Fri, 20 Nov 2015 15:38:46 +0100
Subject: Add an init API function to force the reload of the root
 intra-extension.

Change-Id: Ieee84a30cbd1ee0a5d4ca3359b7f5afbc39afffc
---
 keystone-moon/keystone/contrib/moon/controllers.py | 4 ++++
 keystone-moon/keystone/contrib/moon/routers.py     | 6 ++++++
 2 files changed, 10 insertions(+)

(limited to 'keystone-moon/keystone')

diff --git a/keystone-moon/keystone/contrib/moon/controllers.py b/keystone-moon/keystone/contrib/moon/controllers.py
index 58e62a28..84e27fa3 100644
--- a/keystone-moon/keystone/contrib/moon/controllers.py
+++ b/keystone-moon/keystone/contrib/moon/controllers.py
@@ -208,6 +208,10 @@ class IntraExtensions(controller.V3Controller):
         intra_extension_dict['description'] = kw.get('intra_extension_description', None)
         return self.admin_api.set_intra_extension_dict(user_id, intra_extension_id, intra_extension_dict)
 
+    @controller.protected()
+    def load_root_intra_extension(self, context, **kw):
+        self.admin_api.load_root_intra_extension_dict()
+
     # Metadata functions
     @controller.protected()
     def get_subject_categories(self, context, **kw):
diff --git a/keystone-moon/keystone/contrib/moon/routers.py b/keystone-moon/keystone/contrib/moon/routers.py
index 357ae060..fd1c0adf 100644
--- a/keystone-moon/keystone/contrib/moon/routers.py
+++ b/keystone-moon/keystone/contrib/moon/routers.py
@@ -87,6 +87,12 @@ class Routers(wsgi.V3ExtensionRouter):
             })
 
         # IntraExtensions/Admin route
+        self._add_resource(
+            mapper, intra_ext_controller,
+            path=self.PATH_PREFIX+'/intra_extensions/init',
+            get_action='load_root_intra_extension',
+            rel=self._get_rel('intra_extensions'),
+            path_vars={})
         self._add_resource(
             mapper, intra_ext_controller,
             path=self.PATH_PREFIX+'/intra_extensions',
-- 
cgit