Author: chris.laprun(a)jboss.com
Date: 2009-12-05 00:32:23 -0500 (Sat, 05 Dec 2009)
New Revision: 939
Modified:
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/AbstractRegistrationPersistenceManager.java
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/Consumer.java
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/RegistrationManager.java
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/RegistrationPersistenceManager.java
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/RegistrationPolicy.java
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/impl/RegistrationImpl.java
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/impl/RegistrationManagerImpl.java
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/impl/RegistrationPersistenceManagerImpl.java
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/policies/DefaultRegistrationPolicy.java
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/policies/RegistrationPropertyValidator.java
components/wsrp/trunk/producer/src/main/java/org/gatein/wsrp/producer/RegistrationHandler.java
components/wsrp/trunk/producer/src/test/java/org/gatein/registration/AbstractRegistrationPersistenceManagerTestCase.java
components/wsrp/trunk/producer/src/test/java/org/gatein/registration/DefaultRegistrationPolicyTestCase.java
components/wsrp/trunk/producer/src/test/java/org/gatein/registration/RegistrationManagerTestCase.java
components/wsrp/trunk/producer/src/test/java/org/gatein/registration/RegistrationTestCase.java
components/wsrp/trunk/producer/src/test/java/org/gatein/wsrp/producer/config/TestRegistrationPolicy.java
Log:
- More generification.
- Fixed improper parameter type in RegistrationPolicy.validateRegistrationDataFor.
- Fixed improper package name in javadoc.
Modified:
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/AbstractRegistrationPersistenceManager.java
===================================================================
---
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/AbstractRegistrationPersistenceManager.java 2009-12-05
01:01:21 UTC (rev 938)
+++
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/AbstractRegistrationPersistenceManager.java 2009-12-05
05:32:23 UTC (rev 939)
@@ -27,6 +27,7 @@
import org.gatein.registration.spi.ConsumerSPI;
import org.gatein.registration.spi.RegistrationSPI;
+import javax.xml.namespace.QName;
import java.util.Map;
/**
@@ -94,7 +95,7 @@
consumer.removeRegistration(registration);
}
- public Registration addRegistrationFor(String consumerId, Map registrationProperties)
throws RegistrationException
+ public Registration addRegistrationFor(String consumerId, Map<QName, Object>
registrationProperties) throws RegistrationException
{
ParameterValidation.throwIllegalArgExceptionIfNullOrEmpty(consumerId,
"Consumer identity", null);
ParameterValidation.throwIllegalArgExceptionIfNull(registrationProperties,
"Registration properties");
@@ -144,7 +145,7 @@
protected abstract RegistrationSPI internalRemoveRegistration(String registrationId);
- protected abstract RegistrationSPI internalCreateRegistration(ConsumerSPI consumer,
Map registrationProperties);
+ protected abstract RegistrationSPI internalCreateRegistration(ConsumerSPI consumer,
Map<QName, Object> registrationProperties);
protected abstract void internalAddConsumer(ConsumerSPI consumer);
Modified:
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/Consumer.java
===================================================================
---
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/Consumer.java 2009-12-05
01:01:21 UTC (rev 938)
+++
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/Consumer.java 2009-12-05
05:32:23 UTC (rev 939)
@@ -63,7 +63,7 @@
* @return the consumer registrations
* @throws RegistrationException
*/
- Collection<? extends Registration> getRegistrations() throws
RegistrationException;
+ Collection<Registration> getRegistrations() throws RegistrationException;
/**
* Returns the group that this consumer belongs to.
Modified:
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/RegistrationManager.java
===================================================================
---
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/RegistrationManager.java 2009-12-05
01:01:21 UTC (rev 938)
+++
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/RegistrationManager.java 2009-12-05
05:32:23 UTC (rev 939)
@@ -23,6 +23,7 @@
package org.gatein.registration;
+import javax.xml.namespace.QName;
import java.util.Collection;
import java.util.Map;
@@ -43,7 +44,7 @@
void setPersistenceManager(RegistrationPersistenceManager persistenceManager);
- Registration addRegistrationTo(String consumerName, Map registrationProperties,
boolean createConsumerIfNeeded)
+ Registration addRegistrationTo(String consumerName, Map<QName, Object>
registrationProperties, boolean createConsumerIfNeeded)
throws RegistrationException;
Consumer createConsumer(String name) throws RegistrationException,
InvalidConsumerDataException;
@@ -69,13 +70,13 @@
ConsumerGroup getConsumerGroup(String groupName) throws RegistrationException;
- Collection getConsumerGroups() throws RegistrationException;
+ Collection<? extends ConsumerGroup> getConsumerGroups() throws
RegistrationException;
void removeConsumerGroup(ConsumerGroup group) throws RegistrationException;
void removeConsumerGroup(String name) throws RegistrationException;
- Collection getConsumers() throws RegistrationException;
+ Collection<? extends Consumer> getConsumers() throws RegistrationException;
void clear() throws RegistrationException;
}
Modified:
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/RegistrationPersistenceManager.java
===================================================================
---
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/RegistrationPersistenceManager.java 2009-12-05
01:01:21 UTC (rev 938)
+++
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/RegistrationPersistenceManager.java 2009-12-05
05:32:23 UTC (rev 939)
@@ -23,6 +23,7 @@
package org.gatein.registration;
+import javax.xml.namespace.QName;
import java.util.Collection;
import java.util.Map;
@@ -75,7 +76,7 @@
*/
Consumer getConsumerById(String consumerId) throws IllegalArgumentException,
RegistrationException;
- Registration addRegistrationFor(String consumerId, Map registrationProperties) throws
RegistrationException;
+ Registration addRegistrationFor(String consumerId, Map<QName, Object>
registrationProperties) throws RegistrationException;
Collection<? extends ConsumerGroup> getConsumerGroups();
Modified:
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/RegistrationPolicy.java
===================================================================
---
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/RegistrationPolicy.java 2009-12-05
01:01:21 UTC (rev 938)
+++
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/RegistrationPolicy.java 2009-12-05
05:32:23 UTC (rev 939)
@@ -51,7 +51,7 @@
* @throws IllegalArgumentException if any of the registration properties is invalid
for the specified Consumer
* @throws RegistrationException if an exception occured in the registration
service
*/
- void validateRegistrationDataFor(Map<QName, ? extends PropertyDescription>
registrationProperties, String consumerIdentity)
+ void validateRegistrationDataFor(Map<QName, Object> registrationProperties,
String consumerIdentity)
throws IllegalArgumentException, RegistrationException;
/**
@@ -91,7 +91,7 @@
* Consumer identity and decides that they are
not in a proper state
* @throws IllegalArgumentException if the specified Consumer name if
<code>null</code> or empty
*/
- String getConsumerIdFrom(String consumerName, Map registrationProperties)
+ String getConsumerIdFrom(String consumerName, Map<QName, Object>
registrationProperties)
throws IllegalArgumentException, InvalidConsumerDataException;
/**
Modified:
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/impl/RegistrationImpl.java
===================================================================
---
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/impl/RegistrationImpl.java 2009-12-05
01:01:21 UTC (rev 938)
+++
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/impl/RegistrationImpl.java 2009-12-05
05:32:23 UTC (rev 939)
@@ -49,7 +49,7 @@
private String registrationHandle;
- public RegistrationImpl(String key, ConsumerSPI consumer, RegistrationStatus status,
Map properties)
+ RegistrationImpl(String key, ConsumerSPI consumer, RegistrationStatus status,
Map<QName, Object> properties)
{
this.key = key;
this.consumer = consumer;
Modified:
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/impl/RegistrationManagerImpl.java
===================================================================
---
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/impl/RegistrationManagerImpl.java 2009-12-05
01:01:21 UTC (rev 938)
+++
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/impl/RegistrationManagerImpl.java 2009-12-05
05:32:23 UTC (rev 939)
@@ -82,7 +82,7 @@
this.persistenceManager = persistenceManager;
}
- public Registration addRegistrationTo(String consumerName, Map registrationProperties,
boolean createConsumerIfNeeded)
+ public Registration addRegistrationTo(String consumerName, Map<QName, Object>
registrationProperties, boolean createConsumerIfNeeded)
throws RegistrationException
{
// the policy determines the identity of the consumer based on the given
information (note that this might be obsoleted by using WS-Security)
@@ -278,7 +278,7 @@
}
}
- public Collection getConsumerGroups()
+ public Collection<? extends ConsumerGroup> getConsumerGroups()
{
return persistenceManager.getConsumerGroups();
}
@@ -301,7 +301,7 @@
removeConsumerGroup(getConsumerGroup(name));
}
- public Collection getConsumers()
+ public Collection<? extends Consumer> getConsumers()
{
return persistenceManager.getConsumers();
}
Modified:
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/impl/RegistrationPersistenceManagerImpl.java
===================================================================
---
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/impl/RegistrationPersistenceManagerImpl.java 2009-12-05
01:01:21 UTC (rev 938)
+++
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/impl/RegistrationPersistenceManagerImpl.java 2009-12-05
05:32:23 UTC (rev 939)
@@ -34,6 +34,7 @@
import org.gatein.registration.spi.ConsumerSPI;
import org.gatein.registration.spi.RegistrationSPI;
+import javax.xml.namespace.QName;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
@@ -51,17 +52,17 @@
private Map<String, ConsumerGroupSPI> groups = new HashMap<String,
ConsumerGroupSPI>();
private Map<String, RegistrationSPI> registrations = new HashMap<String,
RegistrationSPI>();
- public Collection<? extends Consumer> getConsumers()
+ public Collection<ConsumerSPI> getConsumers()
{
return Collections.unmodifiableCollection(consumers.values());
}
- public Collection<? extends Registration> getRegistrations()
+ public Collection<RegistrationSPI> getRegistrations()
{
return Collections.unmodifiableCollection(registrations.values());
}
- public Collection<? extends ConsumerGroup> getConsumerGroups()
+ public Collection<ConsumerGroupSPI> getConsumerGroups()
{
return Collections.unmodifiableCollection(groups.values());
}
@@ -100,12 +101,12 @@
}
@Override
- protected RegistrationSPI internalCreateRegistration(ConsumerSPI consumer, Map
registrationProperties)
+ protected RegistrationSPI internalCreateRegistration(ConsumerSPI consumer,
Map<QName, Object> registrationProperties)
{
return newRegistrationSPI(consumer, registrationProperties, "" +
lastRegistrationId++);
}
- public RegistrationSPI newRegistrationSPI(ConsumerSPI consumer, Map
registrationProperties, String registrationKey)
+ public RegistrationSPI newRegistrationSPI(ConsumerSPI consumer, Map<QName,
Object> registrationProperties, String registrationKey)
{
return new RegistrationImpl(registrationKey, consumer, RegistrationStatus.PENDING,
registrationProperties);
}
Modified:
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/policies/DefaultRegistrationPolicy.java
===================================================================
---
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/policies/DefaultRegistrationPolicy.java 2009-12-05
01:01:21 UTC (rev 938)
+++
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/policies/DefaultRegistrationPolicy.java 2009-12-05
05:32:23 UTC (rev 939)
@@ -27,12 +27,12 @@
import org.gatein.registration.Consumer;
import org.gatein.registration.DuplicateRegistrationException;
import org.gatein.registration.InvalidConsumerDataException;
-import org.gatein.wsrp.registration.PropertyDescription;
import org.gatein.registration.Registration;
import org.gatein.registration.RegistrationException;
import org.gatein.registration.RegistrationManager;
import org.gatein.registration.RegistrationPolicy;
import org.gatein.registration.RegistrationStatus;
+import org.gatein.wsrp.registration.PropertyDescription;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -80,7 +80,7 @@
* @throws DuplicateRegistrationException if a Consumer with the same identity has
already registered with the same
* registration properties.
*/
- public void validateRegistrationDataFor(Map<QName, ? extends
PropertyDescription> registrationProperties, String consumerIdentity)
+ public void validateRegistrationDataFor(Map<QName, Object>
registrationProperties, String consumerIdentity)
throws IllegalArgumentException, RegistrationException
{
ParameterValidation.throwIllegalArgExceptionIfNull(registrationProperties,
"Registration properties");
@@ -137,9 +137,8 @@
{
// allow the new registration only if the registration properties are different
that existing registrations
// for this consumer...
- for (Object o : consumer.getRegistrations())
+ for (Registration registration : consumer.getRegistrations())
{
- Registration registration = (Registration)o;
if (registration.hasEqualProperties(registrationProperties))
{
throw new DuplicateRegistrationException("Consumer named '"
+ consumer.getName()
@@ -164,7 +163,7 @@
}
/** Simply returns the given consumer name, trusted (!) to be unique. */
- public String getConsumerIdFrom(String consumerName, Map registrationProperties)
throws IllegalArgumentException, InvalidConsumerDataException
+ public String getConsumerIdFrom(String consumerName, Map<QName, Object>
registrationProperties) throws IllegalArgumentException, InvalidConsumerDataException
{
ParameterValidation.throwIllegalArgExceptionIfNullOrEmpty(consumerName,
"Consumer name", null);
return consumerName;
@@ -175,7 +174,7 @@
{
ParameterValidation.throwIllegalArgExceptionIfNullOrEmpty(consumerName,
"Consumer name", null);
- Consumer consumer = manager.getConsumerByIdentity(getConsumerIdFrom(consumerName,
Collections.EMPTY_MAP));
+ Consumer consumer = manager.getConsumerByIdentity(getConsumerIdFrom(consumerName,
Collections.<QName, Object>emptyMap()));
if (consumer != null)
{
throw new DuplicateRegistrationException("A Consumer named '" +
consumerName + "' has already been registered.");
Modified:
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/policies/RegistrationPropertyValidator.java
===================================================================
---
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/policies/RegistrationPropertyValidator.java 2009-12-05
01:01:21 UTC (rev 938)
+++
components/wsrp/trunk/producer/src/main/java/org/gatein/registration/policies/RegistrationPropertyValidator.java 2009-12-05
05:32:23 UTC (rev 939)
@@ -27,7 +27,7 @@
/**
* An interface providing an entry point for WSRP deployers to plug their registration
property validation mechanism in
- * {@link org.jboss.portal.registration.policies.DefaultRegistrationPolicy}.
Implementations of this interface
+ * {@link org.gatein.registration.policies.DefaultRegistrationPolicy}. Implementations of
this interface
* <strong>MUST</strong> provide a no-argument constructor for instantiation
from the class name.
*
* @author <a href="mailto:chris.laprun@jboss.com">Chris
Laprun</a>
Modified:
components/wsrp/trunk/producer/src/main/java/org/gatein/wsrp/producer/RegistrationHandler.java
===================================================================
---
components/wsrp/trunk/producer/src/main/java/org/gatein/wsrp/producer/RegistrationHandler.java 2009-12-05
01:01:21 UTC (rev 938)
+++
components/wsrp/trunk/producer/src/main/java/org/gatein/wsrp/producer/RegistrationHandler.java 2009-12-05
05:32:23 UTC (rev 939)
@@ -212,7 +212,7 @@
{
Registration registration =
producer.getRegistrationManager().getRegistration(registrationHandle);
- Map properties = createRegistrationProperties(registrationData);
+ Map<QName, Object> properties =
createRegistrationProperties(registrationData);
// check that the given registration properties are acceptable according to
expectations and policy
ProducerRegistrationRequirements req =
producer.getProducerRegistrationRequirements();
Modified:
components/wsrp/trunk/producer/src/test/java/org/gatein/registration/AbstractRegistrationPersistenceManagerTestCase.java
===================================================================
---
components/wsrp/trunk/producer/src/test/java/org/gatein/registration/AbstractRegistrationPersistenceManagerTestCase.java 2009-12-05
01:01:21 UTC (rev 938)
+++
components/wsrp/trunk/producer/src/test/java/org/gatein/registration/AbstractRegistrationPersistenceManagerTestCase.java 2009-12-05
05:32:23 UTC (rev 939)
@@ -42,7 +42,7 @@
{
/** . */
- private Map registrationProperties;
+ private Map<QName, Object> registrationProperties;
public abstract RegistrationPersistenceManager getManager();
@@ -56,7 +56,7 @@
public void setUp() throws Exception
{
- registrationProperties = new HashMap();
+ registrationProperties = new HashMap<QName, Object>();
registrationProperties.put(new QName("prop1"), "value1");
registrationProperties.put(new QName("prop2"), "value2");
}
Modified:
components/wsrp/trunk/producer/src/test/java/org/gatein/registration/DefaultRegistrationPolicyTestCase.java
===================================================================
---
components/wsrp/trunk/producer/src/test/java/org/gatein/registration/DefaultRegistrationPolicyTestCase.java 2009-12-05
01:01:21 UTC (rev 938)
+++
components/wsrp/trunk/producer/src/test/java/org/gatein/registration/DefaultRegistrationPolicyTestCase.java 2009-12-05
05:32:23 UTC (rev 939)
@@ -24,8 +24,8 @@
public class DefaultRegistrationPolicyTestCase extends TestCase
{
DefaultRegistrationPolicy policy;
- Map registrationProperties;
- HashMap<QName, PropertyDescription> expectations;
+ Map<QName, Object> registrationProperties;
+ Map<QName, PropertyDescription> expectations;
private static final String CONSUMER = "consumer";
private static final QName PROP1 = new QName("prop1");
private static final QName PROP2 = new QName("prop2");
@@ -45,7 +45,7 @@
policy.setManager(manager);
- registrationProperties = new HashMap();
+ registrationProperties = new HashMap<QName, Object>();
registrationProperties.put(PROP1, "value1");
registrationProperties.put(PROP2, "value2");
@@ -67,7 +67,7 @@
try
{
- policy.validateRegistrationDataFor(Collections.EMPTY_MAP, null);
+ policy.validateRegistrationDataFor(Collections.<QName, Object>emptyMap(),
null);
fail("null data cannot be validated");
}
catch (IllegalArgumentException e)
@@ -80,7 +80,7 @@
{
try
{
- policy.validateRegistrationDataFor(Collections.EMPTY_MAP, "foo");
+ policy.validateRegistrationDataFor(Collections.<QName, Object>emptyMap(),
"foo");
}
catch (RegistrationException e)
{
Modified:
components/wsrp/trunk/producer/src/test/java/org/gatein/registration/RegistrationManagerTestCase.java
===================================================================
---
components/wsrp/trunk/producer/src/test/java/org/gatein/registration/RegistrationManagerTestCase.java 2009-12-05
01:01:21 UTC (rev 938)
+++
components/wsrp/trunk/producer/src/test/java/org/gatein/registration/RegistrationManagerTestCase.java 2009-12-05
05:32:23 UTC (rev 939)
@@ -42,7 +42,7 @@
{
private RegistrationManager manager;
- private Map registrationProperties;
+ private Map<QName, Object> registrationProperties;
protected void setUp() throws Exception
{
@@ -54,7 +54,7 @@
policy.setManager(manager);
//todo: registration properties setup will need to be updated when property
validation is implemented
- registrationProperties = new HashMap();
+ registrationProperties = new HashMap<QName, Object>();
registrationProperties.put(new QName("prop1"), "value1");
registrationProperties.put(new QName("prop2"), "value2");
}
Modified:
components/wsrp/trunk/producer/src/test/java/org/gatein/registration/RegistrationTestCase.java
===================================================================
---
components/wsrp/trunk/producer/src/test/java/org/gatein/registration/RegistrationTestCase.java 2009-12-05
01:01:21 UTC (rev 938)
+++
components/wsrp/trunk/producer/src/test/java/org/gatein/registration/RegistrationTestCase.java 2009-12-05
05:32:23 UTC (rev 939)
@@ -27,7 +27,6 @@
import org.gatein.registration.impl.RegistrationManagerImpl;
import org.gatein.registration.impl.RegistrationPersistenceManagerImpl;
import org.gatein.registration.policies.DefaultRegistrationPolicy;
-import org.gatein.wsrp.registration.PropertyDescription;
import javax.xml.namespace.QName;
import java.util.HashMap;
@@ -41,14 +40,14 @@
public class RegistrationTestCase extends TestCase
{
private Registration registration;
- private Map registrationProperties;
+ private Map<QName, Object> registrationProperties;
protected void setUp() throws Exception
{
RegistrationManager manager = new RegistrationManagerImpl();
RegistrationPolicy policy = new DefaultRegistrationPolicy()
{
- public void validateRegistrationDataFor(Map<QName, ? extends
PropertyDescription> registrationProperties, String consumerIdentity) throws
IllegalArgumentException, RegistrationException, DuplicateRegistrationException
+ public void validateRegistrationDataFor(Map<QName, Object>
registrationProperties, String consumerIdentity) throws IllegalArgumentException,
RegistrationException, DuplicateRegistrationException
{
// accept any registration data here
}
@@ -57,7 +56,7 @@
manager.setPersistenceManager(new RegistrationPersistenceManagerImpl());
policy.setManager(manager);
- registrationProperties = new HashMap();
+ registrationProperties = new HashMap<QName, Object>();
registrationProperties.put(new QName("prop1"), "value1");
registrationProperties.put(new QName("prop2"), "value2");
Modified:
components/wsrp/trunk/producer/src/test/java/org/gatein/wsrp/producer/config/TestRegistrationPolicy.java
===================================================================
---
components/wsrp/trunk/producer/src/test/java/org/gatein/wsrp/producer/config/TestRegistrationPolicy.java 2009-12-05
01:01:21 UTC (rev 938)
+++
components/wsrp/trunk/producer/src/test/java/org/gatein/wsrp/producer/config/TestRegistrationPolicy.java 2009-12-05
05:32:23 UTC (rev 939)
@@ -39,7 +39,7 @@
*/
public class TestRegistrationPolicy implements RegistrationPolicy
{
- public void validateRegistrationDataFor(Map<QName, ? extends
PropertyDescription> registrationProperties, String consumerIdentity) throws
IllegalArgumentException, RegistrationException
+ public void validateRegistrationDataFor(Map<QName, Object>
registrationProperties, String consumerIdentity) throws IllegalArgumentException,
RegistrationException
{
}
@@ -53,7 +53,7 @@
return null;
}
- public String getConsumerIdFrom(String consumerName, Map registrationProperties)
throws IllegalArgumentException, InvalidConsumerDataException
+ public String getConsumerIdFrom(String consumerName, Map<QName, Object>
registrationProperties) throws IllegalArgumentException, InvalidConsumerDataException
{
return null;
}