{
RepositoryRouteResourceResponse result = null;
try {
RepositoryPathMapping route = getRepositoryMapper().getMappings().get(getRouteId(request));
if (route == null) {
throw new ResourceException(Status.CLIENT_ERROR_NOT_FOUND, "No such route");
}
RepositoryRouteResource resource = new RepositoryRouteResource();
resource.setId(getRouteId(request));
if (!route.isAllGroups()) {
// XXX: added to check access to group
this.getRepositoryRegistry().getRepositoryWithFacet(route.getGroupId(), GroupRepository.class);
}
resource.setGroupId(route.getGroupId());
resource.setRuleType(config2resourceType(route.getMappingType()));
// XXX: cstamas -- a hack!
resource.setPattern(route.getPatterns().get(0).toString());
resource.setRepositories(getRepositoryRouteMemberRepositoryList(request.getResourceRef().getParentRef(),
route.getMappedRepositories(), request, route.getId()));
result = new RepositoryRouteResourceResponse();
result.setData(resource);
}