This is an automated email from the ASF dual-hosted git repository.

asf-gitbox-commits pushed a commit to branch past-M2
in repository https://gitbox.apache.org/repos/asf/cayenne.git

commit 76dd1d7035554f4a2d692458e7ea2b80e8d0a23b
Author: Andrus Adamchik <[email protected]>
AuthorDate: Sun Jun 7 12:26:12 2026 -0400

    Getting rid of DataDomain "properties"
---
 .../java/org/apache/cayenne/access/DataDomain.java |  57 +---
 .../configuration/runtime/DataDomainProvider.java  | 295 +++++++++++----------
 .../java/org/apache/cayenne/query/QueryChain.java  |   1 -
 .../cayenne/access/DataContextSerializationIT.java |   3 +-
 .../org/apache/cayenne/access/DataDomainIT.java    |  38 +--
 5 files changed, 165 insertions(+), 229 deletions(-)

diff --git a/cayenne/src/main/java/org/apache/cayenne/access/DataDomain.java 
b/cayenne/src/main/java/org/apache/cayenne/access/DataDomain.java
index e4774de8f..9f963ae5e 100644
--- a/cayenne/src/main/java/org/apache/cayenne/access/DataDomain.java
+++ b/cayenne/src/main/java/org/apache/cayenne/access/DataDomain.java
@@ -49,7 +49,6 @@ import org.apache.cayenne.util.ToStringBuilder;
 
 import java.util.Collection;
 import java.util.Collections;
-import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
@@ -116,7 +115,6 @@ public class DataDomain implements DataChannel {
     protected Map<String, DataNode> nodes;
     protected Map<String, DataNode> nodesByDataMapName;
     protected DataNode defaultNode;
-    protected Map<String, String> properties;
 
     protected EntityResolver entityResolver;
     protected DataRowStore sharedSnapshotCache;
@@ -147,20 +145,6 @@ public class DataDomain implements DataChannel {
         resetProperties();
     }
 
-    /**
-     * Creates new DataDomain.
-     *
-     * @param name       DataDomain name. Domain can be located using its name 
in the
-     *                   Configuration object.
-     * @param properties A Map containing domain configuration properties.
-     * @deprecated since 4.0 unused
-     */
-    @Deprecated
-    public DataDomain(String name, Map<String, String> properties) {
-        init(name);
-        initWithProperties(properties);
-    }
-
     private void init(String name) {
 
         this.queryFilters = new CopyOnWriteArrayList<>();
@@ -168,11 +152,6 @@ public class DataDomain implements DataChannel {
         this.nodesByDataMapName = new ConcurrentHashMap<>();
         this.nodes = new ConcurrentHashMap<>();
 
-        // properties are read-only, so no need for concurrent map, or any
-        // specific map
-        // for that matter
-        this.properties = Collections.emptyMap();
-
         setName(name);
     }
 
@@ -204,39 +183,15 @@ public class DataDomain implements DataChannel {
     }
 
     /**
+     * Resets the domain's behavioral flags to their defaults.
+     *
      * @since 1.1
      */
     protected void resetProperties() {
-        properties = Collections.emptyMap();
-
         sharedCacheEnabled = SHARED_CACHE_ENABLED_DEFAULT;
         validatingObjectsOnCommit = VALIDATING_OBJECTS_ON_COMMIT_DEFAULT;
     }
 
-    /**
-     * Reinitializes domain state with a new set of properties.
-     *
-     * @since 1.1
-     * @deprecated since 4.0 properties are processed by the DI provider.
-     */
-    @Deprecated
-    public void initWithProperties(Map<String, String> properties) {
-
-        // clone properties to ensure that it is read-only internally
-        properties = properties != null ? new HashMap<>(properties) : 
Collections.emptyMap();
-
-        String sharedCacheEnabled = 
properties.get(SHARED_CACHE_ENABLED_PROPERTY);
-        String validatingObjectsOnCommit = 
properties.get(VALIDATING_OBJECTS_ON_COMMIT_PROPERTY);
-
-        // init ivars from properties
-        this.sharedCacheEnabled = (sharedCacheEnabled != null) ? 
"true".equalsIgnoreCase(sharedCacheEnabled)
-                : SHARED_CACHE_ENABLED_DEFAULT;
-        this.validatingObjectsOnCommit = (validatingObjectsOnCommit != null) ? 
"true"
-                .equalsIgnoreCase(validatingObjectsOnCommit) : 
VALIDATING_OBJECTS_ON_COMMIT_DEFAULT;
-
-        this.properties = properties;
-    }
-
     /**
      * Returns EventManager used by this DataDomain.
      *
@@ -310,14 +265,6 @@ public class DataDomain implements DataChannel {
         this.validatingObjectsOnCommit = flag;
     }
 
-    /**
-     * @return a Map of properties for this DataDomain.
-     * @since 1.1
-     */
-    public Map<String, String> getProperties() {
-        return properties;
-    }
-
     /**
      * Returns snapshots cache for this DataDomain, lazily initializing it on
      * the first call if 'sharedCacheEnabled' flag is true.
diff --git 
a/cayenne/src/main/java/org/apache/cayenne/configuration/runtime/DataDomainProvider.java
 
b/cayenne/src/main/java/org/apache/cayenne/configuration/runtime/DataDomainProvider.java
index 690474792..81831d606 100644
--- 
a/cayenne/src/main/java/org/apache/cayenne/configuration/runtime/DataDomainProvider.java
+++ 
b/cayenne/src/main/java/org/apache/cayenne/configuration/runtime/DataDomainProvider.java
@@ -50,211 +50,218 @@ import org.slf4j.LoggerFactory;
 
 import java.util.Collection;
 import java.util.List;
+import java.util.Map;
 
 /**
  * A {@link DataChannel} provider that provides a single instance of DataDomain
  * configured per configuration supplied via injected
  * {@link DataChannelDescriptorLoader}.
- * 
+ *
  * @since 3.1
  */
 public class DataDomainProvider implements Provider<DataDomain> {
 
-       private static final Logger logger = 
LoggerFactory.getLogger(DataDomainProvider.class);
+    private static final Logger logger = 
LoggerFactory.getLogger(DataDomainProvider.class);
 
-       @Inject
-       protected ResourceLocator resourceLocator;
+    @Inject
+    protected ResourceLocator resourceLocator;
 
-       @Inject
-       protected DataChannelDescriptorMerger descriptorMerger;
+    @Inject
+    protected DataChannelDescriptorMerger descriptorMerger;
 
-       @Inject
-       protected DataChannelDescriptorLoader loader;
+    @Inject
+    protected DataChannelDescriptorLoader loader;
 
-       /**
-        * @since 4.1
-        */
-       @Inject
-       protected List<DataChannelQueryFilter> queryFilters;
+    /**
+     * @since 4.1
+     */
+    @Inject
+    protected List<DataChannelQueryFilter> queryFilters;
 
-       /**
-        * @since 4.1
-        */
-       @Inject
-       protected List<DataChannelSyncFilter> syncFilters;
+    /**
+     * @since 4.1
+     */
+    @Inject
+    protected List<DataChannelSyncFilter> syncFilters;
 
-       @Inject(Constants.DOMAIN_LISTENERS_LIST)
-       protected List<Object> listeners;
+    @Inject(Constants.DOMAIN_LISTENERS_LIST)
+    protected List<Object> listeners;
 
-       @Inject(Constants.PROJECT_LOCATIONS_LIST)
-       protected List<String> locations;
+    @Inject(Constants.PROJECT_LOCATIONS_LIST)
+    protected List<String> locations;
 
-       @Inject
-       protected Injector injector;
+    @Inject
+    protected Injector injector;
 
-       @Inject
-       protected QueryCache queryCache;
+    @Inject
+    protected QueryCache queryCache;
 
-       @Inject
-       protected RuntimeProperties runtimeProperties;
+    @Inject
+    protected RuntimeProperties runtimeProperties;
 
-       @Inject
-       protected DataNodeFactory dataNodeFactory;
+    @Inject
+    protected DataNodeFactory dataNodeFactory;
 
-       @Override
-       public DataDomain get() throws ConfigurationException {
+    @Override
+    public DataDomain get() throws ConfigurationException {
 
-               try {
-                       return createAndInitDataDomain();
-               } catch (ConfigurationException e) {
-                       throw e;
-               } catch (Exception e) {
-                       String causeMessage = e.getMessage();
-                       String message = causeMessage != null && 
causeMessage.length() > 0 ? causeMessage : e.getClass().getName();
-                       throw new DataDomainLoadException("DataDomain startup 
failed: %s", e, message);
-               }
-       }
+        try {
+            return createAndInitDataDomain();
+        } catch (ConfigurationException e) {
+            throw e;
+        } catch (Exception e) {
+            String causeMessage = e.getMessage();
+            String message = causeMessage != null && !causeMessage.isEmpty() ? 
causeMessage : e.getClass().getName();
+            throw new DataDomainLoadException("DataDomain startup failed: %s", 
e, message);
+        }
+    }
 
-       protected DataDomain createDataDomain(String name) {
-               return new DataDomain(name);
-       }
+    protected DataDomain createDataDomain(String name) {
+        return new DataDomain(name);
+    }
 
-       @SuppressWarnings("deprecation")
-       protected DataDomain createAndInitDataDomain() throws Exception {
+    protected DataDomain createAndInitDataDomain() throws Exception {
 
-               DataChannelDescriptor descriptor = loadDescriptor();
+        DataChannelDescriptor descriptor = loadDescriptor();
 
-               DataDomain dataDomain = createDataDomain(descriptor.getName());
+        DataDomain dataDomain = createDataDomain(descriptor.getName());
 
-               
dataDomain.setMaxIdQualifierSize(runtimeProperties.getInt(Constants.MAX_ID_QUALIFIER_SIZE_PROPERTY,
 -1));
+        
dataDomain.setMaxIdQualifierSize(runtimeProperties.getInt(Constants.MAX_ID_QUALIFIER_SIZE_PROPERTY,
 -1));
 
-               dataDomain.setQueryCache(new NestedQueryCache(queryCache));
-               
dataDomain.setEntitySorter(injector.getInstance(EntitySorter.class));
-               
dataDomain.setEventManager(injector.getInstance(EventManager.class));
-               
dataDomain.setDataRowStoreFactory(injector.getInstance(DataRowStoreFactory.class));
+        dataDomain.setQueryCache(new NestedQueryCache(queryCache));
+        dataDomain.setEntitySorter(injector.getInstance(EntitySorter.class));
+        dataDomain.setEventManager(injector.getInstance(EventManager.class));
+        
dataDomain.setDataRowStoreFactory(injector.getInstance(DataRowStoreFactory.class));
 
-               dataDomain.initWithProperties(descriptor.getProperties());
+        Map<String, String> properties = descriptor.getProperties();
+        if 
("true".equalsIgnoreCase(properties.get(DataDomain.SHARED_CACHE_ENABLED_PROPERTY)))
 {
+            dataDomain.setSharedCacheEnabled(true);
+        }
 
-               for (DataMap dataMap : descriptor.getDataMaps()) {
-                       dataDomain.addDataMap(dataMap);
-               }
+        if 
("true".equalsIgnoreCase(properties.get(DataDomain.VALIDATING_OBJECTS_ON_COMMIT_PROPERTY)))
 {
+            dataDomain.setValidatingObjectsOnCommit(true);
+        }
 
-               dataDomain.getEntityResolver().applyDBLayerDefaults();
-               
dataDomain.getEntityResolver().setValueObjectTypeRegistry(injector.getInstance(ValueObjectTypeRegistry.class));
-               
dataDomain.getEntityResolver().setValueComparisonStrategyFactory(injector.getInstance(ValueComparisonStrategyFactory.class));
-               
dataDomain.getEntityResolver().setObjectFactory(injector.getInstance(AdhocObjectFactory.class));
+        for (DataMap dataMap : descriptor.getDataMaps()) {
+            dataDomain.addDataMap(dataMap);
+        }
 
-               for (DataNodeDescriptor nodeDescriptor : 
descriptor.getNodeDescriptors()) {
-                       addDataNode(dataDomain, nodeDescriptor);
-               }
+        dataDomain.getEntityResolver().applyDBLayerDefaults();
+        
dataDomain.getEntityResolver().setValueObjectTypeRegistry(injector.getInstance(ValueObjectTypeRegistry.class));
+        
dataDomain.getEntityResolver().setValueComparisonStrategyFactory(injector.getInstance(ValueComparisonStrategyFactory.class));
+        
dataDomain.getEntityResolver().setObjectFactory(injector.getInstance(AdhocObjectFactory.class));
 
-               // init default node
-               DataNode defaultNode = null;
+        for (DataNodeDescriptor nodeDescriptor : 
descriptor.getNodeDescriptors()) {
+            addDataNode(dataDomain, nodeDescriptor);
+        }
 
-               if (descriptor.getDefaultNodeName() != null) {
-                       defaultNode = 
dataDomain.getDataNode(descriptor.getDefaultNodeName());
-               }
+        // init default node
+        DataNode defaultNode = null;
 
-               if (defaultNode == null) {
-                       Collection<DataNode> allNodes = 
dataDomain.getDataNodes();
-                       if (allNodes.size() == 1) {
-                               defaultNode = allNodes.iterator().next();
-                       }
-               }
+        if (descriptor.getDefaultNodeName() != null) {
+            defaultNode = 
dataDomain.getDataNode(descriptor.getDefaultNodeName());
+        }
 
-               if (defaultNode != null) {
-                       logger.info("setting DataNode '" + 
defaultNode.getName() + "' as default, used by all unlinked DataMaps");
+        if (defaultNode == null) {
+            Collection<DataNode> allNodes = dataDomain.getDataNodes();
+            if (allNodes.size() == 1) {
+                defaultNode = allNodes.iterator().next();
+            }
+        }
 
-                       dataDomain.setDefaultNode(defaultNode);
-               }
+        if (defaultNode != null) {
+            logger.info("setting DataNode '" + defaultNode.getName() + "' as 
default, used by all unlinked DataMaps");
 
-               for (DataChannelQueryFilter filter : queryFilters) {
-                       dataDomain.addQueryFilter(filter);
-               }
+            dataDomain.setDefaultNode(defaultNode);
+        }
 
-               for (DataChannelSyncFilter filter : syncFilters) {
-                       dataDomain.addSyncFilter(filter);
-               }
+        for (DataChannelQueryFilter filter : queryFilters) {
+            dataDomain.addQueryFilter(filter);
+        }
 
-               for (Object listener : listeners) {
-                       dataDomain.addListener(listener);
-               }
+        for (DataChannelSyncFilter filter : syncFilters) {
+            dataDomain.addSyncFilter(filter);
+        }
 
-               return dataDomain;
-       }
+        for (Object listener : listeners) {
+            dataDomain.addListener(listener);
+        }
 
-       /**
-        * @since 4.0
+        return dataDomain;
+    }
+
+    /**
+     * @since 4.0
      */
-       protected DataChannelDescriptor loadDescriptor() {
-               DataChannelDescriptor descriptor = locations.isEmpty() ? new 
DataChannelDescriptor() : loadDescriptorFromConfigs();
+    protected DataChannelDescriptor loadDescriptor() {
+        DataChannelDescriptor descriptor = locations.isEmpty() ? new 
DataChannelDescriptor() : loadDescriptorFromConfigs();
 
-               String nameOverride = 
runtimeProperties.get(Constants.DOMAIN_NAME_PROPERTY);
-               if (nameOverride != null) {
-                       descriptor.setName(nameOverride);
-               }
+        String nameOverride = 
runtimeProperties.get(Constants.DOMAIN_NAME_PROPERTY);
+        if (nameOverride != null) {
+            descriptor.setName(nameOverride);
+        }
 
-               return descriptor;
-       }
+        return descriptor;
+    }
 
-       /**
-        * @since 4.0
-        */
-       protected DataNode addDataNode(DataDomain dataDomain, 
DataNodeDescriptor nodeDescriptor) throws Exception {
-               DataNode dataNode = 
dataNodeFactory.createDataNode(nodeDescriptor);
+    /**
+     * @since 4.0
+     */
+    protected DataNode addDataNode(DataDomain dataDomain, DataNodeDescriptor 
nodeDescriptor) throws Exception {
+        DataNode dataNode = dataNodeFactory.createDataNode(nodeDescriptor);
 
-               // DataMaps
-               for (String dataMapName : nodeDescriptor.getDataMapNames()) {
-                       dataNode.addDataMap(dataDomain.getDataMap(dataMapName));
-               }
+        // DataMaps
+        for (String dataMapName : nodeDescriptor.getDataMapNames()) {
+            dataNode.addDataMap(dataDomain.getDataMap(dataMapName));
+        }
 
-               dataDomain.addNode(dataNode);
-               return dataNode;
-       }
+        dataDomain.addNode(dataNode);
+        return dataNode;
+    }
 
-       private DataChannelDescriptor loadDescriptorFromConfigs() {
+    private DataChannelDescriptor loadDescriptorFromConfigs() {
 
-               long t0 = System.currentTimeMillis();
+        long t0 = System.currentTimeMillis();
 
-               if (logger.isDebugEnabled()) {
-                       logger.debug("starting configuration loading: " + 
locations);
-               }
+        if (logger.isDebugEnabled()) {
+            logger.debug("starting configuration loading: " + locations);
+        }
 
-               DataChannelDescriptor[] descriptors = new 
DataChannelDescriptor[locations.size()];
+        DataChannelDescriptor[] descriptors = new 
DataChannelDescriptor[locations.size()];
 
-               for (int i = 0; i < locations.size(); i++) {
+        for (int i = 0; i < locations.size(); i++) {
 
-                       String location = locations.get(i);
+            String location = locations.get(i);
 
-                       Collection<Resource> configurations = 
resourceLocator.findResources(location);
+            Collection<Resource> configurations = 
resourceLocator.findResources(location);
 
-                       if (configurations.isEmpty()) {
-                               throw new 
DataDomainLoadException("Configuration resource \"%s\" is not found.", 
location);
-                       }
+            if (configurations.isEmpty()) {
+                throw new DataDomainLoadException("Configuration resource 
\"%s\" is not found.", location);
+            }
 
-                       Resource configurationResource = 
configurations.iterator().next();
+            Resource configurationResource = configurations.iterator().next();
 
-                       // no support for multiple configs yet, but this is not 
a hard error
-                       if (configurations.size() > 1) {
-                               logger.info("found " + configurations.size() + 
" configurations for " + location
-                                               + ", will use the first one: " 
+ configurationResource.getURL());
-                       }
+            // no support for multiple configs yet, but this is not a hard 
error
+            if (configurations.size() > 1) {
+                logger.info("found " + configurations.size() + " 
configurations for " + location
+                        + ", will use the first one: " + 
configurationResource.getURL());
+            }
 
-                       ConfigurationTree<DataChannelDescriptor> tree = 
loader.load(configurationResource);
-                       if (!tree.getLoadFailures().isEmpty()) {
-                               // TODO: andrus 03/10/2010 - log the errors 
before throwing?
-                               throw new DataDomainLoadException(tree, "Error 
loading DataChannelDescriptor");
-                       }
+            ConfigurationTree<DataChannelDescriptor> tree = 
loader.load(configurationResource);
+            if (!tree.getLoadFailures().isEmpty()) {
+                // TODO: andrus 03/10/2010 - log the errors before throwing?
+                throw new DataDomainLoadException(tree, "Error loading 
DataChannelDescriptor");
+            }
 
-                       descriptors[i] = tree.getRootNode();
-               }
+            descriptors[i] = tree.getRootNode();
+        }
 
-               long t1 = System.currentTimeMillis();
+        long t1 = System.currentTimeMillis();
 
-               if (logger.isDebugEnabled()) {
-                       logger.debug("finished configuration loading in " + (t1 
- t0) + " ms.");
-               }
+        if (logger.isDebugEnabled()) {
+            logger.debug("finished configuration loading in " + (t1 - t0) + " 
ms.");
+        }
 
-               return descriptorMerger.merge(descriptors);
-       }
+        return descriptorMerger.merge(descriptors);
+    }
 }
diff --git a/cayenne/src/main/java/org/apache/cayenne/query/QueryChain.java 
b/cayenne/src/main/java/org/apache/cayenne/query/QueryChain.java
index d2419d045..3f701abf5 100644
--- a/cayenne/src/main/java/org/apache/cayenne/query/QueryChain.java
+++ b/cayenne/src/main/java/org/apache/cayenne/query/QueryChain.java
@@ -20,7 +20,6 @@
 package org.apache.cayenne.query;
 
 import org.apache.cayenne.CayenneRuntimeException;
-import org.apache.cayenne.map.DataMap;
 import org.apache.cayenne.map.EntityResolver;
 
 import java.util.ArrayList;
diff --git 
a/cayenne/src/test/java/org/apache/cayenne/access/DataContextSerializationIT.java
 
b/cayenne/src/test/java/org/apache/cayenne/access/DataContextSerializationIT.java
index 3fccb34f3..e52d25fb4 100644
--- 
a/cayenne/src/test/java/org/apache/cayenne/access/DataContextSerializationIT.java
+++ 
b/cayenne/src/test/java/org/apache/cayenne/access/DataContextSerializationIT.java
@@ -35,6 +35,7 @@ import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.extension.RegisterExtension;
 
+import java.util.Collections;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -137,7 +138,7 @@ public class DataContextSerializationIT {
         DataDomain domain = context.getParentDataDomain();
         DataRowStore snapshotCache = new DataRowStore(
                 domain.getName(),
-                new DefaultRuntimeProperties(domain.getProperties()),
+                new DefaultRuntimeProperties(Collections.emptyMap()),
                 domain.getEventManager());
 
         Map<Object, Persistent> map = new HashMap<>();
diff --git a/cayenne/src/test/java/org/apache/cayenne/access/DataDomainIT.java 
b/cayenne/src/test/java/org/apache/cayenne/access/DataDomainIT.java
index ea7842963..7ac546804 100644
--- a/cayenne/src/test/java/org/apache/cayenne/access/DataDomainIT.java
+++ b/cayenne/src/test/java/org/apache/cayenne/access/DataDomainIT.java
@@ -38,8 +38,6 @@ import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.extension.RegisterExtension;
 
 import java.util.Collections;
-import java.util.HashMap;
-import java.util.Map;
 
 import static org.junit.jupiter.api.Assertions.*;
 
@@ -158,43 +156,27 @@ public class DataDomainIT {
         assertNotNull(domain.getEntityResolver());
     }
 
-    @SuppressWarnings("deprecation")
     @Test
-    public void initDataDomainWithSharedCache() throws Exception {
-        Map<String, String> properties = new HashMap<>();
-        properties.put(DataDomain.SHARED_CACHE_ENABLED_PROPERTY, 
Boolean.TRUE.toString());
-
-        DataDomain domain = new DataDomain("d1", properties);
-        assertTrue(domain.isSharedCacheEnabled());
+    public void sharedCacheEnabledDefault() {
+        assertTrue(new DataDomain("d1").isSharedCacheEnabled());
     }
 
-    @SuppressWarnings("deprecation")
     @Test
-    public void initDataDomainWithDedicatedCache() throws Exception {
-        Map<String, String> properties = new HashMap<>();
-        properties.put(DataDomain.SHARED_CACHE_ENABLED_PROPERTY, 
Boolean.FALSE.toString());
-
-        DataDomain domain = new DataDomain("d1", properties);
+    public void sharedCacheEnabled() {
+        DataDomain domain = new DataDomain("d1");
+        domain.setSharedCacheEnabled(false);
         assertFalse(domain.isSharedCacheEnabled());
     }
 
-    @SuppressWarnings("deprecation")
     @Test
-    public void initDataDomainValidation() throws Exception {
-        Map<String, String> properties = new HashMap<>();
-        properties.put(DataDomain.VALIDATING_OBJECTS_ON_COMMIT_PROPERTY, 
Boolean.TRUE.toString());
-
-        DataDomain domain = new DataDomain("d1", properties);
-        assertTrue(domain.isValidatingObjectsOnCommit());
+    public void validatingObjectsOnCommitDefault() {
+        assertTrue(new DataDomain("d1").isValidatingObjectsOnCommit());
     }
 
-    @SuppressWarnings("deprecation")
     @Test
-    public void initDataDomainNoValidation() throws Exception {
-        Map<String, String> properties = new HashMap<>();
-        properties.put(DataDomain.VALIDATING_OBJECTS_ON_COMMIT_PROPERTY, 
Boolean.FALSE.toString());
-
-        DataDomain domain = new DataDomain("d1", properties);
+    public void validatingObjectsOnCommit() {
+        DataDomain domain = new DataDomain("d1");
+        domain.setValidatingObjectsOnCommit(false);
         assertFalse(domain.isValidatingObjectsOnCommit());
     }
 

Reply via email to