private void ProcessGroup(WebAssetItemGroup group, string contentType, string assetHandlerPath, IList<string> urls)
{
if (group.Combined)
{
var fullUrls = FilterFullUrls(group);
foreach (string fullUrl in fullUrls)
{
if (!urls.Contains(fullUrl, StringComparer.OrdinalIgnoreCase))
{
urls.Add(fullUrl);
}
}
string id = assetRegistry.Store(contentType, group);
string virtualPath = "{0}?{1}={2}".FormatWith(assetHandlerPath, urlEncoder.Encode(WebAssetHttpHandler.IdParameterName), urlEncoder.Encode(id));
string relativePath = urlResolver.Resolve(virtualPath);
if (!urls.Contains(relativePath, StringComparer.OrdinalIgnoreCase))
{
urls.Add(relativePath);
}
}
else
{
group.Items.Each(i =>
{
if (!urls.Contains(i.Source, StringComparer.OrdinalIgnoreCase))
{
urls.Add(Resolve(i.Source, group.Version));
}
});
}
}