public void MapPinningRule(WebMap webMap, string registeredSectionUri = null) { var sectionUri = registeredSectionUri ?? webMap.Section.GetMappingUrl(); if (registeredSectionUri == null) { RegisterEmptyHandler(sectionUri); } string token = webMap.GetMappingToken(); string mapUri = webMap.GetMappingUrl(); // map URI for empty Catch URI on the blending token if (webMap.Url != null && !Blender.IsMapped(sectionUri, token)) { Blender.MapUri(sectionUri, token); } // map URI for WebMap's Catch URI on the same blending token; // this will be calling by WebsiteProvider if (!Blender.IsMapped(mapUri, token)) { RegisterEmptyHandler(mapUri); Blender.MapUri(mapUri, token); } // map URI for WebMap's Pin URI on the same token Blender.MapUri(webMap.ForeignUrl, token); }