protected AjaxPluginIncludes extractIncludes(String strResult) {
AjaxPluginIncludes result = new AjaxPluginIncludes();
if (strResult == null || strResult.length() == 0)
return result;
StringInspector strResultInspector = new StringInspector(strResult);
int headStartIdx = strResultInspector.indexOfIgnoreCase(Tag.HEAD.start);
int headEndIdx = strResultInspector.indexOfIgnoreCase(Tag.HEAD.end);
if (headEndIdx == -1 || headStartIdx == -1) {
return result;
}
StringInspector strHead = strResultInspector.substring(headStartIdx + Tag.HEAD.start.length(), headEndIdx);
int scriptStartIdx;
// process javascript libraries and javascripts (init scripts)
final String scriptEndStr = Tag.SCRIPT.end;
while ((scriptStartIdx = strHead.indexOfIgnoreCase(SCRIPT)) > -1) {
int scriptEndIdx = strHead.indexOfIgnoreCase(scriptEndStr) + scriptEndStr.length();
StringInspector script;
boolean endOfString = scriptEndIdx > strHead.toString().length() - 1;
if (endOfString) {
script = strHead.substring(scriptStartIdx);
} else {
script = strHead.substring(scriptStartIdx, scriptEndIdx);
}
String tempRes = getJsLibrarySourceString(script.toString());
if (tempRes.length() > 0)
result.getJsIncludes().add(tempRes);
else {
tempRes = getPureJavaScript(script);
if (tempRes.length() > 0) {