code: @Override
  	public ModuleBuild build(String mid, IResource resource, HttpServletRequest request, List<ICacheKeyGenerator> keyGens) throws Exception {
  		StringBuffer sb = new StringBuffer();
  		Boolean exportMid = TypeUtil.asBoolean(request.getAttribute(IHttpTransport.EXPORTMODULENAMES_REQATTRNAME));
  		Boolean noTextAdorn = TypeUtil.asBoolean(request.getAttribute(IHttpTransport.NOTEXTADORN_REQATTRNAME));
  		if (noTextAdorn) {
  			sb.append("'"); //$NON-NLS-1$
  		} else if (exportMid != null && exportMid.booleanValue()) {
  			sb.append("define(\"").append(mid).append("\",'"); //$NON-NLS-1$ //$NON-NLS-2$
  		} else {
  			sb.append("define('"); //$NON-NLS-1$
  		}
  		StringWriter writer = new StringWriter();
  		MutableObject<List<ICacheKeyGenerator>> keyGensRef = new MutableObject<List<ICacheKeyGenerator>>(keyGens);
  		CopyUtil.copy(
  				new JavaScriptEscapingReader(
  						getContentReader(mid, resource, request, keyGensRef)
  						),
  						writer
  				);
  		sb.append(writer.toString());
  		sb.append(noTextAdorn ? "'" : "');"); //$NON-NLS-1$ //$NON-NLS-2$
  		return new ModuleBuild(sb.toString(), keyGensRef.getValue(), null);
  	}
docs: /* (non-Javadoc)
  @see com.ibm.domino.servlets.aggrsvc.modules.JsModule#getSourceFile()