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

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


The following commit(s) were added to refs/heads/master by this push:
     new 78819761a ProjectSavedEvent refactoring and cleanup
78819761a is described below

commit 78819761a5e83f40cd758ce86d3c8bfabbe981f2
Author: Nikita Timofeev <stari...@gmail.com>
AuthorDate: Tue Dec 6 17:17:43 2022 +0300

    ProjectSavedEvent refactoring and cleanup
---
 .../main/java/org/apache/cayenne/modeler/ProjectController.java  | 3 +--
 .../main/java/org/apache/cayenne/modeler/action/SaveAction.java  | 2 +-
 .../java/org/apache/cayenne/modeler/action/SaveAsAction.java     | 2 ++
 .../java/org/apache/cayenne/modeler/event/ProjectSavedEvent.java | 9 ++++++++-
 .../org/apache/cayenne/modeler/event/ProjectSavedListener.java   | 2 +-
 5 files changed, 13 insertions(+), 5 deletions(-)

diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ProjectController.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ProjectController.java
index cc8a90bd1..aa4291084 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ProjectController.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ProjectController.java
@@ -878,9 +878,8 @@ public class ProjectController extends CayenneController {
     }
 
     public void fireProjectSavedEvent(ProjectSavedEvent e) {
-        setDirty(true);
         for (ProjectSavedListener eventListener : 
listenerList.getListeners(ProjectSavedListener.class)) {
-            eventListener.updateNamesAfterSaving(e);
+            eventListener.onProjectSaved(e);
         }
     }
 
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/SaveAction.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/SaveAction.java
index a14cd480b..2f820d751 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/SaveAction.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/SaveAction.java
@@ -87,8 +87,8 @@ public class SaveAction extends SaveAsAction {
 
         // Reset the watcher now
         getProjectController().getFileChangeTracker().reconfigure();
+        getProjectController().fireProjectSavedEvent(new 
ProjectSavedEvent(getProjectController()));
 
-        getProjectController().fireProjectSavedEvent(new 
ProjectSavedEvent(this));
         return true;
     }
 }
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/SaveAsAction.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/SaveAsAction.java
index 744c5a081..cc15b828a 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/SaveAsAction.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/SaveAsAction.java
@@ -34,6 +34,7 @@ import org.apache.cayenne.configuration.ConfigurationNode;
 import org.apache.cayenne.modeler.Application;
 import org.apache.cayenne.modeler.dialog.validator.ValidatorDialog;
 import org.apache.cayenne.modeler.event.ProjectOnSaveEvent;
+import org.apache.cayenne.modeler.event.ProjectSavedEvent;
 import org.apache.cayenne.modeler.util.CayenneAction;
 import org.apache.cayenne.pref.RenamedPreferences;
 import org.apache.cayenne.project.Project;
@@ -143,6 +144,7 @@ public class SaveAsAction extends CayenneAction {
 
         // Reset the watcher now
         getProjectController().getFileChangeTracker().reconfigure();
+        getProjectController().fireProjectSavedEvent(new 
ProjectSavedEvent(getProjectController()));
 
         return true;
     }
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/event/ProjectSavedEvent.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/event/ProjectSavedEvent.java
index 5063819be..5684d86fd 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/event/ProjectSavedEvent.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/event/ProjectSavedEvent.java
@@ -19,6 +19,8 @@
 
 package org.apache.cayenne.modeler.event;
 
+import org.apache.cayenne.modeler.ProjectController;
+
 import java.util.EventObject;
 
 /**
@@ -33,7 +35,12 @@ public class ProjectSavedEvent extends EventObject {
      * @param source the object on which the Event initially occurred
      * @throws IllegalArgumentException if source is null
      */
-    public ProjectSavedEvent(Object source) {
+    public ProjectSavedEvent(ProjectController source) {
         super(source);
     }
+
+    @Override
+    public ProjectController getSource() {
+        return (ProjectController)super.getSource();
+    }
 }
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/event/ProjectSavedListener.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/event/ProjectSavedListener.java
index bdf49bcc4..a619d0ea4 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/event/ProjectSavedListener.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/event/ProjectSavedListener.java
@@ -27,5 +27,5 @@ import java.util.EventListener;
  * @since 5.0
  */
 public interface ProjectSavedListener extends EventListener {
-    void updateNamesAfterSaving(ProjectSavedEvent e);
+    void onProjectSaved(ProjectSavedEvent e);
 }

Reply via email to