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

stariy95 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cayenne.git

commit 089109676749de6a385a4103a951fbb44487eea3
Author: ntimofeev <[email protected]>
AuthorDate: Thu Aug 20 15:34:21 2026 +0300

    CAY-2994 cgen: improve path handling
     - merge with the latest changes
---
 .../main/java/org/apache/cayenne/modeler/project/CgenOps.java  |  3 +--
 .../ui/project/editor/datadomain/cgen/DataDomainCgenTab.java   | 10 +---------
 .../modeler/ui/project/editor/datamap/cgen/CgenPanel.java      |  1 +
 3 files changed, 3 insertions(+), 11 deletions(-)

diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/project/CgenOps.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/project/CgenOps.java
index 239e326f3..59546f255 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/project/CgenOps.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/project/CgenOps.java
@@ -36,8 +36,7 @@ import java.util.Optional;
 public class CgenOps {
 
     public static CgenConfiguration createDefaultCgenConfiguration(DataMap 
map, ProjectSession session) {
-        Path basePath = map.getLocation() != null ? CgenOps.baseDir(session) : 
null;
-        CgenConfiguration configuration = CgenConfiguration.createDefault(map, 
basePath);
+        CgenConfiguration configuration = CgenConfiguration.createDefault(map, 
baseDir(session).orElse(null));
 
         Preferences preferences = 
session.app().getPrefsLocator().appNode(GeneralPrefs.NODE);
         configuration.setEncoding(new GeneralPrefs(preferences).getEncoding());
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datadomain/cgen/DataDomainCgenTab.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datadomain/cgen/DataDomainCgenTab.java
index 369fcca51..fb4ebff95 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datadomain/cgen/DataDomainCgenTab.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datadomain/cgen/DataDomainCgenTab.java
@@ -27,7 +27,6 @@ import org.apache.cayenne.gen.ClassGenerationAction;
 import org.apache.cayenne.gen.ClassGenerationActionFactory;
 import org.apache.cayenne.map.DataMap;
 import org.apache.cayenne.modeler.event.display.DataMapDisplayEvent;
-import org.apache.cayenne.modeler.pref.adapters.GeneralPrefs;
 import org.apache.cayenne.modeler.project.CgenOps;
 import org.apache.cayenne.modeler.project.ProjectSession;
 import 
org.apache.cayenne.modeler.ui.project.editor.datadomain.DataDomainGeneratorsTab;
@@ -62,7 +61,7 @@ public class DataDomainCgenTab extends 
DataDomainGeneratorsTab<CgenConfiguration
                 CgenConfigList cgenConfigList = metaData.get(dataMap, 
CgenConfigList.class);
                 if (cgenConfigList == null) {
                     cgenConfigList = new CgenConfigList();
-                    cgenConfigList.add(createConfiguration(dataMap));
+                    
cgenConfigList.add(CgenOps.createDefaultCgenConfiguration(dataMap, session));
                 }
                 for (CgenConfiguration cgenConfiguration : 
cgenConfigList.getAll()) {
                     ClassGenerationAction action = 
actionFactory.createAction(cgenConfiguration,
@@ -85,13 +84,6 @@ public class DataDomainCgenTab extends 
DataDomainGeneratorsTab<CgenConfiguration
         }
     }
 
-    public CgenConfiguration createConfiguration(DataMap dataMap) {
-        CgenConfiguration cgenConfiguration = 
CgenConfiguration.createDefault(dataMap,
-                CgenOps.baseDir(session).orElse(null));
-        cgenConfiguration.setEncoding(new 
GeneralPrefs(app.getPrefsLocator().appNode(GeneralPrefs.NODE)).getEncoding());
-        return cgenConfiguration;
-    }
-
     @Override
     public void showConfig(DataMap dataMap) {
         if (dataMap != null) {
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/cgen/CgenPanel.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/cgen/CgenPanel.java
index 8ea669eaf..27844b89c 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/cgen/CgenPanel.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/cgen/CgenPanel.java
@@ -56,6 +56,7 @@ import org.slf4j.helpers.NOPLogger;
 
 import javax.swing.*;
 import java.awt.*;
+import java.nio.file.Path;
 import java.util.Collection;
 import java.util.Comparator;
 import java.util.Set;

Reply via email to