Skip to content

Commit 627fe69

Browse files
committed
initial commit
1 parent ad27355 commit 627fe69

File tree

5 files changed

+22
-14
lines changed

5 files changed

+22
-14
lines changed

data-loader/cli/src/main/java/com/scalar/db/dataloader/cli/command/dataexport/ExportCommand.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import static java.nio.file.StandardOpenOption.CREATE;
77

88
import com.scalar.db.api.DistributedStorage;
9+
import com.scalar.db.api.DistributedTransactionManager;
910
import com.scalar.db.api.TableMetadata;
1011
import com.scalar.db.dataloader.cli.exception.DirectoryValidationException;
1112
import com.scalar.db.dataloader.cli.util.DirectoryUtils;
@@ -36,6 +37,8 @@
3637
import java.util.List;
3738
import java.util.Objects;
3839
import java.util.concurrent.Callable;
40+
41+
import com.scalar.db.service.TransactionFactory;
3942
import org.apache.commons.lang3.StringUtils;
4043
import org.slf4j.Logger;
4144
import org.slf4j.LoggerFactory;
@@ -64,6 +67,7 @@ public Integer call() throws Exception {
6467
validatePositiveValue(spec.commandLine(), maxThreads, DataLoaderError.INVALID_MAX_THREADS);
6568

6669
StorageFactory storageFactory = StorageFactory.create(scalarDbPropertiesFilePath);
70+
TransactionFactory transactionFactory = TransactionFactory.create(scalarDbPropertiesFilePath)
6771
TableMetadataService metaDataService =
6872
new TableMetadataService(storageFactory.getStorageAdmin());
6973
ScalarDbDao scalarDbDao = new ScalarDbDao();
@@ -146,10 +150,10 @@ private void validateOutputDirectory() throws DirectoryValidationException {
146150
}
147151

148152
private ExportManager createExportManager(
149-
StorageFactory storageFactory, ScalarDbDao scalarDbDao, FileFormat fileFormat) {
153+
TransactionFactory transactionFactory, ScalarDbDao scalarDbDao, FileFormat fileFormat) {
150154
ProducerTaskFactory taskFactory =
151155
new ProducerTaskFactory(delimiter, includeTransactionMetadata, prettyPrintJson);
152-
DistributedStorage storage = storageFactory.getStorage();
156+
DistributedTransactionManager manager = transactionFactory.getTransactionManager();
153157
switch (fileFormat) {
154158
case JSON:
155159
return new JsonExportManager(storage, scalarDbDao, taskFactory);

data-loader/core/src/main/java/com/scalar/db/dataloader/core/dataexport/CsvExportManager.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.scalar.db.dataloader.core.dataexport;
22

33
import com.scalar.db.api.DistributedStorage;
4+
import com.scalar.db.api.DistributedTransactionManager;
45
import com.scalar.db.api.TableMetadata;
56
import com.scalar.db.dataloader.core.dataexport.producer.ProducerTaskFactory;
67
import com.scalar.db.dataloader.core.dataimport.dao.ScalarDbDao;
@@ -18,13 +19,13 @@ public class CsvExportManager extends ExportManager {
1819
* Constructs a {@code CsvExportManager} with the specified {@link DistributedStorage}, {@link
1920
* ScalarDbDao}, and {@link ProducerTaskFactory}.
2021
*
21-
* @param storage the {@code DistributedStorage} instance used to read data from the database
22+
* @param manager the {@code DistributedTransactionManager} instance used to read data from the database
2223
* @param dao the {@code ScalarDbDao} used to execute export-related database operations
2324
* @param producerTaskFactory the factory used to create producer tasks for exporting data
2425
*/
2526
public CsvExportManager(
26-
DistributedStorage storage, ScalarDbDao dao, ProducerTaskFactory producerTaskFactory) {
27-
super(storage, dao, producerTaskFactory);
27+
DistributedTransactionManager manager, ScalarDbDao dao, ProducerTaskFactory producerTaskFactory) {
28+
super(manager, dao, producerTaskFactory);
2829
}
2930

3031
/**

data-loader/core/src/main/java/com/scalar/db/dataloader/core/dataexport/ExportManager.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.scalar.db.dataloader.core.dataexport;
22

33
import com.scalar.db.api.DistributedStorage;
4+
import com.scalar.db.api.DistributedTransactionManager;
45
import com.scalar.db.api.Result;
56
import com.scalar.db.api.Scanner;
67
import com.scalar.db.api.TableMetadata;
@@ -34,7 +35,7 @@
3435
public abstract class ExportManager {
3536
private static final Logger logger = LoggerFactory.getLogger(ExportManager.class);
3637

37-
private final DistributedStorage storage;
38+
private final DistributedTransactionManager distributedTransactionManager;
3839
private final ScalarDbDao dao;
3940
private final ProducerTaskFactory producerTaskFactory;
4041
private final Object lock = new Object();

data-loader/core/src/main/java/com/scalar/db/dataloader/core/dataexport/JsonExportManager.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.scalar.db.dataloader.core.dataexport;
22

33
import com.scalar.db.api.DistributedStorage;
4+
import com.scalar.db.api.DistributedTransactionManager;
45
import com.scalar.db.api.TableMetadata;
56
import com.scalar.db.dataloader.core.dataexport.producer.ProducerTaskFactory;
67
import com.scalar.db.dataloader.core.dataimport.dao.ScalarDbDao;
@@ -11,16 +12,16 @@
1112
public class JsonExportManager extends ExportManager {
1213

1314
/**
14-
* Constructs a {@code JsonExportManager} with the specified {@link DistributedStorage}, {@link
15+
* Constructs a {@code JsonExportManager} with the specified {@link DistributedTransactionManager}, {@link
1516
* ScalarDbDao}, and {@link ProducerTaskFactory}.
1617
*
17-
* @param storage the {@code DistributedStorage} instance used to read data from the database
18+
* @param manager the {@code DistributedTransactionManager} instance used to read data from the database
1819
* @param dao the {@code ScalarDbDao} used to execute export-related database operations
1920
* @param producerTaskFactory the factory used to create producer tasks for exporting data
2021
*/
2122
public JsonExportManager(
22-
DistributedStorage storage, ScalarDbDao dao, ProducerTaskFactory producerTaskFactory) {
23-
super(storage, dao, producerTaskFactory);
23+
DistributedTransactionManager manager, ScalarDbDao dao, ProducerTaskFactory producerTaskFactory) {
24+
super(manager, dao, producerTaskFactory);
2425
}
2526

2627
/**

data-loader/core/src/main/java/com/scalar/db/dataloader/core/dataexport/JsonLineExportManager.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.scalar.db.dataloader.core.dataexport;
22

33
import com.scalar.db.api.DistributedStorage;
4+
import com.scalar.db.api.DistributedTransactionManager;
45
import com.scalar.db.api.TableMetadata;
56
import com.scalar.db.dataloader.core.dataexport.producer.ProducerTaskFactory;
67
import com.scalar.db.dataloader.core.dataimport.dao.ScalarDbDao;
@@ -13,16 +14,16 @@
1314
public class JsonLineExportManager extends ExportManager {
1415

1516
/**
16-
* Constructs a {@code JsonLineExportManager} with the specified {@link DistributedStorage},
17+
* Constructs a {@code JsonLineExportManager} with the specified {@link DistributedTransactionManager},
1718
* {@link ScalarDbDao}, and {@link ProducerTaskFactory}.
1819
*
19-
* @param storage the {@code DistributedStorage} instance used to read data from the database
20+
* @param manager the {@code DistributedTransactionManager} instance used to read data from the database
2021
* @param dao the {@code ScalarDbDao} used to execute export-related database operations
2122
* @param producerTaskFactory the factory used to create producer tasks for exporting data
2223
*/
2324
public JsonLineExportManager(
24-
DistributedStorage storage, ScalarDbDao dao, ProducerTaskFactory producerTaskFactory) {
25-
super(storage, dao, producerTaskFactory);
25+
DistributedTransactionManager manager, ScalarDbDao dao, ProducerTaskFactory producerTaskFactory) {
26+
super(manager, dao, producerTaskFactory);
2627
}
2728

2829
/**

0 commit comments

Comments
 (0)