@ReadOperation
	public Map<String, Object> router(@Selector String dstService) {
		Map<String, Object> result = new HashMap<>();

		if (StringUtils.hasText(dstService)) {
			List<RoutingProto.Route> routerRules = serviceRuleManager.getServiceRouterRule(MetadataContext.LOCAL_NAMESPACE,
					MetadataContext.LOCAL_SERVICE, dstService);
			List<Object> rules = new LinkedList<>();
			result.put("routerRules", rules);

			if (CollectionUtils.isEmpty(routerRules)) {
				return result;
			}

			for (RoutingProto.Route route : routerRules) {
				rules.add(parseRouterRule(route));
			}
		}

		return result;
	}
@Test
	public void testHasRouterRule() {
		Map<String, ModelProto.MatchString> labels = new HashMap<>();
		ModelProto.MatchString matchString = ModelProto.MatchString.getDefaultInstance();
		String validKey1 = "${http.header.uid}";
		String validKey2 = "${http.query.name}";
		String validKey3 = "${http.method}";
		String validKey4 = "${http.uri}";
		String validKey5 = "${http.body.customkey}";
		String invalidKey = "$http.expression.wrong}";
		labels.put(validKey1, matchString);
		labels.put(validKey2, matchString);
		labels.put(validKey3, matchString);
		labels.put(validKey4, matchString);
		labels.put(validKey5, matchString);
		labels.put(invalidKey, matchString);

		RoutingProto.Source source1 = RoutingProto.Source.newBuilder().putAllMetadata(labels).build();
		RoutingProto.Source source2 = RoutingProto.Source.newBuilder().putAllMetadata(labels).build();
		RoutingProto.Source source3 = RoutingProto.Source.newBuilder().putAllMetadata(new HashMap<>()).build();

		List<RoutingProto.Route> routes = new LinkedList<>();
		RoutingProto.Route route = RoutingProto.Route.newBuilder()
				.addAllSources(Lists.list(source1, source2, source3))
				.build();
		routes.add(route);

		when(serviceRuleManager.getServiceRouterRule(anyString(), anyString(), anyString())).thenReturn(routes);

		Map<String, Object> actuator = polarisRouterEndpoint.router(testDestService);

		assertThat(actuator.get("routerRules")).isNotNull();
		assertThat(((List<?>) actuator.get("routerRules")).size()).isEqualTo(1);
	}