[gatein-commits] gatein SVN: r7735 - in components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp: registration and 1 other directories.
do-not-reply at jboss.org
do-not-reply at jboss.org
Wed Oct 12 11:11:32 EDT 2011
Author: chris.laprun at jboss.com
Date: 2011-10-12 11:11:32 -0400 (Wed, 12 Oct 2011)
New Revision: 7735
Modified:
components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/consumer/registry/mapping/EndpointInfoMapping.java
components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/consumer/registry/mapping/ProducerInfoMapping.java
components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/consumer/registry/mapping/RegistrationInfoMapping.java
components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/registration/JCRRegistrationPersistenceManager.java
components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/registration/mapping/ConsumerGroupMapping.java
components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/registration/mapping/ConsumerMapping.java
components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/registration/mapping/RegistrationMapping.java
Log:
- GTNWSRP-248: extended use of BaseMapping for more coherence.
Modified: components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/consumer/registry/mapping/EndpointInfoMapping.java
===================================================================
--- components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/consumer/registry/mapping/EndpointInfoMapping.java 2011-10-12 14:52:32 UTC (rev 7734)
+++ components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/consumer/registry/mapping/EndpointInfoMapping.java 2011-10-12 15:11:32 UTC (rev 7735)
@@ -30,6 +30,8 @@
import org.chromattic.api.annotations.PrimaryType;
import org.chromattic.api.annotations.Property;
import org.gatein.wsrp.consumer.EndpointConfigurationInfo;
+import org.gatein.wsrp.consumer.ProducerInfo;
+import org.gatein.wsrp.jcr.mapping.BaseMapping;
import org.gatein.wsrp.jcr.mapping.mixins.MixinHolder;
import org.gatein.wsrp.jcr.mapping.mixins.WSSEndpointEnabled;
@@ -38,7 +40,7 @@
* @version $Revision$
*/
@PrimaryType(name = EndpointInfoMapping.NODE_NAME)
-public abstract class EndpointInfoMapping extends MixinHolder<WSSEndpointEnabled>
+public abstract class EndpointInfoMapping extends MixinHolder<WSSEndpointEnabled> implements BaseMapping<EndpointConfigurationInfo, ProducerInfo>
{
public static final String NODE_NAME = "wsrp:endpointinfo";
@@ -78,7 +80,7 @@
setWSSEnabled(info.getWSSEnabled());
}
- EndpointConfigurationInfo toEndpointConfigurationInfo(EndpointConfigurationInfo initial)
+ public EndpointConfigurationInfo toModel(EndpointConfigurationInfo initial, ProducerInfo registry)
{
initial.setWsdlDefinitionURL(getWSDLURL());
initial.setWSOperationTimeOut(getWSTimeoutMilliseconds());
Modified: components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/consumer/registry/mapping/ProducerInfoMapping.java
===================================================================
--- components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/consumer/registry/mapping/ProducerInfoMapping.java 2011-10-12 14:52:32 UTC (rev 7734)
+++ components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/consumer/registry/mapping/ProducerInfoMapping.java 2011-10-12 15:11:32 UTC (rev 7735)
@@ -136,11 +136,11 @@
info.setModifyRegistrationRequired(getModifyRegistrationRequired());
// endpoint
- EndpointConfigurationInfo endInfo = getEndpointInfo().toEndpointConfigurationInfo(info.getEndpointConfigurationInfo());
+ EndpointConfigurationInfo endInfo = getEndpointInfo().toModel(info.getEndpointConfigurationInfo(), info);
info.setEndpointConfigurationInfo(endInfo);
// registration
- RegistrationInfo regInfo = getRegistrationInfo().toRegistrationInfo(info.getRegistrationInfo());
+ RegistrationInfo regInfo = getRegistrationInfo().toModel(info.getRegistrationInfo(), info);
info.setRegistrationInfo(regInfo);
return info;
Modified: components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/consumer/registry/mapping/RegistrationInfoMapping.java
===================================================================
--- components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/consumer/registry/mapping/RegistrationInfoMapping.java 2011-10-12 14:52:32 UTC (rev 7734)
+++ components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/consumer/registry/mapping/RegistrationInfoMapping.java 2011-10-12 15:11:32 UTC (rev 7735)
@@ -29,9 +29,11 @@
import org.chromattic.api.annotations.PrimaryType;
import org.chromattic.api.annotations.Property;
import org.gatein.common.io.IOTools;
+import org.gatein.wsrp.consumer.ProducerInfo;
import org.gatein.wsrp.consumer.RegistrationInfo;
import org.gatein.wsrp.consumer.RegistrationProperty;
import org.gatein.wsrp.jcr.ChromatticPersister;
+import org.gatein.wsrp.jcr.mapping.BaseMapping;
import org.gatein.wsrp.registration.RegistrationPropertyDescription;
import org.gatein.wsrp.registration.mapping.RegistrationPropertyDescriptionMapping;
@@ -45,7 +47,7 @@
*/
@PrimaryType(name = RegistrationInfoMapping.NODE_NAME)
@FormattedBy(ChromatticPersister.QNameFormatter.class)
-public abstract class RegistrationInfoMapping
+public abstract class RegistrationInfoMapping implements BaseMapping<RegistrationInfo, ProducerInfo>
{
public static final String NODE_NAME = "wsrp:registrationinfo";
@@ -95,7 +97,7 @@
}
}
- RegistrationInfo toRegistrationInfo(RegistrationInfo initial)
+ public RegistrationInfo toModel(RegistrationInfo initial, ProducerInfo registry)
{
initial.setConsumerName(getConsumerName());
initial.setRegistrationHandle(getRegistrationHandle());
Modified: components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/registration/JCRRegistrationPersistenceManager.java
===================================================================
--- components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/registration/JCRRegistrationPersistenceManager.java 2011-10-12 14:52:32 UTC (rev 7734)
+++ components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/registration/JCRRegistrationPersistenceManager.java 2011-10-12 15:11:32 UTC (rev 7735)
@@ -89,12 +89,12 @@
for (ConsumerGroupMapping cgm : mappings.getConsumerGroups())
{
- internalAddConsumerGroup(cgm.toConsumerGroup(this));
+ internalAddConsumerGroup(cgm.toModel(newConsumerGroupSPI(cgm.getName()), this));
}
for (ConsumerMapping cm : mappings.getConsumers())
{
- ConsumerSPI consumer = cm.toConsumer(this);
+ ConsumerSPI consumer = cm.toModel(newConsumerSPI(cm.getId(), cm.getName()), this);
internalAddConsumer(consumer);
// get the registrations and add them to local map.
@@ -149,11 +149,21 @@
return super.internalRemoveConsumer(consumerId);
}
- private void remove(String id, Class clazz)
+ private <T> T remove(String id, Class<T> clazz)
{
ChromatticSession session = persister.getSession();
- session.remove(session.findById(clazz, id));
- persister.closeSession(true);
+ try
+ {
+ T toRemove = session.findById(clazz, id);
+ session.remove(toRemove);
+ persister.closeSession(true);
+ return toRemove;
+ }
+ catch (Exception e)
+ {
+ persister.closeSession(false);
+ throw new RuntimeException(e);
+ }
}
@Override
@@ -189,7 +199,7 @@
try
{
ConsumerMapping cm = session.findById(ConsumerMapping.class, consumer.getPersistentKey());
- cm.initFrom(consumer);
+ cm.initFrom(consumerSPI);
persister.closeSession(true);
}
catch (Exception e)
@@ -209,7 +219,7 @@
try
{
RegistrationMapping cm = session.findById(RegistrationMapping.class, registration.getPersistentKey());
- cm.initFrom(registration);
+ cm.initFrom(registrationSPI);
persister.closeSession(true);
}
catch (Exception e)
Modified: components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/registration/mapping/ConsumerGroupMapping.java
===================================================================
--- components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/registration/mapping/ConsumerGroupMapping.java 2011-10-12 14:52:32 UTC (rev 7734)
+++ components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/registration/mapping/ConsumerGroupMapping.java 2011-10-12 15:11:32 UTC (rev 7735)
@@ -32,10 +32,11 @@
import org.chromattic.api.annotations.Property;
import org.gatein.common.util.ParameterValidation;
import org.gatein.registration.Consumer;
-import org.gatein.registration.ConsumerGroup;
import org.gatein.registration.RegistrationException;
import org.gatein.registration.RegistrationStatus;
import org.gatein.registration.spi.ConsumerGroupSPI;
+import org.gatein.registration.spi.ConsumerSPI;
+import org.gatein.wsrp.jcr.mapping.BaseMapping;
import org.gatein.wsrp.registration.JCRRegistrationPersistenceManager;
import java.util.Collection;
@@ -45,7 +46,7 @@
* @version $Revision$
*/
@PrimaryType(name = ConsumerGroupMapping.NODE_NAME)
-public abstract class ConsumerGroupMapping
+public abstract class ConsumerGroupMapping implements BaseMapping<ConsumerGroupSPI, JCRRegistrationPersistenceManager>
{
public static final String NODE_NAME = "wsrp:consumergroup";
@@ -69,7 +70,7 @@
@FindById
public abstract ConsumerMapping findConsumerById(String id);
- public void initFrom(ConsumerGroup group)
+ public void initFrom(ConsumerGroupSPI group)
{
setName(group.getName());
setStatus(group.getStatus());
@@ -82,7 +83,7 @@
ConsumerMapping cm = findConsumerById(id);
ParameterValidation.throwIllegalArgExceptionIfNull(cm, "ConsumerMapping (no such mapping with id: " + id + ")");
getConsumers().add(cm);
- cm.initFrom(consumer);
+ cm.initFrom((ConsumerSPI)consumer);
}
}
catch (RegistrationException e)
@@ -91,9 +92,9 @@
}
}
- public ConsumerGroupSPI toConsumerGroup(JCRRegistrationPersistenceManager persistenceManager) throws RegistrationException
+ public ConsumerGroupSPI toModel(ConsumerGroupSPI initial, JCRRegistrationPersistenceManager persistenceManager)
{
- ConsumerGroupSPI group = persistenceManager.newConsumerGroupSPI(getName());
+ ConsumerGroupSPI group = (initial != null ? initial : persistenceManager.newConsumerGroupSPI(getName()));
group.setPersistentKey(getPersistentKey());
RegistrationStatus status = getStatus();
if (status == null)
@@ -102,16 +103,24 @@
}
group.setStatus(status);
- for (ConsumerMapping cm : getConsumers())
+ try
{
- Consumer consumer = persistenceManager.getConsumerById(cm.getPersistentKey());
- if (consumer == null)
+ for (ConsumerMapping cm : getConsumers())
{
- consumer = cm.toConsumer(persistenceManager);
+ Consumer consumer = persistenceManager.getConsumerById(cm.getPersistentKey());
+ if (consumer == null)
+ {
+ consumer = cm.toModel((ConsumerSPI)consumer, persistenceManager);
+ }
+
+ group.addConsumer(consumer);
}
- group.addConsumer(consumer);
+ return group;
}
- return group;
+ catch (RegistrationException e)
+ {
+ throw new RuntimeException(e);
+ }
}
}
Modified: components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/registration/mapping/ConsumerMapping.java
===================================================================
--- components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/registration/mapping/ConsumerMapping.java 2011-10-12 14:52:32 UTC (rev 7734)
+++ components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/registration/mapping/ConsumerMapping.java 2011-10-12 15:11:32 UTC (rev 7735)
@@ -34,11 +34,12 @@
import org.chromattic.api.annotations.Owner;
import org.chromattic.api.annotations.PrimaryType;
import org.chromattic.api.annotations.Property;
-import org.gatein.registration.Consumer;
import org.gatein.registration.ConsumerGroup;
import org.gatein.registration.Registration;
import org.gatein.registration.RegistrationException;
import org.gatein.registration.spi.ConsumerSPI;
+import org.gatein.registration.spi.RegistrationSPI;
+import org.gatein.wsrp.jcr.mapping.BaseMapping;
import org.gatein.wsrp.registration.JCRRegistrationPersistenceManager;
import java.util.List;
@@ -48,7 +49,7 @@
* @version $Revision$
*/
@PrimaryType(name = ConsumerMapping.NODE_NAME)
-public abstract class ConsumerMapping
+public abstract class ConsumerMapping implements BaseMapping<ConsumerSPI, JCRRegistrationPersistenceManager>
{
public static final String NODE_NAME = "wsrp:consumer";
@@ -112,7 +113,7 @@
}
// then init
- rm.initFrom(registration);
+ rm.initFrom((RegistrationSPI)registration);
}
else
{
@@ -124,7 +125,7 @@
return rm;
}
- public void initFrom(Consumer consumer)
+ public void initFrom(ConsumerSPI consumer)
{
setName(consumer.getName());
setId(consumer.getId());
@@ -153,23 +154,30 @@
}
}
- public ConsumerSPI toConsumer(JCRRegistrationPersistenceManager persistenceManager) throws RegistrationException
+ public ConsumerSPI toModel(ConsumerSPI initial, JCRRegistrationPersistenceManager persistenceManager)
{
- ConsumerSPI consumer = persistenceManager.newConsumerSPI(getId(), getName());
+ ConsumerSPI consumer = (initial != null ? initial : persistenceManager.newConsumerSPI(getId(), getName()));
consumer.setConsumerAgent(getConsumerAgent());
consumer.setPersistentKey(getPersistentKey());
consumer.setCapabilities(getCapabilities().toConsumerCapabilities());
- ConsumerGroupMapping cgm = getGroup();
- if (cgm != null)
+ try
{
- consumer.setGroup(persistenceManager.getConsumerGroup(cgm.getName()));
+ ConsumerGroupMapping cgm = getGroup();
+ if (cgm != null)
+ {
+ consumer.setGroup(persistenceManager.getConsumerGroup(cgm.getName()));
+ }
+
+ for (RegistrationMapping rm : getRegistrations())
+ {
+ consumer.addRegistration(rm.toRegistration(consumer, persistenceManager));
+ }
}
-
- for (RegistrationMapping rm : getRegistrations())
+ catch (RegistrationException e)
{
- consumer.addRegistration(rm.toRegistration(persistenceManager, consumer));
+ throw new RuntimeException(e);
}
return consumer;
Modified: components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/registration/mapping/RegistrationMapping.java
===================================================================
--- components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/registration/mapping/RegistrationMapping.java 2011-10-12 14:52:32 UTC (rev 7734)
+++ components/wsrp/trunk/jcr-impl/src/main/java/org/gatein/wsrp/registration/mapping/RegistrationMapping.java 2011-10-12 15:11:32 UTC (rev 7735)
@@ -36,11 +36,11 @@
import org.gatein.pc.api.PortletContext;
import org.gatein.pc.api.PortletStateType;
import org.gatein.pc.api.StatefulPortletContext;
-import org.gatein.registration.Registration;
import org.gatein.registration.RegistrationException;
import org.gatein.registration.RegistrationStatus;
import org.gatein.registration.spi.ConsumerSPI;
import org.gatein.registration.spi.RegistrationSPI;
+import org.gatein.wsrp.jcr.mapping.BaseMapping;
import org.gatein.wsrp.registration.JCRRegistrationPersistenceManager;
import javax.xml.namespace.QName;
@@ -53,7 +53,7 @@
* @version $Revision$
*/
@PrimaryType(name = RegistrationMapping.NODE_NAME)
-public abstract class RegistrationMapping
+public abstract class RegistrationMapping implements BaseMapping<RegistrationSPI, JCRRegistrationPersistenceManager>
{
public static final String NODE_NAME = "wsrp:registration";
@@ -91,7 +91,7 @@
*
* @param registration
*/
- public void initFrom(Registration registration)
+ public void initFrom(RegistrationSPI registration)
{
setStatus(registration.getStatus());
setRegistrationHandle(registration.getRegistrationHandle());
@@ -136,27 +136,41 @@
}
}
- public RegistrationSPI toRegistration(JCRRegistrationPersistenceManager persistenceManager, ConsumerSPI consumer) throws RegistrationException
+ public RegistrationSPI toModel(RegistrationSPI initial, JCRRegistrationPersistenceManager persistenceManager)
{
- RegistrationPropertiesMapping rpm = getProperties();
- Map<QName, Object> props = Collections.emptyMap();
- if (rpm != null)
- {
- props = rpm.toPropMap();
- }
+ ParameterValidation.throwIllegalArgExceptionIfNull(initial, "RegistrationSPI");
- RegistrationSPI reg = persistenceManager.newRegistrationSPI(consumer, props);
- reg.setStatus(getStatus());
- reg.setRegistrationHandle(getRegistrationHandle());
- reg.setPersistentKey(getPersistentKey());
+ initial.setStatus(getStatus());
+ initial.setRegistrationHandle(getRegistrationHandle());
+ initial.setPersistentKey(getPersistentKey());
Collection<PortletContextMapping> pcms = getPortletContexts();
for (PortletContextMapping pcm : pcms)
{
PortletContext pc = PortletContext.createPortletContext(pcm.getId(), IOTools.safeGetBytes(pcm.getState()));
- reg.addPortletContext(pc, false); // no need to save since we're loading from persistence :)
+ try
+ {
+ initial.addPortletContext(pc, false); // no need to save since we're loading from persistence :)
+ }
+ catch (RegistrationException e)
+ {
+ throw new RuntimeException(e);
+ }
}
- return reg;
+ return initial;
}
+
+ public RegistrationSPI toRegistration(ConsumerSPI consumer, JCRRegistrationPersistenceManager persistenceManager) throws RegistrationException
+ {
+ RegistrationPropertiesMapping rpm = getProperties();
+ Map<QName, Object> props = Collections.emptyMap();
+ if (rpm != null)
+ {
+ props = rpm.toPropMap();
+ }
+
+ RegistrationSPI reg = persistenceManager.newRegistrationSPI(consumer, props);
+ return toModel(reg, persistenceManager);
+ }
}
More information about the gatein-commits
mailing list