@Override
    public Map<String, List<String>> getRequestTag(Object invoker, Object invocation, Map<String, Object> attachments,
            Set<String> matchKeys, Set<String> injectTags) {
        if (CollectionUtils.isEmpty(matchKeys)) {
            return Collections.emptyMap();
        }
        return getRequestTag(attachments, matchKeys);
    }
@Test
    public void testGetRequestTag() {
        // normal
        configService.setReturnEmptyWhenGetMatchKeys(false);
        Map<String, List<String>> requestTag = routeContextFilterHandler
                .getRequestTag(null, invocation, invocation.getObjectAttachments(),
                        configService.getMatchKeys(), configService.getInjectTags());
        Assert.assertNotNull(requestTag);
        Assert.assertEquals(2, requestTag.size());
        Assert.assertEquals("bar1", requestTag.get("bar").get(0));
        Assert.assertEquals("foo1", requestTag.get("foo").get(0));

        // Test getMatchKeys returns null
        configService.setReturnEmptyWhenGetMatchKeys(true);
        requestTag = routeContextFilterHandler.getRequestTag(null, invocation, invocation.getObjectAttachments(),
                configService.getMatchKeys(), configService.getInjectTags());
        Assert.assertEquals(Collections.emptyMap(), requestTag);
    }