Revision: 5743
http://sourceforge.net/p/jump-pilot/code/5743
Author: michaudm
Date: 2018-04-07 08:49:08 +0000 (Sat, 07 Apr 2018)
Log Message:
-----------
Now, WritableDataStoreDataSource can have their own TransactionManager
Modified Paths:
--------------
core/trunk/src/org/openjump/OpenJumpConfiguration.java
core/trunk/src/org/openjump/core/ui/plugin/datastore/AddWritableDataStoreLayerWizard.java
core/trunk/src/org/openjump/core/ui/plugin/datastore/DataStoreDataSourceFactory.java
core/trunk/src/org/openjump/core/ui/plugin/datastore/SaveToDataStoreWizard.java
core/trunk/src/org/openjump/core/ui/plugin/datastore/WritableDataStoreDataSource.java
core/trunk/src/org/openjump/core/ui/plugin/datastore/h2/H2DataStoreDataSource.java
core/trunk/src/org/openjump/core/ui/plugin/datastore/postgis2/PostGISDataStoreDataSource.java
core/trunk/src/org/openjump/core/ui/plugin/datastore/transaction/DataStoreTransactionManager.java
core/trunk/src/org/openjump/core/ui/plugin/datastore/transaction/DataStoreTransactionManagerPlugIn.java
core/trunk/src/org/openjump/core/ui/plugin/datastore/transaction/Evolution.java
core/trunk/src/org/openjump/core/ui/plugin/datastore/transaction/TransactionManagerPanel.java
core/trunk/src/org/openjump/core/ui/plugin/file/SaveWizardPlugIn.java
Modified: core/trunk/src/org/openjump/OpenJumpConfiguration.java
===================================================================
--- core/trunk/src/org/openjump/OpenJumpConfiguration.java 2018-04-06
17:00:47 UTC (rev 5742)
+++ core/trunk/src/org/openjump/OpenJumpConfiguration.java 2018-04-07
08:49:08 UTC (rev 5743)
@@ -29,6 +29,7 @@
import org.openjump.core.ui.io.file.FileLayerLoader;
import org.openjump.core.ui.plugin.datastore.AddDataStoreLayerWizard;
import org.openjump.core.ui.plugin.datastore.AddWritableDataStoreLayerWizard;
+import
org.openjump.core.ui.plugin.datastore.transaction.DataStoreTransactionManager;
import org.openjump.core.ui.plugin.file.DataSourceQueryChooserOpenWizard;
import org.openjump.core.ui.plugin.file.OpenWizardPlugIn;
import org.openjump.core.ui.plugin.layer.pirolraster.RasterImageContextMenu;
@@ -145,8 +146,9 @@
OpenWizardPlugIn.addWizard(workbenchContext, addRasterImageLayerWizard);
// [mmichaud 2013-11-08] add new AddWritableDataStoreLayerWizard
- AddWritableDataStoreLayerWizard addWritableDataStoreLayerWizard = new
AddWritableDataStoreLayerWizard(
- workbenchContext);
+ AddWritableDataStoreLayerWizard addWritableDataStoreLayerWizard =
+ new AddWritableDataStoreLayerWizard(
+ workbenchContext,
DataStoreTransactionManager.getTransactionManager());
OpenWizardPlugIn.addWizard(workbenchContext,
addWritableDataStoreLayerWizard);
// [mmichaud 2012-09-01] changed how RasterImageLayerRendererFactory is
initialized to fix bug 3526653
Modified:
core/trunk/src/org/openjump/core/ui/plugin/datastore/AddWritableDataStoreLayerWizard.java
===================================================================
---
core/trunk/src/org/openjump/core/ui/plugin/datastore/AddWritableDataStoreLayerWizard.java
2018-04-06 17:00:47 UTC (rev 5742)
+++
core/trunk/src/org/openjump/core/ui/plugin/datastore/AddWritableDataStoreLayerWizard.java
2018-04-07 08:49:08 UTC (rev 5743)
@@ -3,7 +3,7 @@
import java.awt.Color;
import java.util.Collection;
-import javax.swing.SwingUtilities;
+import javax.swing.*;
import org.openjump.core.ccordsys.srid.SRIDStyle;
import
org.openjump.core.ui.plugin.datastore.transaction.DataStoreTransactionManager;
@@ -38,13 +38,32 @@
private AddWritableDataStoreLayerWizardPanel dataStoreWizardPanel;
+ private DataStoreTransactionManager txManager;
+
private WorkbenchContext workbenchContext;
private ChooseProjectPanel chooseProjectPanel;
- public AddWritableDataStoreLayerWizard(WorkbenchContext workbenchContext) {
+ public AddWritableDataStoreLayerWizard(
+ String name,
+ ImageIcon icon,
+ WorkbenchContext workbenchContext,
+ DataStoreTransactionManager txManager) {
+ super(name, icon,
+ AddWritableDataStoreLayerWizardPanel.class.getName());
+ this.txManager = txManager;
+ this.workbenchContext = workbenchContext;
+ dataStoreWizardPanel = new
AddWritableDataStoreLayerWizardPanel(workbenchContext);
+ addPanel(dataStoreWizardPanel);
+ chooseProjectPanel = new ChooseProjectPanel(workbenchContext,
dataStoreWizardPanel.getID());
+ addPanel(chooseProjectPanel);
+ }
+
+ public AddWritableDataStoreLayerWizard(WorkbenchContext workbenchContext,
+ DataStoreTransactionManager txManager) {
super(I18N.get(KEY), IconLoader.icon("database_writable_add.png"),
AddWritableDataStoreLayerWizardPanel.class.getName());
+ this.txManager = txManager;
this.workbenchContext = workbenchContext;
dataStoreWizardPanel = new
AddWritableDataStoreLayerWizardPanel(workbenchContext);
addPanel(dataStoreWizardPanel);
@@ -118,7 +137,8 @@
WritableDataStoreDataSource ds =
DataStoreDataSourceFactory.createWritableDataStoreDataSource(
connectionDescriptor, datasetName,
geometryAttributeName,
- identifierAttributeName, true, workbenchContext);
+ identifierAttributeName, true,
+ txManager, workbenchContext);
ds.setMaxFeature(limit);
ds.setWhereClause(whereClause);
ds.setLimitedToView(limitedToView);
@@ -157,7 +177,7 @@
layerManager.setFiringEvents(true); // added by michaudm on
2009-04-05
}
finally {layerManager.setFiringEvents(true);}
-
DataStoreTransactionManager.getTransactionManager().registerLayer(layer,
workbenchContext.getTask());
+ txManager.registerLayer(layer, workbenchContext.getTask());
return layer;
}
Modified:
core/trunk/src/org/openjump/core/ui/plugin/datastore/DataStoreDataSourceFactory.java
===================================================================
---
core/trunk/src/org/openjump/core/ui/plugin/datastore/DataStoreDataSourceFactory.java
2018-04-06 17:00:47 UTC (rev 5742)
+++
core/trunk/src/org/openjump/core/ui/plugin/datastore/DataStoreDataSourceFactory.java
2018-04-07 08:49:08 UTC (rev 5743)
@@ -5,6 +5,7 @@
import com.vividsolutions.jump.workbench.datastore.ConnectionDescriptor;
import org.openjump.core.ui.plugin.datastore.h2.H2DataStoreDataSource;
import
org.openjump.core.ui.plugin.datastore.postgis2.PostGISDataStoreDataSource;
+import
org.openjump.core.ui.plugin.datastore.transaction.DataStoreTransactionManager;
/**
* Factory to create WritableDataStoreDataSource fitting
@@ -20,16 +21,19 @@
String geometryAttributeName,
String externalPKName,
boolean tableAlreadyCreated,
+ DataStoreTransactionManager txManager,
WorkbenchContext context) throws Exception {
WritableDataStoreDataSource source;
String driverName = connectionDescriptor.getDataStoreDriverClassName();
if
(driverName.equals(com.vividsolutions.jump.datastore.postgis.PostgisDataStoreDriver.class.getName()))
{
source = new PostGISDataStoreDataSource(
- connectionDescriptor, datasetName, geometryAttributeName,
externalPKName, context);
+ connectionDescriptor, datasetName, geometryAttributeName,
externalPKName,
+ txManager, context);
source.setTableAlreadyCreated(tableAlreadyCreated);
} else if
(driverName.equals(com.vividsolutions.jump.datastore.h2.H2DataStoreDriver.class.getName()))
{
source = new H2DataStoreDataSource(
- connectionDescriptor, datasetName, geometryAttributeName,
externalPKName, context);
+ connectionDescriptor, datasetName, geometryAttributeName,
externalPKName,
+ txManager, context);
source.setTableAlreadyCreated(tableAlreadyCreated);
} else {
throw new Exception(I18N.getMessage(KEY +
".no-writable-datastore-datasource", driverName));
Modified:
core/trunk/src/org/openjump/core/ui/plugin/datastore/SaveToDataStoreWizard.java
===================================================================
---
core/trunk/src/org/openjump/core/ui/plugin/datastore/SaveToDataStoreWizard.java
2018-04-06 17:00:47 UTC (rev 5742)
+++
core/trunk/src/org/openjump/core/ui/plugin/datastore/SaveToDataStoreWizard.java
2018-04-07 08:49:08 UTC (rev 5743)
@@ -12,6 +12,7 @@
import com.vividsolutions.jump.workbench.ui.images.famfam.IconLoaderFamFam;
import com.vividsolutions.jump.workbench.ui.wizard.WizardDialog;
import org.openjump.core.ccordsys.srid.SRIDStyle;
+import
org.openjump.core.ui.plugin.datastore.transaction.DataStoreTransactionManager;
import org.openjump.core.ui.swing.wizard.AbstractWizardGroup;
@@ -23,13 +24,16 @@
/** The key for the wizard. */
public static final String KEY = SaveToDataStoreWizard.class.getName();
+ private DataStoreTransactionManager txManager;
+
/** The plugin context. */
private PlugInContext context;
//private File file;
- public SaveToDataStoreWizard(final PlugInContext context) {
+ public SaveToDataStoreWizard(final PlugInContext context,
DataStoreTransactionManager txManager) {
super(I18N.get(KEY), IconLoaderFamFam.icon("database_save.png"),
SaveToDataStorePanel.KEY);
+ this.txManager = txManager;
this.context = context;
}
@@ -64,6 +68,7 @@
geometryAttributeName,
WritableDataStoreDataSource.DEFAULT_PK_NAME,
false,
+ txManager,
context.getWorkbenchContext());
writableDS.getProperties().put(WritableDataStoreDataSource.CONNECTION_DESCRIPTOR_KEY,
Modified:
core/trunk/src/org/openjump/core/ui/plugin/datastore/WritableDataStoreDataSource.java
===================================================================
---
core/trunk/src/org/openjump/core/ui/plugin/datastore/WritableDataStoreDataSource.java
2018-04-06 17:00:47 UTC (rev 5742)
+++
core/trunk/src/org/openjump/core/ui/plugin/datastore/WritableDataStoreDataSource.java
2018-04-07 08:49:08 UTC (rev 5743)
@@ -67,6 +67,8 @@
// Map is indexed by FID in order to merge successive evolutions of a
feature efficiently
final private LinkedHashMap<Integer,Evolution> evolutions = new
LinkedHashMap<>();
+ private DataStoreTransactionManager txManager;
+
// See setTableAlreadyCreated()
private boolean tableAlreadyCreated = true;
@@ -92,6 +94,7 @@
String datasetName,
String geometryAttributeName,
String externalPKName,
+ DataStoreTransactionManager txManager,
WorkbenchContext context) {
setProperties(CollectionUtil.createMap(new Object[]{
CONNECTION_DESCRIPTOR_KEY, connectionDescriptor,
@@ -109,6 +112,7 @@
//getProperties().put(CREATE_TABLE, false);
getProperties().put(CREATE_PK, false);
getProperties().put(SRID_KEY, 0);
+ this.txManager = txManager;
this.context = context;
}
@@ -580,8 +584,9 @@
selectedLayers[0].setFeatureCollection(conn.executeQuery(null,
monitor));
// We connect to a new table : the transaction manager must
listen to it
if (!tableAlreadyCreated) {
-
DataStoreTransactionManager.getTransactionManager().registerLayer(selectedLayers[0],
- JUMPWorkbench.getInstance().getContext().getTask());
+
//DataStoreTransactionManager.getTransactionManager().registerLayer(selectedLayers[0],
+ txManager.registerLayer(selectedLayers[0],
+
JUMPWorkbench.getInstance().getContext().getTask());
tableAlreadyCreated = true;
}
} finally {
Modified:
core/trunk/src/org/openjump/core/ui/plugin/datastore/h2/H2DataStoreDataSource.java
===================================================================
---
core/trunk/src/org/openjump/core/ui/plugin/datastore/h2/H2DataStoreDataSource.java
2018-04-06 17:00:47 UTC (rev 5742)
+++
core/trunk/src/org/openjump/core/ui/plugin/datastore/h2/H2DataStoreDataSource.java
2018-04-07 08:49:08 UTC (rev 5743)
@@ -16,6 +16,7 @@
import com.vividsolutions.jump.workbench.WorkbenchContext;
import com.vividsolutions.jump.workbench.datastore.ConnectionDescriptor;
import org.openjump.core.ui.plugin.datastore.WritableDataStoreDataSource;
+import
org.openjump.core.ui.plugin.datastore.transaction.DataStoreTransactionManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
@@ -40,8 +41,11 @@
String datasetName,
String geometryAttributeName,
String identifierAttributeName,
+ DataStoreTransactionManager txManager,
WorkbenchContext context) {
- super(connectionDescriptor, datasetName, geometryAttributeName,
identifierAttributeName, context);
+ super(connectionDescriptor,
+ datasetName, geometryAttributeName, identifierAttributeName,
+ txManager, context);
}
/**
Modified:
core/trunk/src/org/openjump/core/ui/plugin/datastore/postgis2/PostGISDataStoreDataSource.java
===================================================================
---
core/trunk/src/org/openjump/core/ui/plugin/datastore/postgis2/PostGISDataStoreDataSource.java
2018-04-06 17:00:47 UTC (rev 5742)
+++
core/trunk/src/org/openjump/core/ui/plugin/datastore/postgis2/PostGISDataStoreDataSource.java
2018-04-07 08:49:08 UTC (rev 5743)
@@ -21,6 +21,7 @@
import com.vividsolutions.jump.io.FeatureInputStream;
import com.vividsolutions.jump.workbench.Logger;
import com.vividsolutions.jump.workbench.datastore.ConnectionDescriptor;
+import
org.openjump.core.ui.plugin.datastore.transaction.DataStoreTransactionManager;
/**
* A {@link WritableDataStoreDataSource} for PostGIS.
@@ -42,8 +43,11 @@
String datasetName,
String geometryAttributeName,
String identifierAttributeName,
+ DataStoreTransactionManager txManager,
WorkbenchContext context) {
- super(connectionDescriptor, datasetName, geometryAttributeName,
identifierAttributeName, context);
+ super(connectionDescriptor,
+ datasetName, geometryAttributeName, identifierAttributeName,
+ txManager, context);
}
/**
Modified:
core/trunk/src/org/openjump/core/ui/plugin/datastore/transaction/DataStoreTransactionManager.java
===================================================================
---
core/trunk/src/org/openjump/core/ui/plugin/datastore/transaction/DataStoreTransactionManager.java
2018-04-06 17:00:47 UTC (rev 5742)
+++
core/trunk/src/org/openjump/core/ui/plugin/datastore/transaction/DataStoreTransactionManager.java
2018-04-07 08:49:08 UTC (rev 5743)
@@ -39,15 +39,24 @@
final String KEY = DataStoreTransactionManager.class.getName();
- private static DataStoreTransactionManager TXMANAGER = new
DataStoreTransactionManager();
- private WeakHashMap<Layer,Task> registeredLayers = new WeakHashMap<Layer,
Task>();
- private WeakHashMap<Task,LayerListener> registeredListeners = new
WeakHashMap<Task, LayerListener>();
+ private static DataStoreTransactionManager TXMANAGER;
+ private WeakHashMap<Layer,Task> registeredLayers = new WeakHashMap<>();
+ private WeakHashMap<Task,LayerListener> registeredListeners = new
WeakHashMap<>();
/**
+ * Don't use this constructor. Use getTransactionManager instead.
+ * The constructor is made protected to be able to sublass it.
+ */
+ protected DataStoreTransactionManager() {}
+
+ /**
* Get the unique DataStoreTransactionManager.
* @return JUMPWorkbench's DataStoreTransactionManager
*/
public static DataStoreTransactionManager getTransactionManager() {
+ if (TXMANAGER == null) {
+ TXMANAGER = new DataStoreTransactionManager();
+ }
return TXMANAGER;
}
@@ -68,9 +77,9 @@
Logger.info("Register layer '" + layer.getName() + "' (" +
task.getName() + ") in the DataStoreTransactionManager");
}
- private boolean containsLayerManager(Task task) {
- return registeredLayers.containsValue(task);
- }
+ //private boolean containsLayerManager(Task task) {
+ // return registeredLayers.containsValue(task);
+ //}
private LayerListener getLayerListener() {
return new LayerAdapter() {
@@ -141,9 +150,9 @@
if (((Layer)
e.getLayerable()).getDataSourceQuery().getDataSource() instanceof
WritableDataStoreDataSource) {
((WritableDataStoreDataSource)((Layer)
e.getLayerable()).getDataSourceQuery().getDataSource()).getUncommittedEvolutions().clear();
}
+ registeredLayers.remove(e.getLayerable());
+ Logger.info("Unregister layer " +
e.getLayerable().getName() + " from the DataStoreTransactionManager");
}
- registeredLayers.remove(e.getLayerable());
- Logger.info("Unregister layer " +
e.getLayerable().getName() + " from the DataStoreTransactionManager");
}
}
};
@@ -161,7 +170,7 @@
}
public Collection<Layer> getLayers(Task task) {
- Collection<Layer> layers = new ArrayList<Layer>();
+ Collection<Layer> layers = new ArrayList<>();
for (Map.Entry<Layer,Task> entry : registeredLayers.entrySet()) {
if (entry.getValue() == task) layers.add(entry.getKey());
}
@@ -170,7 +179,7 @@
/**
* Commit all edits performed on this layer since last commit.
- * @param layer
+ * @param layer commit features from this layer
*/
private boolean commit(Layer layer) throws Exception {
DataSource source = layer.getDataSourceQuery().getDataSource();
@@ -195,13 +204,13 @@
/**
* Update this layer from the datasource
- * @param layer
+ * @param layer Layer to be updated
*/
private int update(TaskFrame taskFrame, Layer layer) {
DataSource source = layer.getDataSourceQuery().getDataSource();
if (source instanceof WritableDataStoreDataSource) {
WritableDataStoreDataSource writableSource =
(WritableDataStoreDataSource)source;
- int conflicts = 0;
+ int conflicts;
try {
Logger.info("Update layer \"" + layer.getName() + "\"");
FeatureCollection fc =
writableSource.getConnection().executeQuery(null, new DummyTaskMonitor());
@@ -324,7 +333,7 @@
String pk =
dataSource.getProperties().get(WritableDataStoreDataSource.EXTERNAL_PK_KEY).toString();
boolean manageConflicts =
(Boolean)dataSource.getProperties().get(WritableDataStoreDataSource.MANAGE_CONFLICTS);
int conflicts = 0;
- Collection toBeDeleted = new ArrayList();
+ Collection<Feature> toBeDeleted = new ArrayList<>();
for (Object feature : fc.getFeatures()) {
// For each feature of fc, check if this feature is also in the
table of current evolutions
// If a feature just updated from the server is still in the
evolution map, we may have
Modified:
core/trunk/src/org/openjump/core/ui/plugin/datastore/transaction/DataStoreTransactionManagerPlugIn.java
===================================================================
---
core/trunk/src/org/openjump/core/ui/plugin/datastore/transaction/DataStoreTransactionManagerPlugIn.java
2018-04-06 17:00:47 UTC (rev 5742)
+++
core/trunk/src/org/openjump/core/ui/plugin/datastore/transaction/DataStoreTransactionManagerPlugIn.java
2018-04-07 08:49:08 UTC (rev 5743)
@@ -39,14 +39,14 @@
private static final String KEY =
DataStoreTransactionManagerPlugIn.class.getName();
private static final String INSTANCE_KEY = KEY + " - INSTANCE";
- TransactionManagerPanel transactionManagerPanel;
- WorkbenchContext context;
+ private TransactionManagerPanel transactionManagerPanel;
+ private WorkbenchContext context;
public DataStoreTransactionManagerPlugIn() {
}
- public static final DataStoreTransactionManagerPlugIn instance(Blackboard
blackboard) {
+ public static DataStoreTransactionManagerPlugIn instance(Blackboard
blackboard) {
if (blackboard.get(INSTANCE_KEY) == null) {
blackboard.put(INSTANCE_KEY, new
DataStoreTransactionManagerPlugIn());
}
@@ -72,7 +72,7 @@
java.util.List<Layer> layers =
task.getLayerManager().getLayers();
for (Layer layer : layers) {
if (layer.getDataSourceQuery().getDataSource() instanceof
WritableDataStoreDataSource) {
-
DataStoreTransactionManager.getTransactionManager().registerLayer(layer, task);
+ getTransactionManager().registerLayer(layer, task);
}
}
addListenerToTaskFrame(task);
@@ -83,7 +83,7 @@
java.util.List<Layer> layers =
taskEvent.getTask().getLayerManager().getLayers();
for (Layer layer : layers) {
if (layer.getDataSourceQuery().getDataSource() instanceof
WritableDataStoreDataSource) {
-
DataStoreTransactionManager.getTransactionManager().registerLayer(layer, task);
+ getTransactionManager().registerLayer(layer, task);
}
}
addListenerToTaskFrame(task);
@@ -91,9 +91,13 @@
});
}
+ protected DataStoreTransactionManager getTransactionManager() {
+ return DataStoreTransactionManager.getTransactionManager();
+ }
+
protected void initializeToolbox(final ToolboxDialog toolbox) {
- DataStoreTransactionManager txManager =
DataStoreTransactionManager.getTransactionManager();
- transactionManagerPanel = new TransactionManagerPanel(txManager,
+ //DataStoreTransactionManager txManager =
DataStoreTransactionManager.getTransactionManager();
+ transactionManagerPanel = new
TransactionManagerPanel(getTransactionManager(),
toolbox.getContext().getErrorHandler(), toolbox.getContext());
//transactionManagerPanel.init(toolbox.getContext());
transactionManagerPanel.updateListener(toolbox.getContext().getTask());
@@ -128,7 +132,9 @@
public boolean execute(PlugInContext context) throws Exception {
boolean b = super.execute(context);
- if (transactionManagerPanel != null)
transactionManagerPanel.updateTextArea(context.getTask());
+ if (transactionManagerPanel != null) {
+ transactionManagerPanel.updateTextArea(context.getTask());
+ }
return b;
}
Modified:
core/trunk/src/org/openjump/core/ui/plugin/datastore/transaction/Evolution.java
===================================================================
---
core/trunk/src/org/openjump/core/ui/plugin/datastore/transaction/Evolution.java
2018-04-06 17:00:47 UTC (rev 5742)
+++
core/trunk/src/org/openjump/core/ui/plugin/datastore/transaction/Evolution.java
2018-04-07 08:49:08 UTC (rev 5743)
@@ -123,7 +123,7 @@
public String toString() {
if (type == Type.CREATION) return "Creation: fid=" +
newFeature.getID();
if (type == Type.SUPPRESSION) return "Suppression: fid=" +
oldFeature.getID();
- else return "Change from: fid=" + oldFeature.getID() + "to: fid=" +
newFeature.getID();
+ else return "Change from: fid=" + oldFeature.getID() + " to: fid=" +
newFeature.getID();
}
}
Modified:
core/trunk/src/org/openjump/core/ui/plugin/datastore/transaction/TransactionManagerPanel.java
===================================================================
---
core/trunk/src/org/openjump/core/ui/plugin/datastore/transaction/TransactionManagerPanel.java
2018-04-06 17:00:47 UTC (rev 5742)
+++
core/trunk/src/org/openjump/core/ui/plugin/datastore/transaction/TransactionManagerPanel.java
2018-04-07 08:49:08 UTC (rev 5743)
@@ -10,7 +10,6 @@
import javax.swing.BoxLayout;
import javax.swing.JButton;
import javax.swing.JInternalFrame;
-import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
@@ -42,14 +41,12 @@
private static final String KEY = TransactionManagerPanel.class.getName();
+ private final DataStoreTransactionManager transactionManager;
+ private final ErrorHandler errorHandler;
+ private final JTextArea textArea;
+ private LayerListener layerListener;
+ private WorkbenchContext context;
-
- final DataStoreTransactionManager transactionManager;
- final ErrorHandler errorHandler;
- final JTextArea textArea;
- LayerListener layerListener;
- WorkbenchContext context;
-
public TransactionManagerPanel(DataStoreTransactionManager
transactionManager,
ErrorHandler errorHandler, WorkbenchContext
context) {
this.transactionManager = transactionManager;
@@ -58,7 +55,7 @@
init(context);
}
- private void init(WorkbenchContext context) {
+ protected void init(WorkbenchContext context) {
this.context = context;
this.setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
textArea.setFont(textArea.getFont().deriveFont(11f));
Modified: core/trunk/src/org/openjump/core/ui/plugin/file/SaveWizardPlugIn.java
===================================================================
--- core/trunk/src/org/openjump/core/ui/plugin/file/SaveWizardPlugIn.java
2018-04-06 17:00:47 UTC (rev 5742)
+++ core/trunk/src/org/openjump/core/ui/plugin/file/SaveWizardPlugIn.java
2018-04-07 08:49:08 UTC (rev 5743)
@@ -7,6 +7,7 @@
import org.openjump.core.ui.plugin.AbstractThreadedUiPlugIn;
import org.openjump.core.ui.plugin.datastore.SaveToDataStoreWizard;
+import
org.openjump.core.ui.plugin.datastore.transaction.DataStoreTransactionManager;
import org.openjump.core.ui.plugin.file.save.SaveToFileWizard;
import org.openjump.core.ui.swing.wizard.WizardGroup;
import org.openjump.core.ui.swing.wizard.WizardGroupDialog;
@@ -66,7 +67,9 @@
addWizard(context.getWorkbenchContext(), new SaveToFileWizard(context));
// datastores are experimental for now
if (!JUMPVersion.getRelease().equalsIgnoreCase("release"))
- addWizard(context.getWorkbenchContext(), new
SaveToDataStoreWizard(context));
+ addWizard(context.getWorkbenchContext(),
+ new SaveToDataStoreWizard(context,
+ DataStoreTransactionManager.getTransactionManager()));
}
public boolean execute(PlugInContext pluginContext) throws Exception {
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Jump-pilot-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel