Author: paperwing
Date: 2012-07-30 15:55:10 -0700 (Mon, 30 Jul 2012)
New Revision: 30044

Modified:
   
core3/impl/trunk/app-impl/src/main/java/org/cytoscape/app/internal/manager/App.java
   
core3/impl/trunk/app-impl/src/main/java/org/cytoscape/app/internal/manager/AppManager.java
   
core3/impl/trunk/app-impl/src/main/java/org/cytoscape/app/internal/manager/SimpleApp.java
   
core3/impl/trunk/app-impl/src/main/java/org/cytoscape/app/internal/ui/CurrentlyInstalledAppsPanel.java
Log:
refs 1328 Simple apps should now work after changes made to make supporting 
movement of app files during runtime easier

Modified: 
core3/impl/trunk/app-impl/src/main/java/org/cytoscape/app/internal/manager/App.java
===================================================================
--- 
core3/impl/trunk/app-impl/src/main/java/org/cytoscape/app/internal/manager/App.java
 2012-07-30 22:28:42 UTC (rev 30043)
+++ 
core3/impl/trunk/app-impl/src/main/java/org/cytoscape/app/internal/manager/App.java
 2012-07-30 22:55:10 UTC (rev 30044)
@@ -83,6 +83,7 @@
                TO_BE_DISABLED("Disable-on-restart"),
                DISABLED("Disabled"),
                UNINSTALLED("Uninstalled"),
+               FILE_MOVED("File Moved (Uninstalled)"),
                FILE_MOVED_UNINSTALLED("File Moved (Uninstalled)"),
                // Currently, simple apps require a restart for uninstall, so 
we require a restart even if file is moved
                FILE_MOVED_INSTALLED("File Moved (Uninstall-on-restart)");
@@ -502,6 +503,10 @@
        }
        */
        
+       public String getReadableStatus() {
+               return this.getStatus().toString();
+       }
+       
        public String getAppName() {
                return appName;
        }

Modified: 
core3/impl/trunk/app-impl/src/main/java/org/cytoscape/app/internal/manager/AppManager.java
===================================================================
--- 
core3/impl/trunk/app-impl/src/main/java/org/cytoscape/app/internal/manager/AppManager.java
  2012-07-30 22:28:42 UTC (rev 30043)
+++ 
core3/impl/trunk/app-impl/src/main/java/org/cytoscape/app/internal/manager/AppManager.java
  2012-07-30 22:55:10 UTC (rev 30044)
@@ -148,10 +148,11 @@
                                                appRegistered = true;
                                }
                                if (!appRegistered) {
-                                       app.install(this);
                                        apps.add(app);
+                                       app.install(this);
                                }
                        } catch (AppInstallException e) {
+                               logger.warn("Failed to initially install app, " 
+ e);
                        }
                }
                
@@ -164,8 +165,8 @@
                                                appRegistered = true;
                                }
                                if (!appRegistered) {
-                                       app.disable(this);
                                        apps.add(app);
+                                       app.disable(this);
                                }                               
                        } catch (AppDisableException e) {
                        }
@@ -180,8 +181,8 @@
                                                appRegistered = true;
                                }
                                if (!appRegistered) {
-                                       app.uninstall(this);
                                        apps.add(app);
+                                       app.uninstall(this);
                                }
                        } catch (AppUninstallException e) {
                        }
@@ -263,11 +264,7 @@
                                        // System.out.println("checking " + 
app.getAppFile().getAbsolutePath());
                                        if (app.getAppFile().equals(file)) {
                                                // System.out.println(app + " 
moved");
-                                               if (app instanceof SimpleApp) {
-                                                       
app.setStatus(AppStatus.FILE_MOVED_INSTALLED);
-                                               } else {
-                                                       
app.setStatus(AppStatus.FILE_MOVED_UNINSTALLED);
-                                               }
+                                               
app.setStatus(AppStatus.FILE_MOVED);
                                        }
                                }
                                
@@ -322,11 +319,7 @@
                                        // System.out.println("checking " + 
app.getAppFile().getAbsolutePath());
                                        if (app.getAppFile().equals(file)) {
                                                // System.out.println(app + " 
moved");
-                                               if (app instanceof SimpleApp) {
-                                                       
app.setStatus(AppStatus.FILE_MOVED_INSTALLED);
-                                               } else {
-                                                       
app.setStatus(AppStatus.FILE_MOVED_UNINSTALLED);
-                                               }
+                                               
app.setStatus(AppStatus.FILE_MOVED);
                                        }
                                }
                                
@@ -382,11 +375,7 @@
                                        // System.out.println("checking " + 
app.getAppFile().getAbsolutePath());
                                        if (app.getAppFile().equals(file)) {
                                                // System.out.println(app + " 
moved");
-                                               if (app instanceof SimpleApp) {
-                                                       
app.setStatus(AppStatus.FILE_MOVED_INSTALLED);
-                                               } else {
-                                                       
app.setStatus(AppStatus.FILE_MOVED_UNINSTALLED);
-                                               }
+                                               
app.setStatus(AppStatus.FILE_MOVED);
                                        }
                                }
                                

Modified: 
core3/impl/trunk/app-impl/src/main/java/org/cytoscape/app/internal/manager/SimpleApp.java
===================================================================
--- 
core3/impl/trunk/app-impl/src/main/java/org/cytoscape/app/internal/manager/SimpleApp.java
   2012-07-30 22:28:42 UTC (rev 30043)
+++ 
core3/impl/trunk/app-impl/src/main/java/org/cytoscape/app/internal/manager/SimpleApp.java
   2012-07-30 22:55:10 UTC (rev 30044)
@@ -21,6 +21,22 @@
 public class SimpleApp extends App {
 
        @Override
+       public String getReadableStatus() {
+               switch (this.getStatus()) {
+               
+               case DISABLED:
+                       return "Disable on Restart)";
+               case UNINSTALLED:
+                       return "Uninstall on Restart";
+               case FILE_MOVED:
+                       return "File Moved (Needs restart to uninstall)";
+               default:
+                       return super.getReadableStatus();
+               
+               }
+       }
+       
+       @Override
        public Object createAppInstance(CySwingAppAdapter appAdapter)
                        throws AppInstanceException {
                File installFile = this.getAppTemporaryInstallFile();
@@ -96,11 +112,13 @@
                        return;
                }
                
+               /*
                try {
                        moveAppFile(appManager, new 
File(appManager.getKarafDeployDirectory()));
                } catch (IOException e) {
                        throw new AppInstallException("Failed to move app file, 
" + e.getMessage());
                }
+               */
                
                // Make a copy used to create app instance
                LinkedList<String> uniqueNameDirectory = new 
LinkedList<String>();
@@ -108,7 +126,8 @@
                
                try {
                        if (this.getAppTemporaryInstallFile() == null) {
-                               File targetFile = new 
File(suggestFileName(uniqueNameDirectory, this.getAppFile().getName()));
+                               File targetFile = new 
File(appManager.getTemporaryInstallPath() + File.separator 
+                                               + 
suggestFileName(uniqueNameDirectory, this.getAppFile().getName()));
                                FileUtils.copyFile(this.getAppFile(), 
targetFile);
                                this.setAppTemporaryInstallFile(targetFile);
                        }
@@ -132,12 +151,12 @@
 
        @Override
        public void uninstall(AppManager appManager) throws 
AppUninstallException {
-               this.setStatus(AppStatus.TO_BE_UNINSTALLED);
+               this.setStatus(AppStatus.UNINSTALLED);
        }
 
        @Override
        public void disable(AppManager appManager) throws AppDisableException {
-               this.setStatus(AppStatus.TO_BE_DISABLED);
+               this.setStatus(AppStatus.DISABLED);
        }
 
 }

Modified: 
core3/impl/trunk/app-impl/src/main/java/org/cytoscape/app/internal/ui/CurrentlyInstalledAppsPanel.java
===================================================================
--- 
core3/impl/trunk/app-impl/src/main/java/org/cytoscape/app/internal/ui/CurrentlyInstalledAppsPanel.java
      2012-07-30 22:28:42 UTC (rev 30043)
+++ 
core3/impl/trunk/app-impl/src/main/java/org/cytoscape/app/internal/ui/CurrentlyInstalledAppsPanel.java
      2012-07-30 22:55:10 UTC (rev 30044)
@@ -300,7 +300,7 @@
                                        app,
                                        app.getAppFile() != null ? 
app.getAppName() : app.getAppName() + " (File moved)",
                                        app.getVersion(),
-                                       app.getStatus()
+                                       app.getReadableStatus()
                        });
        }
        

-- 
You received this message because you are subscribed to the Google Groups 
"cytoscape-cvs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/cytoscape-cvs?hl=en.

Reply via email to