}
else if (localSubscriptions.containsKey(subject)) {
deliverToSubscriptions(localSubscriptions, subject, message);
}
else if (!deferred && !routedToRemote) {
throw new NoSubscribersToDeliverTo(subject);
}
}
else {
throw new RuntimeException("Cannot send message using this method"
+ " if the message does not contain a ToSubject field.");