@Override
    public void removeListener(int listenerId) {
        super.removeListener(listenerId);

        String topicName = getNameByListenerId(listenerId);
        if (topicName != null) {
            RTopic topic = getTopic(topicName);
            removeListenerId(topicName, listenerId);
            topic.removeListener(listenerId);
        }
    }
@Test
    public void testRemoveListener() {
        RMapCache<Long, String> rMapCache = redisson.getMapCache("test");
        rMapCache.trySetMaxSize(5);
        AtomicBoolean removed = new AtomicBoolean();
        rMapCache.addListener(new EntryRemovedListener() {
            @Override
            public void onRemoved(EntryEvent event) {
                removed.set(true);
            }
        });

        rMapCache.put(1L, "1");
        rMapCache.put(2L, "2");
        rMapCache.put(3L, "3");
        rMapCache.put(4L, "4");
        rMapCache.put(5L, "5");

        rMapCache.put(6L, "6");

        Awaitility.await().atMost(5, TimeUnit.SECONDS).untilTrue(removed);
    }