private ISyncResultsTableAdapter GetAdapter(string resourceKind)
        {
            ISyncResultsTableAdapter syncResultsTableAdapter;

            IResourceKindTableAdapter resourceKindTableAdapter = StoreEnvironment.Resolve <IResourceKindTableAdapter>(_context);

            Dictionary <string, ISyncResultsTableAdapter> adapters = StoreEnvironment.Resolve <Dictionary <string, ISyncResultsTableAdapter> >(_context);

            if (!adapters.TryGetValue(resourceKind, out syncResultsTableAdapter))
            {
                TableAdapterFactory factory = new TableAdapterFactory(_context, _jetConnectionProvider);
                syncResultsTableAdapter = factory.CreateSyncResultsTableAdapter(resourceKind, resourceKindTableAdapter);
                adapters.Add(resourceKind, syncResultsTableAdapter);
                StoreEnvironment.Set <Dictionary <string, ISyncResultsTableAdapter> >(_context, adapters);
            }

            return(syncResultsTableAdapter);
        }
Exemple #2
0
        private ICorrelatedResSyncTableAdapter GetAdapter(string resourceKind)
        {
            ICorrelatedResSyncTableAdapter correlatedResSyncTableAdapter;

            IEndpointTableAdapter     endpointTableAdapter     = StoreEnvironment.Resolve <IEndpointTableAdapter>(_context);
            IResourceKindTableAdapter resourceKindTableAdapter = StoreEnvironment.Resolve <IResourceKindTableAdapter>(_context);

            Dictionary <string, ICorrelatedResSyncTableAdapter> adapters = StoreEnvironment.Resolve <Dictionary <string, ICorrelatedResSyncTableAdapter> >(_context);

            if (!adapters.TryGetValue(resourceKind, out correlatedResSyncTableAdapter))
            {
                TableAdapterFactory factory = new TableAdapterFactory(_context, _jetConnectionProvider);
                correlatedResSyncTableAdapter = factory.CreateCorrelatedResSyncTableAdapter(resourceKind, endpointTableAdapter, resourceKindTableAdapter);
                adapters.Add(resourceKind, correlatedResSyncTableAdapter);
                StoreEnvironment.Set <Dictionary <string, ICorrelatedResSyncTableAdapter> >(_context, adapters);
            }

            return(correlatedResSyncTableAdapter);
        }