/// <summary>
 /// Initializes a new instance of the <see cref="AuthMutableStructureSearchManager"/> class.
 /// </summary>
 /// <param name="mutableRetrievalManagerFactory">
 /// The mutable retrieval manager factory.
 /// </param>
 /// <param name="crossReferenceManager">
 /// The cross reference manager.
 /// </param>
 /// <param name="connectionStringSettings">
 /// The connection string settings.
 /// </param>
 public AuthMutableStructureSearchManager(
     IAuthAdvancedMutableRetrievalManagerFactory mutableRetrievalManagerFactory, 
     IAuthCrossRetrievalManagerFactory crossReferenceManager, 
     ConnectionStringSettings connectionStringSettings)
     : base(mutableRetrievalManagerFactory, crossReferenceManager, connectionStringSettings)
 {
 }
        /// <summary>
        /// Initializes a new instance of the <see cref="AuthMutableStructureSearchManagerBase"/> class.
        /// </summary>
        /// <param name="connectionStringSettings">
        /// The connection string settings.
        /// </param>
        protected AuthMutableStructureSearchManagerBase(ConnectionStringSettings connectionStringSettings)
        {
            this._database = new Database(connectionStringSettings);
            this._crossReferenceManager = new AuthCrossMutableRetrievalManagerFactory();

            // advanced
            this._advancedMutableRetrievalManagerFactory = new AuthAdvancedMutableRetrievalManagerFactory();
            this._retrievalAdvancedManager = this._advancedMutableRetrievalManagerFactory.GetRetrievalManager(this._database);
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="AuthMutableStructureSearchManagerBase"/> class.
 /// </summary>
 /// <param name="mutableRetrievalManagerFactory">
 /// The mutable retrieval manager factory.
 /// </param>
 /// <param name="crossReferenceManager">
 /// The cross reference manager.
 /// </param>
 /// <param name="connectionStringSettings">
 /// The connection string settings.
 /// </param>
 protected AuthMutableStructureSearchManagerBase(
     IAuthAdvancedMutableRetrievalManagerFactory mutableRetrievalManagerFactory, 
     IAuthCrossRetrievalManagerFactory crossReferenceManager, 
     ConnectionStringSettings connectionStringSettings)
 {
     this._advancedMutableRetrievalManagerFactory = mutableRetrievalManagerFactory ?? new AuthAdvancedMutableRetrievalManagerFactory();
     this._crossReferenceManager = crossReferenceManager ?? new AuthCrossMutableRetrievalManagerFactory();
     var database = new Database(connectionStringSettings);
     this._advancedMutableRetrievalManagerFactory.GetRetrievalManager(database);
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="AuthAdvancedStructureRetriever"/> class.
 /// </summary>
 /// <param name="mutableRetrievalManagerFactory">
 /// The mutable retrieval manager factory.
 /// </param>
 /// <param name="crossReferenceManagerFactory">
 /// The cross reference manager factory.
 /// </param>
 /// <param name="connectionStringSettings">
 /// The connection string settings.
 /// </param>
 public AuthAdvancedStructureRetriever(
     IAuthAdvancedMutableRetrievalManagerFactory mutableRetrievalManagerFactory, 
     IAuthCrossRetrievalManagerFactory crossReferenceManagerFactory, 
     ConnectionStringSettings connectionStringSettings)
 {
     this._crossReferenceManagerFactory = crossReferenceManagerFactory ?? new AuthCrossMutableRetrievalManagerFactory();
     this._retrievalFactory = mutableRetrievalManagerFactory ?? new AuthAdvancedMutableRetrievalManagerFactory();
     this._database = new Database(connectionStringSettings);
     this._retrievalManager = this._retrievalFactory.GetRetrievalManager(this._database);
 }