Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  package net.nan21.dnet.core.web.controller.ui.extjs;
  
  import java.io.File;
  import java.io.FileWriter;
  import java.io.Writer;
 import java.util.List;
 
 import  org.codehaus.jackson.map.ObjectMapper;
 import  org.codehaus.jackson.type.TypeReference;
 
 public class DependencyLoader {
 
 	private ObjectMapper jsonMapper = new ObjectMapper();
 	private HttpClient httpClient = new DefaultHttpClient();
 
 
 	public void packFrameCmp(String bundleString nameFile file)
 			throws Exception {
 
 		List<Stringlist = new ArrayList<String>();
 		this.resolveFrameDependencies(bundlenamenulllistnull);
 		Writer writer = new BufferedWriter(new OutputStreamWriter(
 			    new FileOutputStream(file), "ISO-8859-1"));  
 		//new FileWriter(file);
 
 		try {
 			for (String dep : list) {
 				this.writeContentCmp(depwriter);
 			}
 		} finally {
 			writer.close();
 		}
 	}
 
 	public void packFrameTrl(String bundleString nameString language,
 			File filethrows Exception {
 
 		List<Stringlist = new ArrayList<String>();
 		this.resolveFrameDependencies(bundlenamelanguagenulllist);
 		Writer writer = new BufferedWriter(new OutputStreamWriter(
 				    new FileOutputStream(file), "ISO-8859-1"));  
 
 		try {
 			for (String dep : list) {
 				this.writeContentTrl(deplanguagewriter);
 			}
 		} finally {
 			writer.close();
 		}
 	}
 
 		Dependencies d = new Dependencies();
 		this.resolveAllDependencies(framed);
 		return d;
 	}

Resolve all the dependencies used in this frame adding them to the specified lists.One list for the components the other one for the translations for the given language..

Parameters:
cmp
Returns:
Throws:
Exception
 
 	public void resolveFrameDependencies(String bundleString name,
 			String languageList<StringlistCmpList<StringlistTrl)
 			throws Exception {
 
 		String cmp = bundle + "/frame/" + name;
 
 
 		if (d.getDs() != null) {
 			for (String dep : d.getDs()) {
 				String[] tokens = dep.split("/");
 				String _bundle = tokens[0];
 				String _type = tokens[1];
 				String _name = tokens[2];
 
 				if (listCmp != null) {
 					listCmp.add(urlCmp(_bundle_type_name));
 				}
				if (listTrl != null) {
					listTrl.add(urlTrl(_bundle_type_namelanguage));
				}
			}
		}
		if (d.getLov() != null) {
			for (String dep : d.getLov()) {
				if (listCmp != null) {
					listCmp.add(urlCmp(dep));
				}
			}
		}
		if (d.getAsgn() != null) {
			for (String dep : d.getAsgn()) {
				if (listCmp != null) {
					listCmp.add(urlCmp(dep));
				}
			}
		}
		if (d.getDc() != null) {
			for (String dep : d.getDc()) {
				if (listCmp != null) {
					listCmp.add(urlCmp(dep));
				}
			}
		}
		if (listCmp != null) {
			listCmp.add(urlCmp(bundle.name));
		}
		if (listTrl != null) {
			listTrl.add(urlTrl(bundle.namelanguage));
		}
	}
	private void writeContentTrl(String cmpString languageWriter writer)
			throws Exception {
		this.writeContentByUrl(cmpwriter);
	}
	private void writeContentCmp(String cmpWriter writerthrows Exception {
		this.writeContentByUrl(cmpwriter);
	}
	private void writeContentByUrl(String urlWriter writerthrows Exception {
		HttpGet get = new HttpGet(url);
		ResponseHandler<StringresponseHandler = new BasicResponseHandler();
		String responseBody = getHttpClient().execute(getresponseHandler);
		writer.write(responseBody);
	}

Resolve the dependencies of the given component and returns them in a list.

Parameters:
cmp
Returns:
Throws:
Exception
	private List<StringresolveCmpDependencies(String cmpthrows Exception {
		HttpGet get = new HttpGet(this.urlDpd(cmp));
		ResponseHandler<StringresponseHandler = new BasicResponseHandler();
		List<Stringresult = null;
		try {
			String responseBody = getHttpClient().execute(getresponseHandler);
			result = getJsonMapper().readValue(responseBody,
					new TypeReference<List<String>>() {
					});
catch (HttpResponseException e) {
			if (e.getStatusCode() != 404) {
			}
catch (ClientProtocolException e) {
			// TODO Auto-generated catch block
catch (IOException e) {
			// TODO Auto-generated catch block
		}
		return result;
	}

Recursively resolve all the dependencies of the given component adding the elements to the given stack.

Parameters:
cmp
stack
Throws:
Exception
	private void resolveAllDependencies(String cmpDependencies stack)
			throws Exception {
		List<Stringdeps = this.resolveCmpDependencies(cmp);
		if (deps != null) {
			for (String dep : deps) {
				String _type = dep.split("/")[1];
					stack.addDs(dep);
				}
					stack.addDc(dep);
				}
					stack.addLov(dep);
				}
					stack.addAsgn(dep);
				}
				this.resolveAllDependencies(depstack);
			}
		}
	}
	// private helpers
Return the URL of the dependencies file for the specified component.

Parameters:
bundle
type
name
Returns:
	private String urlDpd(String cmp) {
		String[] tokens = cmp.split("/");
		String bundle = tokens[0];
		String type = tokens[1];
		String name = tokens[2];
		return this.urlDpd(bundletypename);
	}

Return the URL of the dependencies file for the specified component.

Parameters:
bundle
type
name
Returns:
	private String urlDpd(String bundleString typeString name) {
		return this. + "/" + bundle
this. + "/" + type + "/" + name
".jsdp";
	}

Return the URL for the specified component.

Parameters:
bundle
type
name
Returns:
	private String urlCmp(String cmp) {
		String[] tokens = cmp.split("/");
		String bundle = tokens[0];
		String type = tokens[1];
		String name = tokens[2];
		return this.urlCmp(bundletypename);
	}

Return the URL for the specified component.

Parameters:
bundle
type
name
Returns:
	private String urlCmp(String bundleString typeString name) {
		return  + "/" + bundle +  + "/"
type + "/" + name + ".js";
	}

Return the URL of the translation file for the specified component.

Parameters:
bundle
type
name
language
Returns:
	private String urlTrl(String cmpString language) {
		String[] tokens = cmp.split("/");
		String bundle = tokens[0];
		String type = tokens[1];
		String name = tokens[2];
		return this.urlTrl(bundletypenamelanguage);
	}

Return the URL of the translation file for the specified component.

Parameters:
bundle
type
name
language
Returns:
	private String urlTrl(String bundleString typeString name,
			String language) {
		return  + "/" + language + "/" + bundle + "/"
type + "/" + name + ".js";
	}
		return ;
	}
	public void setHttpClient(HttpClient httpClient) {
		this. = httpClient;
	}
	public ObjectMapper getJsonMapper() {
		return ;
	}
	public void setJsonMapper(ObjectMapper jsonMapper) {
		this. = jsonMapper;
	}
	}
	public void setUrlUiExtjsModules(String urlUiExtjsModules) {
		this. = urlUiExtjsModules;
	}
	}
	public void setUrlUiExtjsModuleSubpath(String urlUiExtjsModuleSubpath) {
		this. = urlUiExtjsModuleSubpath;
	}
	}
	public void setUrlUiExtjsModulesI18n(String urlUiExtjsModulesI18n) {
		this. = urlUiExtjsModulesI18n;
	}
New to GrepCode? Check out our FAQ X