/// <inheritdoc /> public void Complete(IConnectionFactory factory, bool success) { if (factory != Factory) { return; } _partsHelper?.Dispose(); _partsSearchHelper?.Dispose(); _wordsHelper?.Dispose(); _partsHelper = null; _wordsHelper = null; _partsSearchHelper = null; Factory = null; }
/// <inheritdoc /> public void Prepare(IPersister persister, IConnectionFactory factory) { // no readonly event posible here. if (factory.IsReadOnly) { return; } // sanity check. Contract.Assert(Factory == null); Contract.Assert(_wordsHelper == null); Contract.Assert(_partsHelper == null); Contract.Assert(_partsSearchHelper == null); Factory = factory; _wordsHelper = new WordsHelper(factory, Tables.Words); _partsHelper = new PartsHelper(factory, Tables.Parts); _partsSearchHelper = new PartsSearchHelper(factory, Tables.PartsSearch); }