Переглянути джерело

[Typo FIx] Fix some TYpos + testing push with PyCharm :)

monf 8 роки тому
батько
коміт
13c8dd1100

+ 6 - 6
core/ConfigurationManager/BrainLoader.py

@@ -1,21 +1,21 @@
-from YAMLLoader import yamlloader
+from YAMLLoader import YAMLLoader
 
-class BrainLoader(yamlloader):
+class BrainLoader(YAMLLoader):
 
     FILE_NAME = "brain.yml"
 
     def __init__(self):
         self.fileName =  self.FILE_NAME
         self.filePath = "../../" + self.fileName
-        yamlloader.__init__(self, self.filePath)
+        YAMLLoader.__init__(self, self.filePath)
 
     def __init__(self, filename):
-        self.fileName = filename;
+        self.fileName = filename
         self.filePath = "../../" + self.fileName
-        yamlloader.__init__(self, self.filePath)
+        YAMLLoader.__init__(self, self.filePath)
 
     def get_config(self):
-        return yamlloader.get_config(self)
+        return YAMLLoader.get_config(self)
 
 
 

+ 11 - 0
core/ConfigurationManager/ConfigurationManager.py

@@ -0,0 +1,11 @@
+from BrainLoader import BrainLoader
+from SettingLoader import SettingLoader
+
+class ConfigurationManager() :
+
+    BRAIN_FILE_NAME = "brain.yml"
+    SETTING_FILE_NAME = "settings.yml"
+
+    def __init__(self):
+        self.brainLoader = BrainLoader(self.BRAIN_FILE_NAME)
+        self.settingLoader = SettingLoader(self.SETTING_FILE_NAME)

+ 11 - 6
core/ConfigurationManager/SettingLoader.py

@@ -1,13 +1,18 @@
-from YAMLLoader import yamlloader
+from YAMLLoader import YAMLLoader
 
-class SettingLoader(yamlloader) :
+class SettingLoader(YAMLLoader) :
 
     FILE_NAME = "settings.yml"
 
-    def __init__(self, yamlloader):
-        self.fileName =  self.FILE_NAME;
+    def __init__(self):
+        self.fileName =  self.FILE_NAME
         self.filePath = "../../" + self.fileName
-        yamlloader.__init__(self, self.filePath)
+        YAMLLoader.__init__(self, self.filePath)
+
+    def __init__(self, filename):
+        self.fileName = filename
+        self.filePath = "../../" + self.fileName
+        YAMLLoader.__init__(self, self.filePath)
 
     def get_config(self):
-        return yamlloader.get_config(self)
+        return YAMLLoader.get_config(self)

+ 3 - 3
core/ConfigurationManager/YAMLLoader.py

@@ -5,14 +5,14 @@ class YAMLLoader() :
 
     def __init__(self, file):
         self.file = file
+
     def get_config(self):
         """
         Load settings file
-        :return: cfg : the brain configuration file
+        :return: cfg : the configuration file
         """
         # Load settings. Will be used to convert slot number into GPIO pin number
-        __location__ = os.path.realpath(
-            os.path.join(os.getcwd(), os.path.dirname(__file__)))
+        __location__ = os.path.realpath(os.path.join(os.getcwd(), os.path.dirname(__file__)))
         with open(os.path.join(__location__, self.file)) as ymlfile:
             cfg = yaml.load(ymlfile)
         return cfg

+ 1 - 0
core/ConfigurationManager/__init__.py

@@ -0,0 +1 @@
+from YAMLLoader import YAMLLoader

+ 5 - 0
core/MainController.py

@@ -1,11 +1,16 @@
 from core.JarvisTrigger import JarvisTrigger
 from core.OrderAnalyser import OrderAnalyser
 from core.OrderListener import OrderListener
+from core.ConfigurationManager.ConfigurationManager import ConfigurationManager
+
 from neurons import Say
 
 
 class MainController:
     def __init__(self):
+        # Manage Global Configuration
+        self.conf = ConfigurationManager()
+
         # create an order listener object
         self.order_listener = OrderListener(self)
         # Wait that the jarvis trigger is pronounced by the user

+ 1 - 2
core/OrderAnalyser.py

@@ -1,4 +1,3 @@
-from Utils import *
 import re
 
 
@@ -11,7 +10,7 @@ class OrderAnalyser:
         """
         self.main_controller = main_controller
         self.order = order
-        self.brain = get_brain()
+        self.brain = main_controller.conf.brainLoader.get_config() # Bouh ! pas beau !
         print "Receiver order: %s" % self.order
 
     def start(self):

+ 5 - 1
core/__init__.py

@@ -1 +1,5 @@
-from Neurone import Neurone
+from Neurone import Neurone
+from core.JarvisTrigger import JarvisTrigger
+from core.OrderAnalyser import OrderAnalyser
+from core.OrderListener import OrderListener
+from core.ConfigurationManager.ConfigurationManager import ConfigurationManager