Author: thomas.heute(a)jboss.com
Date: 2008-07-24 11:37:32 -0400 (Thu, 24 Jul 2008)
New Revision: 11579
Modified:
tags/JBoss_Portal_2_6_6/core-wsrp/src/main/org/jboss/portal/wsrp/admin/ui/ConsumerBean.java
tags/JBoss_Portal_2_6_6/core-wsrp/src/main/org/jboss/portal/wsrp/admin/ui/ConsumerManagerBean.java
tags/JBoss_Portal_2_6_6/core-wsrp/src/resources/portal-wsrp-admin-war/WEB-INF/classes/WSRPConfigurationResource.properties
tags/JBoss_Portal_2_6_6/core-wsrp/src/resources/portal-wsrp-admin-war/WEB-INF/classes/WSRPConfigurationResource_fr.properties
tags/JBoss_Portal_2_6_6/wsrp/src/main/org/jboss/portal/wsrp/consumer/ProducerInfo.java
tags/JBoss_Portal_2_6_6/wsrp/src/main/org/jboss/portal/wsrp/consumer/RefreshResult.java
tags/JBoss_Portal_2_6_6/wsrp/src/main/org/jboss/portal/wsrp/consumer/RegistrationInfo.java
tags/JBoss_Portal_2_6_6/wsrp/src/main/org/jboss/portal/wsrp/consumer/RegistrationProperty.java
Log:
- JBPORTAL-2084: Should now correctly detect when a call to modifyRegistration is needed.
Modified:
tags/JBoss_Portal_2_6_6/core-wsrp/src/main/org/jboss/portal/wsrp/admin/ui/ConsumerBean.java
===================================================================
---
tags/JBoss_Portal_2_6_6/core-wsrp/src/main/org/jboss/portal/wsrp/admin/ui/ConsumerBean.java 2008-07-24
14:11:47 UTC (rev 11578)
+++
tags/JBoss_Portal_2_6_6/core-wsrp/src/main/org/jboss/portal/wsrp/admin/ui/ConsumerBean.java 2008-07-24
15:37:32 UTC (rev 11579)
@@ -482,6 +482,11 @@
if (!registrationLocallyModified)
{
registrationLocallyModified = isOldAndNewEqual(event.getOldValue(),
event.getNewValue());
+
+ // FIX-ME: this should be handled better
+ // if we modified locally, mark the registration info as modified as well
+
getProducerInfo().getRegistrationInfo().setModified(registrationLocallyModified);
+ getProducerInfo().setModifyRegistrationRequired(true);
}
}
}
Modified:
tags/JBoss_Portal_2_6_6/core-wsrp/src/main/org/jboss/portal/wsrp/admin/ui/ConsumerManagerBean.java
===================================================================
---
tags/JBoss_Portal_2_6_6/core-wsrp/src/main/org/jboss/portal/wsrp/admin/ui/ConsumerManagerBean.java 2008-07-24
14:11:47 UTC (rev 11578)
+++
tags/JBoss_Portal_2_6_6/core-wsrp/src/main/org/jboss/portal/wsrp/admin/ui/ConsumerManagerBean.java 2008-07-24
15:37:32 UTC (rev 11579)
@@ -55,6 +55,7 @@
private static final String REFRESH_SUCCESS =
"bean_consumermanager_refresh_success";
private static final String REFRESH_FAILURE =
"bean_consumermanager_refresh_failure";
private static final String REFRESH_EXCEPTION =
"bean_consumermanager_refresh_exception";
+ private static final String REFRESH_MODIFY =
"bean_consumermanager_refresh_modify";
public ConsumerRegistry getRegistry()
{
@@ -287,6 +288,10 @@
// todo: extract information from registration result to be more precise
return REFRESH_FAILURE;
}
+ else if (RefreshResult.Status.MODIFY_REGISTRATION_REQUIRED.equals(status))
+ {
+ return REFRESH_MODIFY;
+ }
else
{
return REFRESH_EXCEPTION;
Modified:
tags/JBoss_Portal_2_6_6/core-wsrp/src/resources/portal-wsrp-admin-war/WEB-INF/classes/WSRPConfigurationResource.properties
===================================================================
---
tags/JBoss_Portal_2_6_6/core-wsrp/src/resources/portal-wsrp-admin-war/WEB-INF/classes/WSRPConfigurationResource.properties 2008-07-24
14:11:47 UTC (rev 11578)
+++
tags/JBoss_Portal_2_6_6/core-wsrp/src/resources/portal-wsrp-admin-war/WEB-INF/classes/WSRPConfigurationResource.properties 2008-07-24
15:37:32 UTC (rev 11579)
@@ -154,6 +154,7 @@
bean_consumermanager_refresh_success = Refresh was successful.
bean_consumermanager_refresh_failure = Refresh failed (probably because the registration
information was not valid).
bean_consumermanager_refresh_exception = An unexpected error occurred.
+bean_consumermanager_refresh_modify = The local information has been changed, you should
modify your registration with the remote producer.
# ProducerBean
bean_producer_regpolicy_unset = RegistrationPolicy unset
Modified:
tags/JBoss_Portal_2_6_6/core-wsrp/src/resources/portal-wsrp-admin-war/WEB-INF/classes/WSRPConfigurationResource_fr.properties
===================================================================
---
tags/JBoss_Portal_2_6_6/core-wsrp/src/resources/portal-wsrp-admin-war/WEB-INF/classes/WSRPConfigurationResource_fr.properties 2008-07-24
14:11:47 UTC (rev 11578)
+++
tags/JBoss_Portal_2_6_6/core-wsrp/src/resources/portal-wsrp-admin-war/WEB-INF/classes/WSRPConfigurationResource_fr.properties 2008-07-24
15:37:32 UTC (rev 11579)
@@ -132,4 +132,5 @@
bean_consumermanager_refresh_failure=Le rafra\u00eechissement a \u00e9chou\u00e9
(probablement \u00e0 cause d'informations d'enregistrement non valides)
bean_consumermanager_refresh_success=Le rafra\u00eechissement a r\u00e9ussi.
bean_producer_cancel_success=Toutes les modifications faites \u00e0 la configuration du
producteur ont \u00e9t\u00e9 annull\u00e9es!
-bean_producer_save_success=La configuration du producteur a bien \u00e9t\u00e9
sauvegard\u00e9e!
\ No newline at end of file
+bean_producer_save_success=La configuration du producteur a bien \u00e9t\u00e9
sauvegard\u00e9e!
+bean_consumermanager_refresh_modify=Les informations locales ont chang\u00e9, vous
devriez modifier votre enregistrement avec le producteur.
\ No newline at end of file
Modified:
tags/JBoss_Portal_2_6_6/wsrp/src/main/org/jboss/portal/wsrp/consumer/ProducerInfo.java
===================================================================
---
tags/JBoss_Portal_2_6_6/wsrp/src/main/org/jboss/portal/wsrp/consumer/ProducerInfo.java 2008-07-24
14:11:47 UTC (rev 11578)
+++
tags/JBoss_Portal_2_6_6/wsrp/src/main/org/jboss/portal/wsrp/consumer/ProducerInfo.java 2008-07-24
15:37:32 UTC (rev 11579)
@@ -175,6 +175,11 @@
public RegistrationInfo getRegistrationInfo()
{
+ // update parent since it might not be set when unfrozen from Hibernate
+ if (persistentRegistrationInfo != null)
+ {
+ persistentRegistrationInfo.setParent(this);
+ }
return persistentRegistrationInfo;
}
@@ -248,6 +253,12 @@
return isModifyRegistrationRequired || (persistentRegistrationInfo != null
&& persistentRegistrationInfo.isModified());
}
+ // FIX-ME: remove when a better dirty management is in place at property level
+ public void setModifyRegistrationRequired(boolean modifyRegistrationRequired)
+ {
+ this.isModifyRegistrationRequired = modifyRegistrationRequired;
+ }
+
public CookieProtocol getRequiresInitCookie()
{
return requiresInitCookie;
@@ -296,6 +307,12 @@
private RefreshResult internalRefresh(boolean forceRefresh) throws
PortletInvokerException
{
ServiceDescription serviceDescription;
+
+ if(isModifyRegistrationRequired)
+ {
+ return new RefreshResult(RefreshResult.Status.MODIFY_REGISTRATION_REQUIRED);
+ }
+
// might neeed a different cache value: right now, we cache the whole producer info
but we might want to cache
// POPs and rest of producer info separetely...
if (forceRefresh || isRefreshNeeded(true))
Modified:
tags/JBoss_Portal_2_6_6/wsrp/src/main/org/jboss/portal/wsrp/consumer/RefreshResult.java
===================================================================
---
tags/JBoss_Portal_2_6_6/wsrp/src/main/org/jboss/portal/wsrp/consumer/RefreshResult.java 2008-07-24
14:11:47 UTC (rev 11578)
+++
tags/JBoss_Portal_2_6_6/wsrp/src/main/org/jboss/portal/wsrp/consumer/RefreshResult.java 2008-07-24
15:37:32 UTC (rev 11579)
@@ -35,7 +35,7 @@
{
public enum Status
{
- SUCCESS, FAILURE, UNAVAILABLE, BYPASSED, UNKNOWN
+ SUCCESS, FAILURE, UNAVAILABLE, BYPASSED, UNKNOWN, MODIFY_REGISTRATION_REQUIRED
}
private ServiceDescription serviceDescription;
Modified:
tags/JBoss_Portal_2_6_6/wsrp/src/main/org/jboss/portal/wsrp/consumer/RegistrationInfo.java
===================================================================
---
tags/JBoss_Portal_2_6_6/wsrp/src/main/org/jboss/portal/wsrp/consumer/RegistrationInfo.java 2008-07-24
14:11:47 UTC (rev 11578)
+++
tags/JBoss_Portal_2_6_6/wsrp/src/main/org/jboss/portal/wsrp/consumer/RegistrationInfo.java 2008-07-24
15:37:32 UTC (rev 11579)
@@ -91,6 +91,7 @@
ParameterValidation.throwIllegalArgExceptionIfNull(other, "RegistrationInfo to
clone from");
this.persistentConsumerName = other.persistentConsumerName;
this.persistentRegistrationHandle = other.persistentRegistrationHandle;
+ this.parent = other.parent;
if (other.persistentRegistrationState != null)
{
Modified:
tags/JBoss_Portal_2_6_6/wsrp/src/main/org/jboss/portal/wsrp/consumer/RegistrationProperty.java
===================================================================
---
tags/JBoss_Portal_2_6_6/wsrp/src/main/org/jboss/portal/wsrp/consumer/RegistrationProperty.java 2008-07-24
14:11:47 UTC (rev 11578)
+++
tags/JBoss_Portal_2_6_6/wsrp/src/main/org/jboss/portal/wsrp/consumer/RegistrationProperty.java 2008-07-24
15:37:32 UTC (rev 11579)
@@ -144,7 +144,7 @@
public boolean isDeterminedInvalid()
{
- return persistentInvalid != null && persistentInvalid;
+ return persistentInvalid != null && persistentInvalid &&
!UNCHECKED_VALUE_STATUS.equals(getStatus());
}
public void setInvalid(Boolean invalid, String status)