/// <summary>
 /// Method to decide data access manager type and get it.
 /// </summary>
 /// <returns></returns>
 public static IDataAccessManager GetDataAccessManager()
 {
     if (dataAccessManager == null)
     {
         dataAccessManager =
             DataAccessFactory.GetDataAccessManager(CommonEnums.DataAccessManagerType.SqlDataAccessManager);
     }
     return(dataAccessManager);
 }
        /// <summary>
        /// Factory method to get appropriate data access manager based on type.
        /// </summary>
        /// <param name="managerType"></param>
        /// <returns></returns>
        public static IDataAccessManager GetDataAccessManager(CommonEnums.DataAccessManagerType managerType)
        {
            IDataAccessManager dataAccessManager = null;

            switch (managerType)
            {
            case CommonEnums.DataAccessManagerType.SqlDataAccessManager:
                dataAccessManager = new SqlDataAccessManager.SqlDataAccessManager();
                break;

            case CommonEnums.DataAccessManagerType.EntityFramework:
                dataAccessManager = new EFDataAccessManager.EFDataAccessManager();
                break;

            case CommonEnums.DataAccessManagerType.OracleDataAccessManager:
                dataAccessManager = new OracleDataAccessManager.OracleDataAccessManager();
                break;
            }

            return(dataAccessManager);
        }
Exemple #3
0
        private void Initialize(string connectionString)
        {
            IDataAccessManager     database = null;
            SensoryMotorSystem     machine  = null;
            VisualProcessingSystem vision   = null;

            Gala.Data.Runtime.ContextCache newContextCache = null;
            IRobot          robot    = null;
            IChatbotManager chatbots = null;

            Galatea.Speech.ISpeechModule      speech = null;
            Galatea.Speech.ITextToSpeech      tts    = null;
            Galatea.Speech.ISpeechRecognition sr     = null;

            try
            {
                // Load Memory Library
                database = new Gala.Data.Databases.SerializedDataAccessManager(connectionString);
                database.Initialize(this);

                // Load Robotics Interfaces
                InitializationStatusUpdated?.Invoke(this, new EngineInitializationEventArgs(2, EngineInitializationResources.Engine_Initializing_Machine));
                machine = new Galahad.Robotics.MachineSystem();
                machine.Initialize(this);

                InitializationStatusUpdated?.Invoke(this, new EngineInitializationEventArgs(20, EngineInitializationResources.Engine_Initializing_Visuals));
                vision = new VisualProcessor(_settings.ImagingSettings);
                vision.Initialize(this);

                // Become Self-Aware
                InitializationStatusUpdated?.Invoke(this, new EngineInitializationEventArgs(33, EngineInitializationResources.Engine_Initializing_AI));
                robot           = SelfAwareness.BecomeSelfAware(this, "Galahad");
                newContextCache = new Gala.Data.Runtime.ContextCache();
                newContextCache.Initialize(this.ExecutiveFunctions);

                // Initialize Language Module
                InitializationStatusUpdated?.Invoke(this, new EngineInitializationEventArgs(50, EngineInitializationResources.Engine_Initializing_Language));
                this.User = new Galatea.Runtime.Services.User(_settings.DefaultUserName);
                chatbots  = new ChatbotManager(this.User, _settings);
                robot.LanguageModel.LoadChatbots(chatbots);

                // Add Text to Speech (even if silent)
                speech = new Galahad.Robotics.Speech.SpeechModule();
                speech.Initialize(robot.LanguageModel);
                speech.StaySilent = _settings.SpeechIsSilent;

                InitializationStatusUpdated?.Invoke(this, new EngineInitializationEventArgs(65, EngineInitializationResources.Engine_Initializing_Language_Speech));
                tts = new Galahad.Robotics.Speech.TextToSpeech(speech);
                tts.CurrentVoice = tts.GetVoice(0);
                InitializationStatusUpdated?.Invoke(this, new EngineInitializationEventArgs(80, EngineInitializationResources.Engine_Initializing_Language_Recognition));
                sr = new Galahad.Robotics.Speech.SpeechRecognition(speech);

                // Add Memory
                InitializationStatusUpdated?.Invoke(this, new EngineInitializationEventArgs(90, EngineInitializationResources.Engine_Initializing_Memory));
                robot.InitializeMemory(database);

                // Finalize
                database        = null;
                machine         = null;
                vision          = null;
                robot           = null;
                newContextCache = null;
                chatbots        = null;
                speech          = null;
                tts             = null;
                sr = null;
            }
            finally
            {
                if (database != null)
                {
                    database.Dispose();
                }
                if (machine != null)
                {
                    machine.Dispose();
                }
                if (vision != null)
                {
                    vision.Dispose();
                }
                if (robot != null)
                {
                    robot.Dispose();
                }
                if (newContextCache != null)
                {
                    newContextCache.Dispose();
                }
                if (chatbots != null)
                {
                    chatbots.Dispose();
                }
                if (speech != null)
                {
                    speech.Dispose();
                }
                if (sr != null)
                {
                    sr.Dispose();
                }
            }
        }
Exemple #4
0
 public GitHubAuthenticationProvider(GitHubAuthenticationInfo gitHubAuthenticationInfo, IDataAccessManager dataAccessManager, bool continueAsyncTasksOnCapturedContext = false)
 {
     _gitHubAuthenticationInfo            = gitHubAuthenticationInfo;
     _dataAccessManager                   = dataAccessManager;
     _continueAsyncTasksOnCapturedContext = continueAsyncTasksOnCapturedContext;
 }
 public CertificateAuthenticationProvider(CertificateAuthenticationInfo certificateAuthenticationInfo, IDataAccessManager dataAccessManager, bool continueAsyncTasksOnCapturedContext = false)
 {
     _certificateAuthenticationInfo = certificateAuthenticationInfo;
     _dataAccessManager = dataAccessManager;
     _continueAsyncTasksOnCapturedContext = continueAsyncTasksOnCapturedContext;
 }
 public UsernamePasswordAuthenticationProvider(UsernamePasswordAuthenticationInfo userPassAuthenticationInfo, IDataAccessManager dataAccessManager, bool continueAsyncTasksOnCapturedContext = false)
 {
     _userPassAuthenticationInfo = userPassAuthenticationInfo;
     _dataAccessManager = dataAccessManager;
     _continueAsyncTasksOnCapturedContext = continueAsyncTasksOnCapturedContext;
 }
Exemple #7
0
 /// <summary>
 /// Initializes a new instance of a <see cref="BusinessClass"/> object
 /// </summary>
 /// <param name="dam">The <see cref="IDataAccessManager"/> to be used</param>
 public BusinessClass(IDataAccessManager dam)
 {
     myDam = dam;
 }
Exemple #8
0
 public CertificateAuthenticationProvider(CertificateAuthenticationInfo certificateAuthenticationInfo, IDataAccessManager dataAccessManager, bool continueAsyncTasksOnCapturedContext = false)
 {
     _certificateAuthenticationInfo       = certificateAuthenticationInfo;
     _dataAccessManager                   = dataAccessManager;
     _continueAsyncTasksOnCapturedContext = continueAsyncTasksOnCapturedContext;
 }
 public AwsEc2AuthenticationProvider(AwsEc2AuthenticationInfo awsEc2AuthenticationInfo, IDataAccessManager dataAccessManager, bool continueAsyncTasksOnCapturedContext = false)
 {
     _awsEc2AuthenticationInfo = awsEc2AuthenticationInfo;
     _dataAccessManager = dataAccessManager;
     _continueAsyncTasksOnCapturedContext = continueAsyncTasksOnCapturedContext;
 }
 public UsernamePasswordAuthenticationProvider(UsernamePasswordAuthenticationInfo userPassAuthenticationInfo, IDataAccessManager dataAccessManager, bool continueAsyncTasksOnCapturedContext = false)
 {
     _userPassAuthenticationInfo          = userPassAuthenticationInfo;
     _dataAccessManager                   = dataAccessManager;
     _continueAsyncTasksOnCapturedContext = continueAsyncTasksOnCapturedContext;
 }
 public LDAPAuthenticationProvider(LDAPAuthenticationInfo ldapAuthenticationInfo, IDataAccessManager dataAccessManager, bool continueAsyncTasksOnCapturedContext = false)
 {
     _ldapAuthenticationInfo = ldapAuthenticationInfo;
     _dataAccessManager = dataAccessManager;
     _continueAsyncTasksOnCapturedContext = continueAsyncTasksOnCapturedContext;
 }
 public LDAPAuthenticationProvider(LDAPAuthenticationInfo ldapAuthenticationInfo, IDataAccessManager dataAccessManager, bool continueAsyncTasksOnCapturedContext = false)
 {
     _ldapAuthenticationInfo = ldapAuthenticationInfo;
     _dataAccessManager      = dataAccessManager;
     _continueAsyncTasksOnCapturedContext = continueAsyncTasksOnCapturedContext;
 }
Exemple #13
0
 /// <summary>
 /// Initializes a new instance of the <see cref="DiseaseCategoryManager"/> class
 /// </summary>
 /// <param name="dataAccessManager">The data access manager</param>
 public DiseaseCategoryManager(IDataAccessManager dataAccessManager)
 {
     this.dataAccessManager = dataAccessManager;
 }
 public ProductListController(IDataAccessManager dataAccessManager)
 {
     _dataAccessManager = dataAccessManager;
 }
Exemple #15
0
 public APIRequestHandler()
 {
     dataAccessManager = new APIDataAccessManager <T>();
 }
Exemple #16
0
 public UserRepository(IDataAccessManager dataAccess)
 {
     _dataAccess = dataAccess;
 }
Exemple #17
0
 public AwsEc2AuthenticationProvider(AwsEc2AuthenticationInfo awsEc2AuthenticationInfo, IDataAccessManager dataAccessManager, bool continueAsyncTasksOnCapturedContext = false)
 {
     _awsEc2AuthenticationInfo            = awsEc2AuthenticationInfo;
     _dataAccessManager                   = dataAccessManager;
     _continueAsyncTasksOnCapturedContext = continueAsyncTasksOnCapturedContext;
 }
 public DocumentRepository(IDataAccessManager dataAccess)
 {
     _dataAccess = dataAccess;
 }
Exemple #19
0
 /// <summary>
 /// Initializes a new instance of the <see cref="DiseaseManager"/> class
 /// </summary>
 /// <param name="dataAccessManager">The data access manager</param>
 public DiseaseManager(IDataAccessManager dataAccessManager)
 {
     this.dataAccessManager = dataAccessManager;
 }
 public GitHubAuthenticationProvider(GitHubAuthenticationInfo gitHubAuthenticationInfo, IDataAccessManager dataAccessManager, bool continueAsyncTasksOnCapturedContext = false)
 {
     _gitHubAuthenticationInfo = gitHubAuthenticationInfo;
     _dataAccessManager = dataAccessManager;
     _continueAsyncTasksOnCapturedContext = continueAsyncTasksOnCapturedContext;
 }