Commit Graph
700 Commits
Author SHA1 Message Date
gojomo 760c40c440 * EngineResource.java
use platform-specific path-separator in partial-path-prompt
2010-01-26 00:16:52 +00:00
szznax 3dff26e277 attempt to remedy Continuum build problem with SVN. "Server certificate verification failed: issuer is not trusted (https://archive-crawler.svn.sourceforge.net)" 2010-01-12 16:45:20 +00:00
szznax 5abacafd43 fix for [HER-1729] add (deprecated) style code from Engine class to Flash class
* Heritrix.java
  added CLAP protocol to access representations via classloader
* EngineApplication.java
  added staticDir resource to serve static files under "/engine/static"
  also added org.archive.crawler.restlet package to hold static files
* EngineResource.java
  added <link> to static CSS resource
* Engine.css
  style for flashACK/NACK/ADVISORY divs
2009-12-29 23:21:10 +00:00
szznax 0cb627fff8 tried to incorporate gojomo's suggestions of 2009-11-02:
* Engine.java
  removed ERROR and WARNING strings, rely on Flash class
  log jobsDir check failure as SEVERE and return early
  collapse error-handling in considerAsJobPath() and log SEVERE
  renamed considerAsJobDirectory() to addJobDirectory()
  remove catch-and-rethrow from leaveJobPathFile() when writing,
    instead log SEVERE
  renamed leaveJobPathFile() to writeJobPathFile()
  added boolean "userRequest" arg to addJobDirectory(), and moved
    call to writeJobPathFile() inside of addJobDirectory()
  changed void considerAsJobPath(File) to String getJobPathFromFile
    and removed call to addJobDirectory
  make seperate calls to addJobDirectory() in findJobConfigs()
* EngineResource.java
  restructured "create" logic for clarity
  eliminate style code, rely on Flash class
  remove limit on "addpath" input, change to "createpath"
  removed all-caps and bangs ("!") from error messages
  removed platform-specific path separators ("/")
  call Engine.addJobDirectory() with userRequest=true in when
    form action=add
2009-12-17 01:54:21 +00:00
szznax bf2eaef6e2 Part of fix for [HER-1725] on engine page, 'create new job' form gives NPE
* Engine.java
  made protected getProfileCxmlResource() for clear testability
* EngineTest.java
  added testGetProfileCxmlResource()
2009-12-11 00:47:06 +00:00
nlevitt 56d6e2ee26 Change XmlMarshaller to static util method api, and add javadocs to XmlMarshaller.
* XmlMarshaller.java
    change to static api, and add javadocs to XmlMarshaller
* *Resource.java
    use changed XmlMarshaller api
2009-12-10 07:06:17 +00:00
nlevitt 7cf44fdf4d * JobResource.java
Remove try/catch from acceptRepresentation() - comment didn't match code
    and I don't think I intended to commit it (oops).
2009-12-10 06:08:15 +00:00
nlevitt b0e140708a Rename and document methods formerly known as presentablify*()
* BeanBrowseResource.java, ScriptResource.java, EngineResource.java, 
  JobResource.java
    rename presentablify() -> makePresentableMap(), and add javadocs
* JobRelatedResource.java
    rename presentablifyNestedNames() -> addPresentableNestedNames()
    and presentablifyObject() -> makePresentableMapFor(), and add javadocs
2009-12-10 03:38:25 +00:00
szznax 0616ddfb07 part of fix for [HER-1725] create new job gives NPE
* relocated (non-dist) profile-crawler-beans.cxml
  from engine/src/main/java
  to engine/src/main/resource
2009-12-10 00:05:51 +00:00
nlevitt 9f12f5777a * ToePool.java
shortReportLineTo(): get data from shortReportMap() to avoid duplicate code
2009-12-09 03:12:48 +00:00
nlevitt df6e31697d Rename short report methods:
- singleLineReport() -> shortReportLine()
 - singleLineReportTo() -> shortReportLineTo()
 - singleLineReportData() -> shortReportMap()
2009-12-09 02:53:02 +00:00
nlevitt f8cc922cb3 [HER-1724] revive missing newline at end of crawl-report.txt 2009-12-07 22:54:03 +00:00
gojomo cb7df416d4 post-3.0.0 release build
* **/pom.xml
    bump version identifiers to "3.1.1-SNAPSHOT" (odd minor number meaning dev version, odd patch number indicating expected next patch number of 3.0.x release if before a 3.2.0 release)
2009-12-05 23:48:38 +00:00
gojomo 5661658b1b prep for 3.0.0 release
* **/pom.xml
    bump version-id to "3.0.0"
* README.txt
    refer to exactly 3.0.0 release notes
2009-12-05 09:28:19 +00:00
gojomo 7d0061884c Prevent timing NPEs on CrawlLimitEnforcer-triggered crawl end
* AbstractFrontier.java
    close recovery log in stop() (comes later, usu. from managerThread) rather than terminate() (earlier, may occur in other threads like progress-stats-snapshot thread)
2009-12-05 00:55:55 +00:00
gojomo 21d4bce819 correct typo in built-in profile templates
* org/archive/crawler/restlet/profile-crawler-beans.cxml, org/archive/crawler/migrate/migrate-template-crawler-beans.cxml
    Percentage -> Percent
2009-12-05 00:16:55 +00:00
nlevitt 4da5095212 Keep html spartan for now.
* EditRepresentation.java 
    write() remove background color and font size styling on textarea
2009-12-04 23:30:24 +00:00
nlevitt e85972848d Format, indent xml. See discussion on [HER-1603].
* XmlMarshaller.java
    (constructor) enable xml formatting/indentation
2009-12-04 23:16:35 +00:00
nlevitt 29e8b05308 Improvement to [HER-1603?focusedCommentId=22557] fix
* BaseResource.java
    getPreferredVariant(): always prefer HTML if anything in the header
    indicates it's acceptable (even "*/*" with low q-preference)
2009-12-04 23:09:24 +00:00
nlevitt c3539d3fdc Fix for [HER-1603?focusedCommentId=22557] browsers based on WebKit (Safari,
iPhone Safari, Chrome) use a screwy 'Accept' header that if taken literally
means they prefer 'application/xml' content. Thus trying to view web UI in
these browsers results in seeing the XML version, without element markup
* BaseResource.java
    override getPreferredVariant() to bump up preference level of text/html for
    any client can accept it
* EngineResource.java, JobResource.java
    inherit from BaseResource
2009-12-04 22:56:25 +00:00
gojomo 04012279fc Misc logging-cleanup/refactoring
* CrawlerJournal.java
    improve exception logging
    combine writeLine() methods to use varargs
* FrontierJournal.java
    improve exception logging
* ArchiveUtils.java
    replace ignored  count parameter with meaingful boolean one
* CrawlURI.java
    use updated ArchiveUtils method
2009-12-04 22:23:48 +00:00
nlevitt 67a25f2dce * CheckpointService.java
getAvailableCheckpointDirectories() - avoid NullPointerException when
    checkpoints dir does not exist
2009-12-04 00:52:55 +00:00
gojomo e1bbbf5a59 [HER-1704] WorkQueueFrontier.snoozedClassQueues not bounded in size, not reported in useful order
* WorkQueueFrontier.java
    add snoozedOverflow map of (wakeTime)->(DelayedWorkQueue) for snoozes over a capped size
    maintain in parallel to snoozedClassQueues DelayQueue, maintain atomic size count
    in standard report, presort snoozedClassQueues before displaying
* DelayedWorkQueue.java
    move to top-level so serialization doesn't pull out whole frontier
* BdbFrontier.java
    initialize snoozedOverflow
* BdbMultipleWorkQueues.java
    improve error message seen on problematic checkpoint-recovery
2009-12-03 19:37:27 +00:00
gojomo 095f2fdffb Make Maven build more robust
* engine/pom.xml, .classpath
    remove apparently-no-longer-needed tomcat library reference, avoiding Maven problems with m2eclipse 0.9.8.200905041414 in eclipse-galileo on ubuntu
2009-12-03 19:02:13 +00:00
gojomo 950e68091c UI touchup
* EngineResource.java
    give add-job options their own header, reorder/reword for clarity
* JobResource.java
    return to always showing 'checkpoint' button, disable if necessary, so main control buttons aren't appearing/disappearing or moving
2009-12-03 18:28:21 +00:00
gojomo 757dbf3f19 Output/UI touchup
* CheckpointService.java
    list checkpoint directories in reverse-last-modified order
    disable dubugging output to System.err
2009-12-03 18:24:17 +00:00
gojomo f3f7a98240 [HER-1708] h3 - crawl summary report byte totals off somehow
* CrawlSummaryReport.java
    relabel, reorder, regroup displayed values for simplicity/consistency
2009-12-03 03:12:38 +00:00
nlevitt 19b9833fb4 Fix (harmless?) stack trace from closing output too early. It looked like this:
==========
2009-12-03 01:36:16.726 SEVERE thread-10 com.noelios.restlet.http.HttpServerConverter.commit() An exception occured writing the response entity
java.io.IOException: Stream closed
        at sun.nio.cs.StreamEncoder.ensureOpen(StreamEncoder.java:26)
        [...]
2009-12-03 01:36:16.733::WARN:  Committed before 500 An exception occured writing the response entity
2009-12-03 01:36:16.735 WARNING thread-10 com.noelios.restlet.http.HttpServerHelper.handle() Error while handling an HTTP server call: 
==========
* JobResource.java
    writeHtml(Writer) - do not close writer
2009-12-03 01:40:42 +00:00
nlevitt 6edbc5181e [HER-1721] pressing build immediately after adding or creating a new job gives
IOE
* JobResource.java
   presentablify(), writeHtml() - make sure crawl log exists before attempting
   to read and serve it
2009-12-03 01:26:26 +00:00
gojomo e15f49dd60 [HER-1708] h3 - crawl summary report byte totals off somehow
* CrawlController.java
    send event of crawl-end before appCtx.stop()
* StatisticsTracker.java
    force final progressStatisticsEvent and dumpReports at crawlEnded() before stop()
    add force-dump of reports (so dumpReports never reuses prior reports)
* CrawledBytesHistotable.java
    add getTotalBytes(), a total of just the byte-counts (getTotal() includes URI counts)
* CrawlStatSnapshot.java
    use getTotalBytes()
2009-12-02 06:25:23 +00:00
nlevitt e3fc474ca4 Return http 404 when appropriate.
* BeanBrowseResource.java
* JobResource.java
2009-12-02 03:24:11 +00:00
gojomo ed2061560e Improve Maven build robustness
* UURIFactoryTest.java
    specify stirng literal with escape-encoding, rather than as raw UTF-8
* **/pom.xml
    include 'project.build.sourceEncoding' property to suppress platform-encoding warnings
    (unfortunately, neither this nor similar 'maven.compile.encoding' property actually casues maven build to interpret Java source as UTF-8)
2009-12-02 01:34:40 +00:00
nlevitt 75fa939995 Update restlet to latest 1.1.6
* .classpath
* engine/pom.xml
2009-11-25 01:49:17 +00:00
nlevitt 8ba641ed4b Part of [HER-1603] Restletify: xml representations of all resources that also
offer html
* XmlMarshaller.java
    new class to write xml based on nested map structure
* BeanBrowseResource.java ScriptResource.java EngineResource.java
  JobResource.java JobRelatedResource.java
    support xml representation
* WorkQueueFrontier.java PrecedenceProvider.java WorkQueue.java ToeThread.java
  ToePool.java CrawlJob.java Engine.java Frontier.java CrawlController.java
  StatisticsTracker.java CrawledBytesHistotable.java FetchStats.java
  ProcessorChain.java CrawlURI.java Reporter.java
    offer same data that is returned in the single line reports in a map
    suitable for use with XmlMarshaller
* FileUtils.java
    new method tryToCanonicalize(File)
2009-11-25 01:43:57 +00:00
gojomo a1022c8246 [HER-1711] Some Internationalized Domain Name seeds ignored by Heritrix
* EnhDirectoryResource.java
    ensure files shown for edit or written-back to disk handled as UTF-8
* ConfigFile.java
    read file as UTF-8
2009-11-25 01:14:59 +00:00
gojomo 79fd64a2b5 Post-RC1-build
* **/pom.xml
    revert version name to SNAPSHOT
2009-11-23 10:23:28 +00:00
gojomo 0c7a74bd35 RC1
* **/pom.xml
    rename version to '3.0.0-RC1' for distinguished 'RC1' identified build (instead of SNAPSHOT/timestamp)
2009-11-23 09:57:42 +00:00
gojomo 18e165f21e [HER-1714] fixed-interval rescheduling
* AbstractFrontier.java, WorkQueueFrontier.java, BdbFrontier.java
    add 'futureUris' map of CrawlURIs to be reenqueued at specific future dates
    the usual findEligibleUri also checks for newly-eligible rescheduled URIs
    the frontier is no longer empty unless the future count is also 0
* CrawlURI.java
    add rescheduleTime property
* ReschedulingProcessor.java
    optional post-processor to set a CrawlURI's reschedulingTime
* CrawlStatSnapshot.java, CrawlJob.java
    add futureUriCount to stats/uriTotalsReport
2009-11-23 08:47:14 +00:00
gojomo 3c9df9a8c6 BDBJE updates, refactoring
* BdbFrontier.java
    use BdbModule.openDatabase()
2009-11-23 08:24:54 +00:00
gojomo 5b6b2fe954 BDBJE updates, refactoring
* BdbModule.java
    (openDatabase) all databases now 'managed'
    (getStoredMap) all reuse of prior data as for checkpoints
* (others)
    match above changes
2009-11-23 08:18:41 +00:00
gojomo 4127286a1c Checkpoint cleanup
* Checkpoint.java
    calculate shortName correctly
* CrawlerLoggerModule.java
    use full checkpoint-name for log-rotation-suffix
2009-11-23 08:10:07 +00:00
gojomo eb9bf5a8e2 BDBJE updates, refactoring
* commons/pom.xml, .classpath
    update to BDB-JE 4.0.71
* BdbModule.java
    (getStoredQueue) added
    (getStoredMap) made more general
    (openDatabase) all databases now 'managed'
* TempStoredSortedMap.java -> DisposableStoredSortedMap.java
    renamed
* StatisticsTracker.java, **Report.java
    use new name
* StoredQueue.java, StoredQueueTest.java
    move to org.archive.bdb package
* BdbMultipleWorkQueues.java, PrefixFinderTest.java
    update for BDB-JE 4 changes
* BdbFrontier.java
    use getStoredQueue 
    drop unneeded custom serialization support
* WorkQueueFrontier.java
    drop unneeded custom serialization support
2009-11-23 04:41:32 +00:00
gojomo 8251620481 [HER-1546] Springify(5): Update checkpointing to work smoothly with spring-configured crawls
* profile-crawler-beans.cxml*2, migrate-template-crawler-beans.cxml
    add CheckpointService as recommended bean
2009-11-20 18:35:13 +00:00
gojomo f9d56e3f6b move json dependency to commons from engine 2009-11-20 02:03:27 +00:00
gojomo 25a568fff7 [HER-1546] Springify(5): Update checkpointing to work smoothly with spring-configured crawls
* JobResource.java
    suppress checkpoint-selector after terminate
* Checkpoint.java
    adapt to work without direct reference to CheckpointService
* CheckpointService.java
    configure Checkpoint without making it dependent on CheckpointService
2009-11-20 01:24:57 +00:00
gojomo daab317c94 [HER-1546] Springify(5): Update checkpointing to work smoothly with spring-configured crawls
processor-related bean checkpoint support:
* Checkpoint.java
    move to commons for proper dependency graph
* (others) 
    recognize above
2009-11-20 01:10:32 +00:00
gojomo dfacba51e5 [HER-1546] Springify(5): Update checkpointing to work smoothly with spring-configured crawls
UI support
* JobResource.java
    enable 'checkpoint' button as appropriate
    display active recovery-checkpoint or select bos of recovery-options when available
* CrawlJob.java
    (getCheckpointService) accessor
2009-11-20 01:02:14 +00:00
gojomo 50ee78f6d2 [HER-1546] Springify(5): Update checkpointing to work smoothly with spring-configured crawls
* BdbFrontier.java
    implement Checkpointable; save state via JSON or BDB; restore queues-of-queues on recovery
* WorkQueueFrontier.java
    (deactivateQueue) (retireQueue) protected
* BdbUriUniqFilter.java
    implement Checkpointable; save state via JSON or BDB; restore
* WorkQueue.java
    make peekItem transient -- should not be held through checkpoint
    make retired protected
* Frontier.java, AbstractFrontier.java
    remove/update obsolete code
2009-11-20 00:59:00 +00:00
gojomo be17d5ed33 [HER-1546] Springify(5): Update checkpointing to work smoothly with spring-configured crawls
* CrawlController.java
    remove older checkpoint-functionality passthrough
    implement Checkpointable so behavior can vary during recovery
    only trigger annnounce of seeds on 'cold' (non-recovery) start
2009-11-20 00:51:59 +00:00
gojomo ac6b58cb0e [HER-1546] Springify(5): Update checkpointing to work smoothly with spring-configured crawls
* Checkpoint.java
    (generateFrom) version more suitable for unit testing
2009-11-20 00:49:31 +00:00