未验证 提交 2e83ed1a 编写于 作者: S Serge Rider 提交者: GitHub

Merge pull request #2988 from dbeaver/#1599-mock-data_13

#1599 Mock Data. Advanced Mock Data plugin support.
......@@ -24,7 +24,6 @@ import org.eclipse.ui.IImportWizard;
import org.eclipse.ui.IWorkbench;
import org.jkiss.dbeaver.DBException;
import org.jkiss.dbeaver.Log;
import org.jkiss.dbeaver.core.DBeaverUI;
import org.jkiss.dbeaver.ext.mockdata.model.MockGeneratorDescriptor;
import org.jkiss.dbeaver.ext.mockdata.model.MockValueGenerator;
import org.jkiss.dbeaver.model.DBUtils;
......@@ -42,6 +41,7 @@ import org.jkiss.dbeaver.model.struct.DBSEntity;
import org.jkiss.dbeaver.ui.UIUtils;
import org.jkiss.dbeaver.ui.dialogs.tools.AbstractToolWizard;
import java.io.IOException;
import java.util.*;
public class MockDataExecuteWizard extends AbstractToolWizard<DBSDataManipulator, DBSDataManipulator> implements IImportWizard{
......@@ -138,7 +138,7 @@ public class MockDataExecuteWizard extends AbstractToolWizard<DBSDataManipulato
private Map<String, MockValueGenerator> generators = new HashMap<>();
@Override
public boolean executeProcess(DBRProgressMonitor monitor, DBSDataManipulator dataManipulator) {
public boolean executeProcess(DBRProgressMonitor monitor, DBSDataManipulator dataManipulator) throws IOException {
DBCExecutionContext context = dataManipulator.getDataSource().getDefaultContext(true);
DBCSession session = context.openSession(monitor, DBCExecutionPurpose.USER, MockDataMessages.tools_mockdata_generate_data_task);
......
......@@ -8,8 +8,8 @@ import org.jkiss.dbeaver.model.data.DBDLabelValuePair;
import org.jkiss.dbeaver.model.exec.DBCSession;
import org.jkiss.dbeaver.model.runtime.DBRProgressMonitor;
import org.jkiss.dbeaver.model.struct.*;
import org.jkiss.utils.CommonUtils;
import java.io.IOException;
import java.util.*;
public abstract class AbstractMockValueGenerator implements MockValueGenerator {
......@@ -66,7 +66,7 @@ public abstract class AbstractMockValueGenerator implements MockValueGenerator {
}
@Override
public Object generateValue(DBRProgressMonitor monitor) throws DBException {
public Object generateValue(DBRProgressMonitor monitor) throws DBException, IOException {
if (isFirstRun) {
isFirstRun = false;
isUnique = checkUnique(monitor);
......@@ -91,7 +91,7 @@ public abstract class AbstractMockValueGenerator implements MockValueGenerator {
}
}
protected abstract Object generateOneValue(DBRProgressMonitor monitor) throws DBException;
protected abstract Object generateOneValue(DBRProgressMonitor monitor) throws DBException, IOException;
protected boolean isGenerateNULL() {
if ((nullsPersent > 0) && ((nullsPersent == 100) || (random.nextInt(100) <= nullsPersent))) {
......
......@@ -20,10 +20,12 @@ package org.jkiss.dbeaver.ext.mockdata.generator;
import org.jkiss.dbeaver.DBException;
import org.jkiss.dbeaver.model.runtime.DBRProgressMonitor;
import java.io.IOException;
public class BooleanRandomGenerator extends AbstractMockValueGenerator {
@Override
public Object generateOneValue(DBRProgressMonitor monitor) throws DBException {
public Object generateOneValue(DBRProgressMonitor monitor) throws DBException, IOException {
if (isGenerateNULL()) {
return null;
} else {
......
......@@ -22,6 +22,7 @@ import org.jkiss.dbeaver.model.runtime.DBRProgressMonitor;
import org.jkiss.dbeaver.model.struct.DBSAttributeBase;
import org.jkiss.dbeaver.model.struct.DBSDataManipulator;
import java.io.IOException;
import java.util.Map;
public class BooleanSequenceGenerator extends AbstractMockValueGenerator {
......@@ -49,7 +50,7 @@ public class BooleanSequenceGenerator extends AbstractMockValueGenerator {
}
@Override
public Object generateOneValue(DBRProgressMonitor monitor) throws DBException {
public Object generateOneValue(DBRProgressMonitor monitor) throws DBException, IOException {
if (isGenerateNULL()) {
return null;
} else {
......
......@@ -23,6 +23,7 @@ import org.jkiss.dbeaver.model.runtime.DBRProgressMonitor;
import org.jkiss.dbeaver.model.struct.DBSAttributeBase;
import org.jkiss.dbeaver.model.struct.DBSDataManipulator;
import java.io.IOException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
......@@ -76,7 +77,7 @@ public class DateRandomGenerator extends AbstractMockValueGenerator {
}
@Override
public Object generateOneValue(DBRProgressMonitor monitor) throws DBException {
public Object generateOneValue(DBRProgressMonitor monitor) throws DBException, IOException {
if (isGenerateNULL()) {
return null;
} else {
......
......@@ -23,6 +23,7 @@ import org.jkiss.dbeaver.model.runtime.DBRProgressMonitor;
import org.jkiss.dbeaver.model.struct.DBSAttributeBase;
import org.jkiss.dbeaver.model.struct.DBSDataManipulator;
import java.io.IOException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
......@@ -70,7 +71,7 @@ public class DateSequenceGenerator extends AbstractMockValueGenerator {
}
@Override
public Object generateOneValue(DBRProgressMonitor monitor) throws DBException {
public Object generateOneValue(DBRProgressMonitor monitor) throws DBException, IOException {
if (isGenerateNULL()) {
return null;
} else {
......
......@@ -24,6 +24,7 @@ import org.jkiss.dbeaver.model.runtime.DBRProgressMonitor;
import org.jkiss.dbeaver.model.struct.*;
import org.jkiss.dbeaver.model.struct.rdb.DBSTableForeignKeyColumn;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
......@@ -47,7 +48,7 @@ public class FKGenerator extends AbstractMockValueGenerator {
}
@Override
public Object generateOneValue(DBRProgressMonitor monitor) throws DBException {
public Object generateOneValue(DBRProgressMonitor monitor) throws DBException, IOException {
if (refValues == null) {
refValues = new ArrayList<>();
List<DBSEntityReferrer> attributeReferrers = DBUtils.getAttributeReferrers(monitor, (DBSEntityAttribute) attribute);
......
......@@ -20,12 +20,13 @@ package org.jkiss.dbeaver.ext.mockdata.generator;
import org.jkiss.dbeaver.DBException;
import org.jkiss.dbeaver.model.runtime.DBRProgressMonitor;
import java.io.IOException;
import java.math.BigDecimal;
public class NumericRandomGenerator extends AbstractMockValueGenerator {
@Override
public Object generateOneValue(DBRProgressMonitor monitor) throws DBException {
public Object generateOneValue(DBRProgressMonitor monitor) throws DBException, IOException {
if (isGenerateNULL()) {
return null;
} else {
......
......@@ -22,6 +22,7 @@ import org.jkiss.dbeaver.model.runtime.DBRProgressMonitor;
import org.jkiss.dbeaver.model.struct.DBSAttributeBase;
import org.jkiss.dbeaver.model.struct.DBSDataManipulator;
import java.io.IOException;
import java.util.Map;
public class NumericSequenceGenerator extends AbstractMockValueGenerator {
......@@ -51,7 +52,7 @@ public class NumericSequenceGenerator extends AbstractMockValueGenerator {
}
@Override
public Object generateOneValue(DBRProgressMonitor monitor) throws DBException {
public Object generateOneValue(DBRProgressMonitor monitor) throws DBException, IOException {
if (isGenerateNULL()) {
return null;
} else {
......
......@@ -24,6 +24,7 @@ import org.jkiss.dbeaver.model.struct.DBSAttributeBase;
import org.jkiss.dbeaver.model.struct.DBSDataManipulator;
import org.jkiss.utils.CommonUtils;
import java.io.IOException;
import java.util.Map;
/**
......@@ -68,7 +69,7 @@ public class StringTextGenerator extends AbstractMockValueGenerator {
}
@Override
public Object generateOneValue(DBRProgressMonitor monitor) throws DBException {
public Object generateOneValue(DBRProgressMonitor monitor) throws DBException, IOException {
if (isGenerateNULL()) {
return null;
} else {
......
......@@ -20,12 +20,13 @@ package org.jkiss.dbeaver.ext.mockdata.generator;
import org.jkiss.dbeaver.DBException;
import org.jkiss.dbeaver.model.runtime.DBRProgressMonitor;
import java.io.IOException;
import java.util.UUID;
public class StringUuidGenerator extends AbstractMockValueGenerator {
@Override
public Object generateOneValue(DBRProgressMonitor monitor) throws DBException {
public Object generateOneValue(DBRProgressMonitor monitor) throws DBException, IOException {
if (isGenerateNULL()) {
return null;
} else {
......
......@@ -22,6 +22,7 @@ import org.jkiss.dbeaver.model.runtime.DBRProgressMonitor;
import org.jkiss.dbeaver.model.struct.DBSAttributeBase;
import org.jkiss.dbeaver.model.struct.DBSDataManipulator;
import java.io.IOException;
import java.util.Map;
/**
......@@ -34,7 +35,7 @@ public interface MockValueGenerator {
void nextRow();
Object generateValue(DBRProgressMonitor monitor)
throws DBException;
throws DBException, IOException;
void dispose();
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册