tree 9c9572191e90ea97f8ead5ada7750fc8d6f1352c
parent 823456463e47a1344aa9bb7c85a639be213d9e78
author tuteng <eguangning@gmail.com> 1562744211 +0800
committer Sijie Guo <sijie@apache.org> 1562744211 -0700

A preliminary version of spring-pulsar (#104)

* A preliminary version of spring-pulsar is implemented, include PulsarClient and Consumer. Because producer is not currently available, it has not been implemented for the time being.
PulsarClient reads the configuration from the  file application.properties and then generates an instance. Use PulsarListener annotation to generate Consumer. Schema can be used.

One example:
```
@Service
public class PulsarEventReceive {

    private static final Logger log = LoggerFactory.getLogger(PulsarEventReceive.class);

    @PulsarListener(topic = "test", subscriptionName = "test")
    public void receive(Message message) {
        log.info("Received messages: {}", message);
    }
}
```

