You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@wookie.apache.org by ps...@apache.org on 2011/10/11 15:12:24 UTC
svn commit: r1181770 - in /incubator/wookie/trunk/src/org/apache/wookie:
WidgetAdminServlet.java helpers/WidgetFactory.java
server/ContextListener.java updates/UpdatesController.java
Author: psharples
Date: Tue Oct 11 13:12:23 2011
New Revision: 1181770
URL: http://svn.apache.org/viewvc?rev=1181770&view=rev
Log:
Fix for the flatpacking of widgets which were part of the original 0.9.0 release. After upgrading to 0.9.1, these widgets (or rather instances of them) could not be flatpacked. See WOOKIE-256.
Modified:
incubator/wookie/trunk/src/org/apache/wookie/WidgetAdminServlet.java
incubator/wookie/trunk/src/org/apache/wookie/helpers/WidgetFactory.java
incubator/wookie/trunk/src/org/apache/wookie/server/ContextListener.java
incubator/wookie/trunk/src/org/apache/wookie/updates/UpdatesController.java
Modified: incubator/wookie/trunk/src/org/apache/wookie/WidgetAdminServlet.java
URL: http://svn.apache.org/viewvc/incubator/wookie/trunk/src/org/apache/wookie/WidgetAdminServlet.java?rev=1181770&r1=1181769&r2=1181770&view=diff
==============================================================================
--- incubator/wookie/trunk/src/org/apache/wookie/WidgetAdminServlet.java (original)
+++ incubator/wookie/trunk/src/org/apache/wookie/WidgetAdminServlet.java Tue Oct 11 13:12:23 2011
@@ -503,7 +503,7 @@ public class WidgetAdminServlet extends
else{
// UPDATE
// Update the widget metadata and configuration details
- WidgetFactory.update(widgetModel, persistenceManager.findWidgetByGuid(widgetModel.getIdentifier()), false);
+ WidgetFactory.update(widgetModel, persistenceManager.findWidgetByGuid(widgetModel.getIdentifier()), false, zipFile);
request.setAttribute("message_value", "'"+ widgetModel.getLocalName("en") +"' - " + localizedMessages.getString("WidgetAdminServlet.20")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
}
}
Modified: incubator/wookie/trunk/src/org/apache/wookie/helpers/WidgetFactory.java
URL: http://svn.apache.org/viewvc/incubator/wookie/trunk/src/org/apache/wookie/helpers/WidgetFactory.java?rev=1181770&r1=1181769&r2=1181770&view=diff
==============================================================================
--- incubator/wookie/trunk/src/org/apache/wookie/helpers/WidgetFactory.java (original)
+++ incubator/wookie/trunk/src/org/apache/wookie/helpers/WidgetFactory.java Tue Oct 11 13:12:23 2011
@@ -318,9 +318,9 @@ public class WidgetFactory {
* @param widget the existing widget
* @param grantAccessRequests set to true to grant any access requests defined by the model
*/
- public static void update( W3CWidget model, IWidget widget, boolean grantAccessRequests ){
+ public static void update( W3CWidget model, IWidget widget, boolean grantAccessRequests, File zipFile){
IPersistenceManager persistenceManager = PersistenceManagerFactory.getPersistenceManager();
-
+
widget.setDir(model.getDir());
widget.setLang(model.getLang());
widget.setDefaultLocale(model.getDefaultLocale());
@@ -338,7 +338,11 @@ public class WidgetFactory {
widget.setFeatures(null);
widget.setWidgetIcons(null);
widget.setPreferenceDefaults(null);
-
+ // We set this here to ensure widgets already imported in to
+ // a 0.9.0 version of wookie get this value set. See WOOKIE-256
+ if(zipFile != null){
+ widget.setPackagePath(zipFile.getPath());
+ }
// Set with updated values
createAuthor(persistenceManager, model,widget);
createStartFiles(persistenceManager, model,widget);
Modified: incubator/wookie/trunk/src/org/apache/wookie/server/ContextListener.java
URL: http://svn.apache.org/viewvc/incubator/wookie/trunk/src/org/apache/wookie/server/ContextListener.java?rev=1181770&r1=1181769&r2=1181770&view=diff
==============================================================================
--- incubator/wookie/trunk/src/org/apache/wookie/server/ContextListener.java (original)
+++ incubator/wookie/trunk/src/org/apache/wookie/server/ContextListener.java Tue Oct 11 13:12:23 2011
@@ -194,7 +194,7 @@ public class ContextListener implements
FlashMessage.getInstance().message(message);
} else {
String message = model.getLocalName("en") +"' - " + localizedMessages.getString("WidgetAdminServlet.20");
- WidgetFactory.update(model, persistenceManager.findWidgetByGuid(model.getIdentifier()), true);
+ WidgetFactory.update(model, persistenceManager.findWidgetByGuid(model.getIdentifier()), true, upload);
_logger.info(message);
FlashMessage.getInstance().message(message);
}
Modified: incubator/wookie/trunk/src/org/apache/wookie/updates/UpdatesController.java
URL: http://svn.apache.org/viewvc/incubator/wookie/trunk/src/org/apache/wookie/updates/UpdatesController.java?rev=1181770&r1=1181769&r2=1181770&view=diff
==============================================================================
--- incubator/wookie/trunk/src/org/apache/wookie/updates/UpdatesController.java (original)
+++ incubator/wookie/trunk/src/org/apache/wookie/updates/UpdatesController.java Tue Oct 11 13:12:23 2011
@@ -169,7 +169,7 @@ public class UpdatesController extends C
private void installUpdate(W3CWidgetFactory factory, IWidget widget, boolean onlyUseHttps) throws InvalidContentTypeException, BadWidgetZipFileException, BadManifestException, IOException, Exception{
W3CWidget updatedWidget = UpdateUtils.getUpdate(factory, widget.getGuid(), widget.getUpdateLocation(), widget.getVersion(), onlyUseHttps);
if (updatedWidget != null){
- WidgetFactory.update(updatedWidget, widget, false);
+ WidgetFactory.update(updatedWidget, widget, false, null);
_logger.info("Successfully updated "+widget.getGuid()+" to version "+updatedWidget.getVersion());
FlashMessage.getInstance().message("Successfully updated "+widget.getGuid()+" to version "+updatedWidget.getVersion());
}