repository listener