in src/main/java/org/apache/sling/jms/impl/JMSTopicManager.java [160:185]
public SubscriberHolder(Session session, Subscriber subscriber, Map<String, Object> properties) {
try {
LOGGER.info("Creating Subscriber holder for {} ", subscriber.getClass());
String[] topicNames = (String[]) properties.get(Subscriber.TOPIC_NAMES_PROP);
if ( topicNames == null || topicNames.length == 0) {
throw new IllegalArgumentException("At least one valid topic name in property " + Subscriber.TOPIC_NAMES_PROP + " is required for Subscriber registration");
}
if ( subscriber instanceof MessageFilter) {
filteredTopicSubscriber = new FilteredTopicSubscriber(session, subscriber, topicNames, (MessageFilter)subscriber);
} else {
filteredTopicSubscriber = new FilteredTopicSubscriber(session, subscriber, topicNames, new MessageFilter() {
@Override
public boolean accept(Types.Name name, Map<String, Object> mapMessage) {
return true;
}
});
}
} catch (JMSException e) {
throw new IllegalArgumentException("Unable to register QueueReader with JMS ",e);
}
}