<?xml version="1.0"?>
<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="1.2">
<jsp:directive.page import="java.util.*,com.perforce.api.*,org.apache.crimson.tree.*" contentType="text/html;charset=ISO-8859-1"/>
<jsp:directive.include file="session.jsp"/>
<jsp:scriptlet>title="P4JSP FileView";</jsp:scriptlet>
<jsp:text><HTML><HEAD>
<jsp:directive.include file="head.jsp"/>
</HEAD>
<BODY bgcolor="#FFFFFF" marginheight="0" marginwidth="0" topmargin="0" leftmargin="0">
<TABLE width="780" cellspacing="0" cellpadding="0" border="0">
<jsp:directive.include file="navbar.jsp"/>
<TR><TD><TABLE width="100%" cellspacing="0" cellpadding="0" border="0">
<TR><TD width="21"><IMG src="images/s.gif" width="21" rowspan="10"/></TD><TD width="100%">
<H1>File View:</H1>
<jsp:scriptlet>
String path = request.getParameter("path");
if (null == path) {
response.sendRedirect(response.encodeRedirectURL("index.jsp"));
return;
}
FileEntry fent = new FileEntry(env, path);
fent.sync();
out.print("File: "+Utils.formatDepotPath(path, "<A href=\"browse.jsp?path={0}\">{1}</A>", "<A href=\"file.jsp?path={0}\">{1}</A>",null, true));
out.print("#"+fent.getHeadRev());
out.print(" is an ");
if (1 < fent.getHeadRev()) {
out.print("<A href=\"diff.jsp?path="+URLEncoder.encode(fent.getDepotPath())+"&r1="+(fent.getHeadRev()-1)+"&r2="+fent.getHeadRev()+"\">"+fent.getHeadAction()+"</A>");
} else {
out.print(fent.getHeadAction());
}
out.print(" from change <A href=\"change.jsp?num="+fent.getHeadChange()+"\">"+fent.getHeadChange()+"</A>");
out.print("<HR/>");
if (fent.getHeadType().endsWith("text")) {
String cmd[] = { "p4", "print", path };
String l, c;
int lnum = 0;
try {
P4Process p = new P4Process(env);
p.setRawMode(true);
p.exec(cmd);
out.print("<PRE class=\"diff\">");
while (null != (l = p.readLine())) {
if (0 == lnum++) continue;
if (0 == l.length()) {
out.println("");
continue;
}
if (l.startsWith("text: ")) {
out.println(Utils.HTMLEncode(l.substring(6)));
}
}
out.print("</PRE>");
p.close();
} catch (Exception ex) {
/* Ignored. */
}
}
</jsp:scriptlet>
</TD></TR>
</TABLE></TD></TR>
</TABLE></BODY></HTML></jsp:text>
</jsp:root>