📄 mirrorwriterprocessor.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><!--NewPage--><HTML><HEAD><!-- Generated by javadoc (build 1.5.0_06) on Wed Sep 27 16:03:11 PDT 2006 --><TITLE>MirrorWriterProcessor (Heritrix 1.10.1)</TITLE><META NAME="keywords" CONTENT="org.archive.crawler.writer.MirrorWriterProcessor class"><LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style"><SCRIPT type="text/javascript">function windowTitle(){ parent.document.title="MirrorWriterProcessor (Heritrix 1.10.1)";}</SCRIPT><NOSCRIPT></NOSCRIPT></HEAD><BODY BGCOLOR="white" onload="windowTitle();"><!-- ========= START OF TOP NAVBAR ======= --><A NAME="navbar_top"><!-- --></A><A HREF="#skip-navbar_top" title="Skip navigation links"></A><TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""><TR><TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"><A NAME="navbar_top_firstrow"><!-- --></A><TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> <TR ALIGN="center" VALIGN="top"> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD> <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/MirrorWriterProcessor.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> </TR></TABLE></TD><TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM></EM></TD></TR><TR><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../../org/archive/crawler/writer/ExperimentalWARCWriterProcessor.html" title="class in org.archive.crawler.writer"><B>PREV CLASS</B></A> <A HREF="../../../../org/archive/crawler/writer/MirrorWriterProcessor.DirSegment.html" title="class in org.archive.crawler.writer"><B>NEXT CLASS</B></A></FONT></TD><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../../index.html?org/archive/crawler/writer/MirrorWriterProcessor.html" target="_top"><B>FRAMES</B></A> <A HREF="MirrorWriterProcessor.html" target="_top"><B>NO FRAMES</B></A> <SCRIPT type="text/javascript"> <!-- if(window==top) { document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>'); } //--></SCRIPT><NOSCRIPT> <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A></NOSCRIPT></FONT></TD></TR><TR><TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> SUMMARY: <A HREF="#nested_class_summary">NESTED</A> | <A HREF="#field_summary">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD><TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">DETAIL: <A HREF="#field_detail">FIELD</A> | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD></TR></TABLE><A NAME="skip-navbar_top"></A><!-- ========= END OF TOP NAVBAR ========= --><HR><!-- ======== START OF CLASS DATA ======== --><H2><FONT SIZE="-1">org.archive.crawler.writer</FONT><BR>Class MirrorWriterProcessor</H2><PRE>java.lang.Object <IMG SRC="../../../../resources/inherit.gif" ALT="extended by ">javax.management.Attribute <IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../org/archive/crawler/settings/Type.html" title="class in org.archive.crawler.settings">org.archive.crawler.settings.Type</A> <IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../org/archive/crawler/settings/ComplexType.html" title="class in org.archive.crawler.settings">org.archive.crawler.settings.ComplexType</A> <IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../org/archive/crawler/settings/ModuleType.html" title="class in org.archive.crawler.settings">org.archive.crawler.settings.ModuleType</A> <IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../org/archive/crawler/framework/Processor.html" title="class in org.archive.crawler.framework">org.archive.crawler.framework.Processor</A> <IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>org.archive.crawler.writer.MirrorWriterProcessor</B></PRE><DL><DT><B>All Implemented Interfaces:</B> <DD>java.io.Serializable, javax.management.DynamicMBean, <A HREF="../../../../org/archive/crawler/datamodel/CoreAttributeConstants.html" title="interface in org.archive.crawler.datamodel">CoreAttributeConstants</A></DD></DL><HR><DL><DT><PRE>public class <B>MirrorWriterProcessor</B><DT>extends <A HREF="../../../../org/archive/crawler/framework/Processor.html" title="class in org.archive.crawler.framework">Processor</A><DT>implements <A HREF="../../../../org/archive/crawler/datamodel/CoreAttributeConstants.html" title="interface in org.archive.crawler.datamodel">CoreAttributeConstants</A></DL></PRE><P>Processor module that writes the results of successful fetches to files on disk. Writes contents of one URI to one file on disk. The files are arranged in a directory hierarchy based on the URI paths. In that sense they mirror the file hierarchy that might exist on the servers. <p> There are a number of issues involved: <ul> <li> URIs can have arbitrary length, but file systems have length constraints. </li> <li> URIs can contain characters that file systems prohibit. </li> <li> URI paths are case-sensitive, but some file systems are case-insensitive. </li> </ul> This class tries very hard to map each URI into a file system path that obeys all file system constraints and yet reasonably represents the original URI. <p> There would normally be a single instance of this class per Heritrix instance. This class is thread-safe; any number of threads can be in its innerProcess method at once. However, conflicts can still arise in the file system. For example, if several threads try to create the same directory at the same time, only one can win. Therefore, there should be at most one access to a server at a given time.<P><P><DL><DT><B>Author:</B></DT> <DD>Howard Lee Gayle</DD><DT><B>See Also:</B><DD><A HREF="../../../../serialized-form.html#org.archive.crawler.writer.MirrorWriterProcessor">Serialized Form</A></DL><HR><P><!-- ======== NESTED CLASS SUMMARY ======== --><A NAME="nested_class_summary"><!-- --></A><TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""><TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"><TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"><B>Nested Class Summary</B></FONT></TH></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>(package private) class</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../org/archive/crawler/writer/MirrorWriterProcessor.DirSegment.html" title="class in org.archive.crawler.writer">MirrorWriterProcessor.DirSegment</A></B></CODE><BR> This class represents one directory segment (component) of a URI path.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>(package private) class</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../org/archive/crawler/writer/MirrorWriterProcessor.EndSegment.html" title="class in org.archive.crawler.writer">MirrorWriterProcessor.EndSegment</A></B></CODE><BR> This class represents the last segment (component) of a URI path.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>(package private) class</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../org/archive/crawler/writer/MirrorWriterProcessor.LumpyString.html" title="class in org.archive.crawler.writer">MirrorWriterProcessor.LumpyString</A></B></CODE><BR> This class represents a dynamically growable string consisting of substrings ("lumps") that are treated atomically.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>(package private) class</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../org/archive/crawler/writer/MirrorWriterProcessor.PathSegment.html" title="class in org.archive.crawler.writer">MirrorWriterProcessor.PathSegment</A></B></CODE><BR> This class represents one segment (component) of a URI path.</TD></TR>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -