<?xml version="1.0"?> <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" xmlns:c="http://java.sun.com/jstl/ea/core" xmlns:x="http://java.sun.com/jstl/ea/xml" version="1.2"> <jsp:directive.page import="java.util.*,com.perforce.api.*,org.apache.crimson.tree.*"/> <jsp:directive.include file="session.jsp"/> <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 Diff:</H1> <jsp:scriptlet> String path = request.getParameter("path"); if (null == path) { response.sendRedirect(response.encodeRedirectURL("index.jsp")); return; } String r1 = request.getParameter("r1"); String r2 = request.getParameter("r2"); FileEntry fent = new FileEntry(env, path); fent.sync(); if (null == r1) r1 = String.valueOf(fent.getHeadRev()-1); if (null == r2) r2 = String.valueOf(fent.getHeadRev()); String cmd[] = { "p4", "diff2", "-du", path+"#"+r1, path+"#"+r2 }; String l, c; try { P4Process p = new P4Process(env); p.exec(cmd); while (null != (l = p.readLine())) { if (0 == l.length()) { out.print("<BR/>"); continue; } switch (l.charAt(0)) { case '@': c = "diffmacro"; break; case '+': c = "diffadd"; if (1 > l.length()) { l = ""; } else { l = l.substring(1); } break; case '-': c = "diffsub"; if (2 > l.length()) { l = "&nbsp;"; } else { l = l.substring(1); } break; default: c = "diff"; break; } out.print("<FONT class=\""+c+"\">"+l+"</FONT><BR/>"); } p.close(); } catch (Exception ex) { /* Ignored. */ } out.print("<PRE>"); out.print("</PRE>"); </jsp:scriptlet> </TD></TR> </TABLE></TD></TR> </TABLE></BODY></HTML></jsp:text> </jsp:root>
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#5 | 2206 | David Markley |
Removed all use of the common tag library and any specific inclusion of the crimson API. |
||
#4 | 2070 | David Markley | Updated to work with Tomcat 4.0.4 | ||
#3 | 1845 | David Markley | Fixed spacing issues on the diff and view pages. | ||
#2 | 1842 | David Markley | Updated pages to include titles and added view and diff pages. | ||
#1 | 1836 | David Markley | Added file information and improved item listings. |