private bool ReplicateDeletionsToDestination(SqlReplicationConfig cfg, IEnumerable <ListItem> deletedDocs) { var identifiers = deletedDocs.Select(x => x.Key).ToList(); if (identifiers.Count == 0) { return(true); } var replicationStats = statistics.GetOrAdd(cfg.Name, name => new SqlReplicationStatistics(name)); using (var writer = new RelationalDatabaseWriter(Database, cfg, replicationStats)) { foreach (var sqlReplicationTable in cfg.SqlReplicationTables) { writer.DeleteItems(sqlReplicationTable.TableName, sqlReplicationTable.DocumentKeyColumn, cfg.ParameterizeDeletesDisabled, identifiers); } writer.Commit(); if (Log.IsDebugEnabled) { Log.Debug("Replicated deletes of {0} for config {1}", string.Join(", ", identifiers), cfg.Name); } } return(true); }
private bool ReplicateDeletionsToDestination(SqlReplicationConfig cfg, IEnumerable <ListItem> deletedDocs) { var identifiers = deletedDocs.Select(x => x.Key).ToList(); if (identifiers.Count == 0) { return(true); } var replicationStats = statistics.GetOrAdd(cfg.Name, name => new SqlReplicationStatistics(name)); using (var writer = new RelationalDatabaseWriter(Database, cfg, replicationStats)) { foreach (var sqlReplicationTable in cfg.SqlReplicationTables) { writer.DeleteItems(sqlReplicationTable.TableName, sqlReplicationTable.DocumentKeyColumn, identifiers); } writer.Commit(); } return(true); }
private bool ReplicateDeletionsToDestination(SqlReplicationConfig cfg, IEnumerable<ListItem> deletedDocs) { var identifiers = deletedDocs.Select(x => x.Key).ToList(); if (identifiers.Count == 0) return true; var replicationStats = statistics.GetOrAdd(cfg.Name, name => new SqlReplicationStatistics(name)); using (var writer = new RelationalDatabaseWriter(Database, cfg, replicationStats)) { foreach (var sqlReplicationTable in cfg.SqlReplicationTables) { writer.DeleteItems(sqlReplicationTable.TableName, sqlReplicationTable.DocumentKeyColumn, identifiers); } writer.Commit(); } return true; }