view.jsp #1

  • //
  • guest/
  • perforce_software/
  • archived/
  • api/
  • java/
  • p4jsp/
  • web/
  • view.jsp
  • View
  • Commits
  • Open Download .zip Download (2 KB)
<?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.*" 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, "&lt;A href=\"browse.jsp?path={0}\"&gt;{1}&lt;/A&gt;", "&lt;A href=\"file.jsp?path={0}\"&gt;{1}&lt;/A&gt;",null, true));
/* out.print("#"+fent.getHeadRev()); */
out.print(" is an ");
if (1 &lt; fent.getHeadRev()) {
  out.print("&lt;A href=\"diff.jsp?path="+URLEncoder.encode(fent.getDepotPath())+"&amp;r1="+(fent.getHeadRev()-1)+"&amp;r2="+fent.getHeadRev()+"\"&gt;"+fent.getHeadAction()+"&lt;/A&gt;");
} else {
  out.print(fent.getHeadAction());
}
out.print(" from change &lt;A href=\"change.jsp?num="+fent.getHeadChange()+"\"&gt;"+fent.getHeadChange()+"&lt;/A&gt;");
out.print("&lt;HR/&gt;");

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("&lt;PRE class=\"diff\"&gt;");
    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("&lt;/PRE&gt;");
    p.close();
  } catch (Exception ex) {
    /* Ignored. */
  }
}
</jsp:scriptlet>

</TD></TR>
</TABLE></TD></TR>
</TABLE></BODY></HTML></jsp:text>
</jsp:root>
# Change User Description Committed
#1 8157 michael Archiving legacy java api projects which predate the supported P4Java api.
//public/perforce/api/java/p4jsp/web/view.jsp
#4 2209 David Markley Corrected a typo in view.jsp
#3 2207 David Markley Removed use of common tag library and reference to crimson API.
#2 2081 David Markley Updated to support Tomcat 4.0.4 in the public depot.
#1 1983 David Markley Branched p4jsp from guest to public depot.
//guest/david_markley/p4jsp/web/view.jsp
#2 1845 David Markley Fixed spacing issues on the diff and view pages.
#1 1842 David Markley Updated pages to include titles and added view and diff pages.