Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 package org.duelengine.duel.staticapps;
 
 import java.util.Map;
 
 
	private final Map<StringStringcache = new HashMap<StringString>();
	private final Map<StringStringlinksBundle;
	private final int cdnHostPrefix;
	public StaticLinkInterceptor(String cdnHostResourceBundle cdnBundleResourceBundle linksBundleboolean isDevMode)
		this(cdnHostbundleAsMap(cdnBundleisDevMode), bundleAsMap(linksBundleisDevMode), isDevMode);
	}
	public StaticLinkInterceptor(String cdnHostMap<StringStringcdnBundleMap<StringStringlinksBundleboolean isDevMode)
		super(cdnHostcdnBundleisDevMode);
		this. = linksBundle;
		this. = cdnHost.length();
	}
	public Map<StringStringgetLinkCache() {
		return ;
	}
	public String transformURL(String url) {
		if (.containsKey(url)) {
			return .get(url);
		}
		// intercept requests for transformation
		String cdnURL = super.transformURL(url);
		// collect an accumulated list
		.put(urlcdnURL);
		// recursively transform and cache child links
		if (.containsKey(url)) {
			String childLinks = .get(url);
			if (childLinks != null && !childLinks.isEmpty()) {
				for (String child : childLinks.split("\\|")) {
					if (child == null || child.isEmpty()) {
						continue;
					}
					// ignore result, we only care about caching
					this.transformURL(child);
				}
			}
		}
		if ( && (cdnURL.length() > ) && .containsKey(cdnURL.substring())) {
			// note must trim the CDN host to match
			String childLinks = .get(cdnURL.substring());
			if (childLinks != null && !childLinks.isEmpty()) {
				for (String child : childLinks.split("\\|")) {
					if (child == null || child.isEmpty()) {
						continue;
					}
					// ignore result, we only care about caching
					this.transformURL(child);
				}
			}
		}
		return cdnURL;
	}
New to GrepCode? Check out our FAQ X