Desculpe, tinha entendido errado Kaique.
Bom para isso você vai precisar de alguma lib que implemente o protocolo SNMP
.
É um protocolo de gerenciamento de redes (uma das coisas que se pode fazer com ele é monitorar quando algum device se conecta a rede, sai da rede e ficar ouvindo quando uma requisição chega a determinado device).
A partir dele você consegue, localizar todos os devices na rede (precisará filtrar quais são as impressoras) e com ele também é possível monitorar requisições à determinado(s) device(s) na rede (essa seria a forma de implementar o listener).
Eu nunca precisei fazer algo desse tipo, mas dando uma googlada achei http://www.snmp4j.org.
Talvez valha a pena dar uma olhada nesse cara.
Espero ter ajudado!