refactoring for easier subclassing
diff --git a/cayenne-server/src/main/java/org/apache/cayenne/configuration/server/DataDomainProvider.java b/cayenne-server/src/main/java/org/apache/cayenne/configuration/server/DataDomainProvider.java
index 0b8ee5d..b7b34c7 100644
--- a/cayenne-server/src/main/java/org/apache/cayenne/configuration/server/DataDomainProvider.java
+++ b/cayenne-server/src/main/java/org/apache/cayenne/configuration/server/DataDomainProvider.java
@@ -18,9 +18,6 @@
****************************************************************/
package org.apache.cayenne.configuration.server;
-import java.util.Collection;
-import java.util.List;
-
import org.apache.cayenne.ConfigurationException;
import org.apache.cayenne.DataChannel;
import org.apache.cayenne.DataChannelFilter;
@@ -46,6 +43,9 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import java.util.Collection;
+import java.util.List;
+
/**
* A {@link DataChannel} provider that provides a single instance of DataDomain
* configured per configuration supplied via injected
@@ -104,18 +104,7 @@
protected DataDomain createAndInitDataDomain() throws Exception {
- DataChannelDescriptor descriptor;
-
- if (locations.isEmpty()) {
- descriptor = new DataChannelDescriptor();
- } else {
- descriptor = descriptorFromConfigs();
- }
-
- String nameOverride = runtimeProperties.get(Constants.SERVER_DOMAIN_NAME_PROPERTY);
- if (nameOverride != null) {
- descriptor.setName(nameOverride);
- }
+ DataChannelDescriptor descriptor = loadDescriptor();
DataDomain dataDomain = createDataDomain(descriptor.getName());
@@ -167,6 +156,20 @@
/**
* @since 4.0
+ */
+ protected DataChannelDescriptor loadDescriptor() {
+ DataChannelDescriptor descriptor = locations.isEmpty() ? new DataChannelDescriptor() : loadDescriptorFromConfigs();
+
+ String nameOverride = runtimeProperties.get(Constants.SERVER_DOMAIN_NAME_PROPERTY);
+ if (nameOverride != null) {
+ descriptor.setName(nameOverride);
+ }
+
+ return descriptor;
+ }
+
+ /**
+ * @since 4.0
*/
protected DataNode addDataNode(DataDomain dataDomain, DataNodeDescriptor nodeDescriptor) throws Exception {
DataNode dataNode = dataNodeFactory.createDataNode(nodeDescriptor);
@@ -180,7 +183,7 @@
return dataNode;
}
- private DataChannelDescriptor descriptorFromConfigs() {
+ private DataChannelDescriptor loadDescriptorFromConfigs() {
long t0 = System.currentTimeMillis();