예제 #1
0
        public override void Run()
        {
            if (EdgeKey == null)
            {
                // the root level of a schema is fetched from credential files
                var staticRow = SchemaLoader.ParseCredentials <JObject>(Schema.Name);
                FetchDetailsOfRow(Schema, staticRow);
            }
            else
            {
                // non root level are fetched from the API
                var table = Schema.Edges[EdgeKey];

                var tableRows = Fetcher.FetchAllEntitiesOnTable(table, Logger, Configuration.MaxEntities).AsParallel().WithDegreeOfParallelism(Schema.Threads);
                tableRows.ForAll(row => FetchDetailsOfRow(table, row));
            }
        }