[gatein-commits] gatein SVN: r4985 - in components/wsrp/trunk: admin-gui/src/main/webapp/jsf/consumers/exports and 3 other directories.
do-not-reply at jboss.org
do-not-reply at jboss.org
Tue Nov 9 08:11:01 EST 2010
Author: chris.laprun at jboss.com
Date: 2010-11-09 08:11:00 -0500 (Tue, 09 Nov 2010)
New Revision: 4985
Modified:
components/wsrp/trunk/admin-gui/src/main/java/org/gatein/wsrp/admin/ui/ConsumerBean.java
components/wsrp/trunk/admin-gui/src/main/webapp/jsf/consumers/exports/export.xhtml
components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/WSRPConsumer.java
components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/WSRPConsumerImpl.java
components/wsrp/trunk/consumer/src/test/java/org/gatein/wsrp/test/support/MockWSRPConsumer.java
Log:
- GTNWSRP-153: Added releaseExport operation on WSRPConsumer and call to it in ConsumerBean.deleteExport.
- GTNWSRP-154: Disabled export button by default and made ConsumerBean decide whether the button can be activated or not based on whether or not portlets have been selected to be exported.
Modified: components/wsrp/trunk/admin-gui/src/main/java/org/gatein/wsrp/admin/ui/ConsumerBean.java
===================================================================
--- components/wsrp/trunk/admin-gui/src/main/java/org/gatein/wsrp/admin/ui/ConsumerBean.java 2010-11-09 11:14:17 UTC (rev 4984)
+++ components/wsrp/trunk/admin-gui/src/main/java/org/gatein/wsrp/admin/ui/ConsumerBean.java 2010-11-09 13:11:00 UTC (rev 4985)
@@ -539,6 +539,20 @@
}
}
+ public boolean isReadyForExport()
+ {
+ List<SelectablePortletHandle> handles = (List<SelectablePortletHandle>)portletHandles.getWrappedData();
+ for (SelectablePortletHandle handle : handles)
+ {
+ if (handle.isSelected())
+ {
+ return true;
+ }
+ }
+
+ return false;
+ }
+
public String exportPortlets()
{
if (consumer != null)
@@ -650,6 +664,20 @@
ExportInfo export = currentExport.getExport();
if (consumer.getMigrationService().remove(export) == export)
{
+ // release the export on the producer
+ try
+ {
+ consumer.releaseExport(export);
+ }
+ catch (PortletInvokerException e)
+ {
+ // re-add export to migration service
+ consumer.getMigrationService().add(export);
+
+ beanContext.createErrorMessageFrom(e);
+ return null;
+ }
+
existingExports = null; // force rebuild of export list
currentExport = null;
}
@@ -781,6 +809,9 @@
public void select(ValueChangeEvent event)
{
selected = (Boolean)event.getNewValue();
+
+ // bypass the rest of the life cycle and re-display page
+ FacesContext.getCurrentInstance().renderResponse();
}
public int compareTo(SelectablePortletHandle o)
Modified: components/wsrp/trunk/admin-gui/src/main/webapp/jsf/consumers/exports/export.xhtml
===================================================================
--- components/wsrp/trunk/admin-gui/src/main/webapp/jsf/consumers/exports/export.xhtml 2010-11-09 11:14:17 UTC (rev 4984)
+++ components/wsrp/trunk/admin-gui/src/main/webapp/jsf/consumers/exports/export.xhtml 2010-11-09 13:11:00 UTC (rev 4985)
@@ -36,11 +36,13 @@
<h:column>
<f:facet name="header">#{i18n.portlets_table_column_include}</f:facet>
- <h:selectBooleanCheckbox value="#{portlet.selected}"/>
+ <h:selectBooleanCheckbox value="#{portlet.selected}" valueChangeListener="#{portlet.select}"
+ immediate="true" onclick="this.form.submit()"/>
</h:column>
<h:column>
- <f:facet name="header">#{i18n.portlets_table_column_portlet_name}</f:facet>
+ <f:facet name="header">#{i18n.
+ portlets_table_column_portlet_name}</f:facet>
#{portlet.handle}
</h:column>
</h:dataTable>
@@ -51,7 +53,8 @@
<div class="ButtonRight">
<div class="ButtonMiddle">
<h:commandButton id="exportButton" action="#{consumer.exportPortlets}"
- value="#{i18n.portlets_table_export}"/>
+ value="#{i18n.portlets_table_export}"
+ disabled="#{! consumer.readyForExport}"/>
</div>
</div>
</div>
Modified: components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/WSRPConsumer.java
===================================================================
--- components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/WSRPConsumer.java 2010-11-09 11:14:17 UTC (rev 4984)
+++ components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/WSRPConsumer.java 2010-11-09 13:11:00 UTC (rev 4985)
@@ -130,6 +130,8 @@
ExportInfo exportPortlets(List<String> portletHandles) throws PortletInvokerException;
+ void releaseExport(ExportInfo exportInfo) throws PortletInvokerException;
+
MigrationService getMigrationService();
boolean isSupportsExport();
Modified: components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/WSRPConsumerImpl.java
===================================================================
--- components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/WSRPConsumerImpl.java 2010-11-09 11:14:17 UTC (rev 4984)
+++ components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/WSRPConsumerImpl.java 2010-11-09 13:11:00 UTC (rev 4985)
@@ -883,6 +883,13 @@
}
}
+ public void releaseExport(ExportInfo exportInfo) throws PortletInvokerException
+ {
+ ParameterValidation.throwIllegalArgExceptionIfNull(exportInfo, "ExportInfo to release");
+
+ getPortletManagementService().releaseExport(getRegistrationContext(), exportInfo.getExportContext(), UserAccess.getUserContext());
+ }
+
public ImportInfo importPortlets(ExportInfo exportInfo, List<String> portlets) throws PortletInvokerException
{
ParameterValidation.throwIllegalArgExceptionIfNull(exportInfo, "ExportInfo to import from");
Modified: components/wsrp/trunk/consumer/src/test/java/org/gatein/wsrp/test/support/MockWSRPConsumer.java
===================================================================
--- components/wsrp/trunk/consumer/src/test/java/org/gatein/wsrp/test/support/MockWSRPConsumer.java 2010-11-09 11:14:17 UTC (rev 4984)
+++ components/wsrp/trunk/consumer/src/test/java/org/gatein/wsrp/test/support/MockWSRPConsumer.java 2010-11-09 13:11:00 UTC (rev 4985)
@@ -171,6 +171,11 @@
throw new NotYetImplemented();
}
+ public void releaseExport(ExportInfo exportInfo)
+ {
+ throw new NotYetImplemented();
+ }
+
public MigrationService getMigrationService()
{
throw new NotYetImplemented();
More information about the gatein-commits
mailing list