Exemplo n.º 1
0
        public override void CreateBulkInsertTask(string table, EnumerableDataReader reader, ImportTarget target)
        {
            BulkCopyTask task =
                new BulkCopyTask(new MySqlBulkInserter(Config.Provider.ConnectionString, table, target.Schema), table,
                                 reader, target.Name, Config.BatchSize, target.Schema);

            Jobs.Find(j => j.Tag == table).Tasks.Add(task);
        }
Exemplo n.º 2
0
 public override void CreateBulkInsertTask(string table, EnumerableDataReader reader, ImportTarget target)
 {
     BulkCopyTask task = new BulkCopyTask(new SQLiteBulkInserter(_targetPath, target.Schema, table), table,
                                          reader, target.Name, Config.BatchSize, target.Schema);
     task.PostProcess += PostProcess; // when the task is complete, merge into main file
     _locks[task.Schema] = new object();
     Jobs.Find(j => j.Tag == target.Schema).Tasks.Add(task);
 }
Exemplo n.º 3
0
 internal BulkCopyTask(BulkCopyBase bc, string table, EnumerableDataReader readerIn, string site, int batchSize,
                       string schema)
 {
     _id = Guid.NewGuid();
     _bc = bc;
     _site = site;
     _table = table;
     _schema = schema;
     _batchSize = batchSize;
     _readerIn = readerIn;
 }
Exemplo n.º 4
0
        public virtual void Configure()
        {
            foreach (ImportTarget target in Config.Targets)
            {
                foreach (Type type in Config.GetAllTableTypes())
                {
                    MethodInfo methodInfo = typeof (SoBase<>).MakeGenericType(type).GetMethod("FromXmlDocument");
                    IEnumerable sequence =
                        (IEnumerable) methodInfo.Invoke(null, new object[] {target.Path, target.Name});
                    EnumerableDataReader reader = new EnumerableDataReader(sequence);

                    CreateBulkInsertTask(type.Name, reader, target);
                }

                PrepareDatabase(target.Schema);
            }
        }
Exemplo n.º 5
0
 public abstract void CreateBulkInsertTask(string table, EnumerableDataReader reader, ImportTarget target);