Author: cutting
Date: Tue Feb 28 11:25:12 2006
New Revision: 381751
URL: http://svn.apache.org/viewcvs?rev=381751&view=rev
Log:
Adding DOAP for Nutch. Contributed by Chris Mattmann.
Added:
lucene/nutch/trunk/site/doap.rdf
Modified:
lucene/nutch/trunk/src/java/org/apache/nutch/crawl/Crawl.java
lucene/nutch/trunk/src/java/org/apache/nutch/crawl/CrawlDb.java
lucene/nutch/trunk/src/java/org/apache/nutch/crawl/CrawlDbReader.java
lucene/nutch/trunk/src/java/org/apache/nutch/crawl/Generator.java
lucene/nutch/trunk/src/java/org/apache/nutch/crawl/Injector.java
lucene/nutch/trunk/src/java/org/apache/nutch/crawl/LinkDbReader.java
lucene/nutch/trunk/src/java/org/apache/nutch/fetcher/Fetcher.java
lucene/nutch/trunk/src/java/org/apache/nutch/indexer/DeleteDuplicates.java
lucene/nutch/trunk/src/java/org/apache/nutch/indexer/IndexMerger.java
lucene/nutch/trunk/src/java/org/apache/nutch/indexer/Indexer.java
lucene/nutch/trunk/src/java/org/apache/nutch/parse/ParseSegment.java
lucene/nutch/trunk/src/java/org/apache/nutch/plugin/PluginRepository.java
lucene/nutch/trunk/src/java/org/apache/nutch/searcher/DistributedSearch.java
lucene/nutch/trunk/src/java/org/apache/nutch/segment/SegmentReader.java
Added: lucene/nutch/trunk/site/doap.rdf
URL:
http://svn.apache.org/viewcvs/lucene/nutch/trunk/site/doap.rdf?rev=381751&view=auto
==============================================================================
--- lucene/nutch/trunk/site/doap.rdf (added)
+++ lucene/nutch/trunk/site/doap.rdf Tue Feb 28 11:25:12 2006
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<?xml-stylesheet type="text/xsl"?>
+<rdf:RDF xml:lang="en"
+ xmlns="http://usefulinc.com/ns/doap#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:asfext="http://projects.apache.org/ns/asfext#"
+ xmlns:foaf="http://xmlns.com/foaf/0.1/">
+<!--
+ =======================================================================
+
+ Copyright (c) 2006 The Apache Software Foundation.
+ All rights reserved.
+
+ =======================================================================
+-->
+ <Project rdf:about="http://lucene.apache.org/nutch/">
+ <created>2006-02-28</created>
+ <license rdf:resource="http://usefulinc.com/doap/licenses/asl20" />
+ <name>Apache Nutch</name>
+ <homepage rdf:resource="http://lucene.apache.org/nutch/" />
+ <asfext:pmc rdf:resource="http://lucene.apache.org" />
+ <shortdesc>Nutch is the open-source search engine.</shortdesc>
+ <description>Nutch is open source web-search software. It builds
+ on Lucene Java and Hadoop, adding web-specifics, such as a
+ crawler, a link-graph database, parsers for HTML and other
+ document formats, etc.
+ </description>
+ <bug-database rdf:resource="http://issues.apache.org/jira/browse/NUTCH" />
+ <mailing-list
rdf:resource="http://lucene.apache.org/nutch/mailing_lists.html" />
+ <download-page
rdf:resource="http://www.apache.org/dyn/closer.cgi/lucene/nutch/" />
+ <programming-language>Java</programming-language>
+ <category rdf:resource="http://projects.apache.org/category/web-framework"
/>
+ <release>
+ <Version>
+ <name>0.7</name>
+ <created>2005-08-17</created>
+ <revision>0.7</revision>
+ </Version>
+ </release>
+ <repository>
+ <SVNRepository>
+ <location
rdf:resource="http://svn.apache.org/repos/asf/lucene/nutch/"/>
+ <browse
rdf:resource="http://svn.apache.org/viewcvs.cgi/lucene/nutch/"/>
+ </SVNRepository>
+ </repository>
+ </Project>
+</rdf:RDF>
Modified: lucene/nutch/trunk/src/java/org/apache/nutch/crawl/Crawl.java
URL:
http://svn.apache.org/viewcvs/lucene/nutch/trunk/src/java/org/apache/nutch/crawl/Crawl.java?rev=381751&r1=381750&r2=381751&view=diff
==============================================================================
--- lucene/nutch/trunk/src/java/org/apache/nutch/crawl/Crawl.java (original)
+++ lucene/nutch/trunk/src/java/org/apache/nutch/crawl/Crawl.java Tue Feb 28
11:25:12 2006
@@ -44,11 +44,11 @@
/* Perform complete crawling and indexing given a set of root urls. */
- public static void main(String args[]) throws Exception {
+ public static boolean doMain(String args[]) throws Exception {
if (args.length < 1) {
System.out.println
("Usage: Crawl <urlDir> [-dir d] [-threads n] [-depth i] [-topN N]");
- return;
+ return false;
}
Configuration conf = NutchConfiguration.create();
@@ -122,5 +122,22 @@
new IndexMerger(fs, fs.listFiles(indexes), index, tmpDir, job).merge();
LOG.info("crawl finished: " + dir);
+
+ return true;
+ }
+
+ /**
+ * main() wrapper that returns proper exit status
+ */
+ public static void main(String[] args) {
+ Runtime rt = Runtime.getRuntime();
+ try {
+ boolean status = doMain(args);
+ rt.exit(status ? 0 : 1);
+ }
+ catch (Exception e) {
+ LOG.log(Level.SEVERE, "error, caught Exception in main()", e);
+ rt.exit(1);
+ }
}
}
Modified: lucene/nutch/trunk/src/java/org/apache/nutch/crawl/CrawlDb.java
URL:
http://svn.apache.org/viewcvs/lucene/nutch/trunk/src/java/org/apache/nutch/crawl/CrawlDb.java?rev=381751&r1=381750&r2=381751&view=diff
==============================================================================
--- lucene/nutch/trunk/src/java/org/apache/nutch/crawl/CrawlDb.java (original)
+++ lucene/nutch/trunk/src/java/org/apache/nutch/crawl/CrawlDb.java Tue Feb 28
11:25:12 2006
@@ -90,17 +90,31 @@
fs.delete(old);
}
- public static void main(String[] args) throws Exception {
+ public static boolean doMain(String[] args) throws Exception {
CrawlDb crawlDb = new CrawlDb(NutchConfiguration.create());
if (args.length < 2) {
System.err.println("Usage: <crawldb> <segment>");
- return;
+ return false;
}
crawlDb.update(new File(args[0]), new File(args[1]));
- }
-
+ return true;
+ }
+ /**
+ * main() wrapper that returns proper exit status
+ */
+ public static void main(String[] args) {
+ Runtime rt = Runtime.getRuntime();
+ try {
+ boolean status = doMain(args);
+ rt.exit(status ? 0 : 1);
+ }
+ catch (Exception e) {
+ LOG.log(Level.SEVERE, "error, caught Exception in main()", e);
+ rt.exit(1);
+ }
+ }
}
Modified: lucene/nutch/trunk/src/java/org/apache/nutch/crawl/CrawlDbReader.java
URL:
http://svn.apache.org/viewcvs/lucene/nutch/trunk/src/java/org/apache/nutch/crawl/CrawlDbReader.java?rev=381751&r1=381750&r2=381751&view=diff
==============================================================================
--- lucene/nutch/trunk/src/java/org/apache/nutch/crawl/CrawlDbReader.java
(original)
+++ lucene/nutch/trunk/src/java/org/apache/nutch/crawl/CrawlDbReader.java Tue
Feb 28 11:25:12 2006
@@ -20,7 +20,7 @@
import java.io.IOException;
import java.util.Iterator;
import java.util.TreeMap;
-import java.util.logging.Logger;
+import java.util.logging.*;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.io.LongWritable;
@@ -241,7 +241,7 @@
JobClient.runJob(job);
}
- public static void main(String[] args) throws IOException {
+ public static boolean doMain(String[] args) throws IOException {
CrawlDbReader dbr = new CrawlDbReader();
if (args.length < 1) {
@@ -250,7 +250,7 @@
System.err.println("\t-stats\tprint overall statistics to System.out");
System.err.println("\t-dump <out_dir>\tdump the whole db to a text file
in <out_dir>");
System.err.println("\t-url <url>\tprint information on <url> to
System.out");
- return;
+ return false;
}
String param = null;
String crawlDb = args[0];
@@ -266,8 +266,24 @@
dbr.readUrl(crawlDb, param, conf);
} else {
System.err.println("\nError: wrong argument " + args[i]);
+ return false;
}
}
- return;
+ return true;
+ }
+
+ /**
+ * main() wrapper that returns proper exit status
+ */
+ public static void main(String[] args) {
+ Runtime rt = Runtime.getRuntime();
+ try {
+ boolean status = doMain(args);
+ rt.exit(status ? 0 : -1);
+ }
+ catch (Exception e) {
+ LOG.log(Level.SEVERE, "error, caught Exception in main()", e);
+ rt.exit(-1);
+ }
}
}
Modified: lucene/nutch/trunk/src/java/org/apache/nutch/crawl/Generator.java
URL:
http://svn.apache.org/viewcvs/lucene/nutch/trunk/src/java/org/apache/nutch/crawl/Generator.java?rev=381751&r1=381750&r2=381751&view=diff
==============================================================================
--- lucene/nutch/trunk/src/java/org/apache/nutch/crawl/Generator.java (original)
+++ lucene/nutch/trunk/src/java/org/apache/nutch/crawl/Generator.java Tue Feb
28 11:25:12 2006
@@ -237,10 +237,10 @@
/**
* Generate a fetchlist from the pagedb and linkdb
*/
- public static void main(String args[]) throws Exception {
+ public static boolean doMain(String args[]) throws Exception {
if (args.length < 2) {
System.out.println("Usage: Generator <crawldb> <segments_dir> [-topN N]
[-numFetchers numFetchers] [-adddays numDays]");
- return;
+ return false;
}
File dbDir = new File(args[0]);
@@ -266,5 +266,22 @@
LOG.info("topN: " + topN);
Generator gen = new Generator(NutchConfiguration.create());
gen.generate(dbDir, segmentsDir, numFetchers, topN, curTime);
+
+ return true;
+ }
+
+ /**
+ * main() wrapper that returns proper exit status
+ */
+ public static void main(String[] args) {
+ Runtime rt = Runtime.getRuntime();
+ try {
+ boolean status = doMain(args);
+ rt.exit(status ? 0 : 1);
+ }
+ catch (Exception e) {
+ LOG.log(Level.SEVERE, "error, caught Exception in main()", e);
+ rt.exit(1);
+ }
}
}
Modified: lucene/nutch/trunk/src/java/org/apache/nutch/crawl/Injector.java
URL:
http://svn.apache.org/viewcvs/lucene/nutch/trunk/src/java/org/apache/nutch/crawl/Injector.java?rev=381751&r1=381750&r2=381751&view=diff
==============================================================================
--- lucene/nutch/trunk/src/java/org/apache/nutch/crawl/Injector.java (original)
+++ lucene/nutch/trunk/src/java/org/apache/nutch/crawl/Injector.java Tue Feb 28
11:25:12 2006
@@ -127,15 +127,31 @@
}
- public static void main(String[] args) throws Exception {
+ public static boolean doMain(String[] args) throws Exception {
Injector injector = new Injector(NutchConfiguration.create());
if (args.length < 2) {
System.err.println("Usage: Injector <crawldb> <url_dir>");
- return;
+ return false;
}
injector.inject(new File(args[0]), new File(args[1]));
+
+ return true;
}
+ /**
+ * main() wrapper that returns proper exit status
+ */
+ public static void main(String[] args) {
+ Runtime rt = Runtime.getRuntime();
+ try {
+ boolean status = doMain(args);
+ rt.exit(status ? 0 : 1);
+ }
+ catch (Exception e) {
+ LOG.log(Level.SEVERE, "error, caught Exception in main()", e);
+ rt.exit(1);
+ }
+ }
}
Modified: lucene/nutch/trunk/src/java/org/apache/nutch/crawl/LinkDbReader.java
URL:
http://svn.apache.org/viewcvs/lucene/nutch/trunk/src/java/org/apache/nutch/crawl/LinkDbReader.java?rev=381751&r1=381750&r2=381751&view=diff
==============================================================================
--- lucene/nutch/trunk/src/java/org/apache/nutch/crawl/LinkDbReader.java
(original)
+++ lucene/nutch/trunk/src/java/org/apache/nutch/crawl/LinkDbReader.java Tue
Feb 28 11:25:12 2006
@@ -29,7 +29,7 @@
import org.apache.nutch.util.NutchConfiguration;
import org.apache.nutch.util.NutchJob;
-import java.util.logging.Logger;
+import java.util.logging.*;
/** . */
public class LinkDbReader implements Closeable {
@@ -96,12 +96,12 @@
JobClient.runJob(job);
}
- public static void main(String[] args) throws Exception {
+ public static boolean doMain(String[] args) throws Exception {
if (args.length < 2) {
System.err.println("LinkDbReader <linkdb> {-dump <out_dir> | -url
<url>)");
System.err.println("\t-dump <out_dir>\tdump whole link db to a text file
in <out_dir>");
System.err.println("\t-url <url>\tprint information about <url> to
System.out");
- return;
+ return false;
}
Configuration conf = NutchConfiguration.create();
if (args[1].equals("-dump")) {
@@ -118,7 +118,24 @@
}
} else {
System.err.println("Error: wrong argument " + args[1]);
- return;
+ return false;
+ }
+
+ return true;
+ }
+
+ /**
+ * main() wrapper that returns proper exit status
+ */
+ public static void main(String[] args) {
+ Runtime rt = Runtime.getRuntime();
+ try {
+ boolean status = doMain(args);
+ rt.exit(status ? 0 : 1);
+ }
+ catch (Exception e) {
+ LOG.log(Level.SEVERE, "error, caught Exception in main()", e);
+ rt.exit(1);
}
}
}
Modified: lucene/nutch/trunk/src/java/org/apache/nutch/fetcher/Fetcher.java
URL:
http://svn.apache.org/viewcvs/lucene/nutch/trunk/src/java/org/apache/nutch/fetcher/Fetcher.java?rev=381751&r1=381750&r2=381751&view=diff
==============================================================================
--- lucene/nutch/trunk/src/java/org/apache/nutch/fetcher/Fetcher.java (original)
+++ lucene/nutch/trunk/src/java/org/apache/nutch/fetcher/Fetcher.java Tue Feb
28 11:25:12 2006
@@ -369,13 +369,13 @@
/** Run the fetcher. */
- public static void main(String[] args) throws Exception {
+ public static boolean doMain(String[] args) throws Exception {
String usage = "Usage: Fetcher <segment> [-threads n] [-noParsing]";
if (args.length < 1) {
System.err.println(usage);
- System.exit(-1);
+ return false;
}
File segment = new File(args[0]);
@@ -399,5 +399,21 @@
fetcher.fetch(segment, threads, parsing); // run the Fetcher
+ return true;
+ }
+
+ /**
+ * main() wrapper that returns proper exit status
+ */
+ public static void main(String[] args) {
+ Runtime rt = Runtime.getRuntime();
+ try {
+ boolean status = doMain(args);
+ rt.exit(status ? 0 : 1);
+ }
+ catch (Exception e) {
+ LOG.log(Level.SEVERE, "error, caught Exception in main()", e);
+ rt.exit(1);
+ }
}
}
Modified:
lucene/nutch/trunk/src/java/org/apache/nutch/indexer/DeleteDuplicates.java
URL:
http://svn.apache.org/viewcvs/lucene/nutch/trunk/src/java/org/apache/nutch/indexer/DeleteDuplicates.java?rev=381751&r1=381750&r2=381751&view=diff
==============================================================================
--- lucene/nutch/trunk/src/java/org/apache/nutch/indexer/DeleteDuplicates.java
(original)
+++ lucene/nutch/trunk/src/java/org/apache/nutch/indexer/DeleteDuplicates.java
Tue Feb 28 11:25:12 2006
@@ -342,12 +342,12 @@
LOG.info("Dedup: done");
}
- public static void main(String[] args) throws Exception {
+ public static boolean doMain(String[] args) throws Exception {
DeleteDuplicates dedup = new DeleteDuplicates(NutchConfiguration.create());
if (args.length < 1) {
System.err.println("Usage: <indexes> ...");
- return;
+ return false;
}
File[] indexes = new File[args.length];
@@ -356,6 +356,22 @@
}
dedup.dedup(indexes);
+
+ return true;
}
+ /**
+ * main() wrapper that returns proper exit status
+ */
+ public static void main(String[] args) {
+ Runtime rt = Runtime.getRuntime();
+ try {
+ boolean status = doMain(args);
+ rt.exit(status ? 0 : 1);
+ }
+ catch (Exception e) {
+ LOG.log(Level.SEVERE, "error, caught Exception in main()", e);
+ rt.exit(1);
+ }
+ }
}
Modified: lucene/nutch/trunk/src/java/org/apache/nutch/indexer/IndexMerger.java
URL:
http://svn.apache.org/viewcvs/lucene/nutch/trunk/src/java/org/apache/nutch/indexer/IndexMerger.java?rev=381751&r1=381750&r2=381751&view=diff
==============================================================================
--- lucene/nutch/trunk/src/java/org/apache/nutch/indexer/IndexMerger.java
(original)
+++ lucene/nutch/trunk/src/java/org/apache/nutch/indexer/IndexMerger.java Tue
Feb 28 11:25:12 2006
@@ -105,11 +105,11 @@
/**
* Create an index for the input files in the named directory.
*/
- public static void main(String[] args) throws Exception {
+ public static boolean doMain(String[] args) throws Exception {
String usage = "IndexMerger [-workingdir <workingdir>] outputIndex
indexesDir...";
if (args.length < 2) {
System.err.println("Usage: " + usage);
- return;
+ return false;
}
//
@@ -148,5 +148,22 @@
merger.merge();
LOG.info("done merging");
FileUtil.fullyDelete(workDir, conf);
+
+ return true;
+ }
+
+ /**
+ * main() wrapper that returns proper exit status
+ */
+ public static void main(String[] args) {
+ Runtime rt = Runtime.getRuntime();
+ try {
+ boolean status = doMain(args);
+ rt.exit(status ? 0 : 1);
+ }
+ catch (Exception e) {
+ LOG.log(Level.SEVERE, "error, caught Exception in main()", e);
+ rt.exit(1);
+ }
}
}
Modified: lucene/nutch/trunk/src/java/org/apache/nutch/indexer/Indexer.java
URL:
http://svn.apache.org/viewcvs/lucene/nutch/trunk/src/java/org/apache/nutch/indexer/Indexer.java?rev=381751&r1=381750&r2=381751&view=diff
==============================================================================
--- lucene/nutch/trunk/src/java/org/apache/nutch/indexer/Indexer.java (original)
+++ lucene/nutch/trunk/src/java/org/apache/nutch/indexer/Indexer.java Tue Feb
28 11:25:12 2006
@@ -269,12 +269,12 @@
LOG.info("Indexer: done");
}
- public static void main(String[] args) throws Exception {
+ public static boolean doMain(String[] args) throws Exception {
Indexer indexer = new Indexer(NutchConfiguration.create());
if (args.length < 4) {
System.err.println("Usage: <index> <crawldb> <linkdb> <segment> ...");
- return;
+ return false;
}
File[] segments = new File[args.length-3];
@@ -284,6 +284,22 @@
indexer.index(new File(args[0]), new File(args[1]), new File(args[2]),
segments);
+
+ return true;
}
+ /**
+ * main() wrapper that returns proper exit status
+ */
+ public static void main(String[] args) {
+ Runtime rt = Runtime.getRuntime();
+ try {
+ boolean status = doMain(args);
+ rt.exit(status ? 0 : 1);
+ }
+ catch (Exception e) {
+ LOG.log(Level.SEVERE, "error, caught Exception in main()", e);
+ rt.exit(1);
+ }
+ }
}
Modified: lucene/nutch/trunk/src/java/org/apache/nutch/parse/ParseSegment.java
URL:
http://svn.apache.org/viewcvs/lucene/nutch/trunk/src/java/org/apache/nutch/parse/ParseSegment.java?rev=381751&r1=381750&r2=381751&view=diff
==============================================================================
--- lucene/nutch/trunk/src/java/org/apache/nutch/parse/ParseSegment.java
(original)
+++ lucene/nutch/trunk/src/java/org/apache/nutch/parse/ParseSegment.java Tue
Feb 28 11:25:12 2006
@@ -104,19 +104,36 @@
}
- public static void main(String[] args) throws Exception {
+ public static boolean doMain(String[] args) throws Exception {
File segment;
String usage = "Usage: ParseSegment segment";
if (args.length == 0) {
System.err.println(usage);
- System.exit(-1);
+ return false;
}
segment = new File(args[0]);
ParseSegment parseSegment = new ParseSegment(NutchConfiguration.create());
parseSegment.parse(segment);
+
+ return true;
+ }
+
+ /**
+ * main() wrapper that returns proper exit status
+ */
+ public static void main(String[] args) {
+ Runtime rt = Runtime.getRuntime();
+ try {
+ boolean status = doMain(args);
+ rt.exit(status ? 0 : 1);
+ }
+ catch (Exception e) {
+ LOG.log(Level.SEVERE, "error, caught Exception in main()", e);
+ rt.exit(1);
+ }
}
}
Modified:
lucene/nutch/trunk/src/java/org/apache/nutch/plugin/PluginRepository.java
URL:
http://svn.apache.org/viewcvs/lucene/nutch/trunk/src/java/org/apache/nutch/plugin/PluginRepository.java?rev=381751&r1=381750&r2=381751&view=diff
==============================================================================
--- lucene/nutch/trunk/src/java/org/apache/nutch/plugin/PluginRepository.java
(original)
+++ lucene/nutch/trunk/src/java/org/apache/nutch/plugin/PluginRepository.java
Tue Feb 28 11:25:12 2006
@@ -26,7 +26,7 @@
import java.util.Iterator;
import java.util.List;
import java.util.Map;
-import java.util.logging.Logger;
+import java.util.logging.*;
import java.util.regex.Pattern;
// Nutch imports
@@ -400,10 +400,10 @@
* selected class.
* @throws Exception
*/
- public static void main(String[] args) throws Exception {
+ public static boolean doMain(String[] args) throws Exception {
if (args.length < 2) {
System.err.println("Usage: PluginRepository pluginId className [arg1
arg2 ...]");
- return;
+ return false;
}
Configuration conf = NutchConfiguration.create();
PluginRepository repo = new PluginRepository(conf);
@@ -411,7 +411,7 @@
PluginDescriptor d = repo.getPluginDescriptor(args[0]);
if (d == null) {
System.err.println("Plugin '" + args[0] + "' not present or
inactive.");
- return;
+ return false;
}
ClassLoader cl = d.getClassLoader();
// args[1] - class name
@@ -420,17 +420,34 @@
clazz = Class.forName(args[1], true, cl);
} catch (Exception e) {
System.err.println("Could not load the class '" + args[1] + ": " +
e.getMessage());
- return;
+ return false;
}
Method m = null;
try {
m = clazz.getMethod("main", new Class[]{args.getClass()});
} catch (Exception e) {
System.err.println("Could not find the 'main(String[])' method in
class " + args[1] + ": " + e.getMessage());
- return;
+ return false;
}
String[] subargs = new String[args.length - 2];
System.arraycopy(args, 2, subargs, 0, subargs.length);
m.invoke(null, new Object[]{subargs});
+
+ return true;
+ }
+
+ /**
+ * main() wrapper that returns proper exit status
+ */
+ public static void main(String[] args) {
+ Runtime rt = Runtime.getRuntime();
+ try {
+ boolean status = doMain(args);
+ rt.exit(status ? 0 : 1);
+ }
+ catch (Exception e) {
+ LOG.log(Level.SEVERE, "error, caught Exception in main()", e);
+ rt.exit(1);
}
+ }
}
Modified:
lucene/nutch/trunk/src/java/org/apache/nutch/searcher/DistributedSearch.java
URL:
http://svn.apache.org/viewcvs/lucene/nutch/trunk/src/java/org/apache/nutch/searcher/DistributedSearch.java?rev=381751&r1=381750&r2=381751&view=diff
==============================================================================
---
lucene/nutch/trunk/src/java/org/apache/nutch/searcher/DistributedSearch.java
(original)
+++
lucene/nutch/trunk/src/java/org/apache/nutch/searcher/DistributedSearch.java
Tue Feb 28 11:25:12 2006
@@ -19,7 +19,7 @@
import java.net.InetSocketAddress;
import java.io.*;
import java.util.*;
-import java.util.logging.Logger;
+import java.util.logging.*;
import java.lang.reflect.Method;
import org.apache.nutch.parse.ParseData;
@@ -53,12 +53,12 @@
private Server() {}
/** Runs a search server. */
- public static void main(String[] args) throws Exception {
+ public static boolean doMain(String[] args) throws Exception {
String usage = "DistributedSearch$Server <port> <index dir>";
if (args.length == 0 || args.length > 2) {
System.err.println(usage);
- System.exit(-1);
+ return false;
}
int port = Integer.parseInt(args[0]);
@@ -70,8 +70,24 @@
org.apache.hadoop.ipc.Server server = RPC.getServer(bean, port, 10,
true, conf);
server.start();
server.join();
+
+ return true;
}
+ /**
+ * main() wrapper that returns proper exit status
+ */
+ public static void main(String[] args) {
+ Runtime rt = Runtime.getRuntime();
+ try {
+ boolean status = doMain(args);
+ rt.exit(status ? 0 : 1);
+ }
+ catch (Exception e) {
+ LOG.log(Level.SEVERE, "error, caught Exception in main()", e);
+ rt.exit(1);
+ }
+ }
}
/** The search client. */
@@ -311,12 +327,12 @@
return getRemote(hit).getFetchDate(hit);
}
- public static void main(String[] args) throws Exception {
+ public static boolean doMain(String[] args) throws Exception {
String usage = "DistributedSearch$Client query <host> <port> ...";
if (args.length == 0) {
System.err.println(usage);
- System.exit(-1);
+ return false;
}
Query query = Query.parse(args[0], NutchConfiguration.create());
@@ -336,6 +352,7 @@
System.out.println(" "+i+" "+ client.getDetails(hits.getHit(i)));
}
+ return true;
}
public void run() {
@@ -361,6 +378,21 @@
public void close() {
running = false;
interrupt();
+ }
+
+ /**
+ * main() wrapper that returns proper exit status
+ */
+ public static void main(String[] args) {
+ Runtime rt = Runtime.getRuntime();
+ try {
+ boolean status = doMain(args);
+ rt.exit(status ? 0 : 1);
+ }
+ catch (Exception e) {
+ LOG.log(Level.SEVERE, "error, caught Exception in main()", e);
+ rt.exit(1);
+ }
}
}
}
Modified:
lucene/nutch/trunk/src/java/org/apache/nutch/segment/SegmentReader.java
URL:
http://svn.apache.org/viewcvs/lucene/nutch/trunk/src/java/org/apache/nutch/segment/SegmentReader.java?rev=381751&r1=381750&r2=381751&view=diff
==============================================================================
--- lucene/nutch/trunk/src/java/org/apache/nutch/segment/SegmentReader.java
(original)
+++ lucene/nutch/trunk/src/java/org/apache/nutch/segment/SegmentReader.java Tue
Feb 28 11:25:12 2006
@@ -25,7 +25,7 @@
import java.io.PrintStream;
import java.io.PrintWriter;
import java.util.Iterator;
-import java.util.logging.Logger;
+import java.util.logging.*;
import org.apache.nutch.crawl.CrawlDatum;
import org.apache.hadoop.fs.FileSystem;
@@ -221,7 +221,7 @@
}
}
- public static void main(String[] args) throws Exception {
+ public static boolean doMain(String[] args) throws Exception {
Configuration conf = NutchConfiguration.create();
SegmentReader segmentReader = new SegmentReader(conf);
@@ -229,8 +229,25 @@
if (args.length == 0) {
System.err.println(usage);
- System.exit(-1);
+ return false;
}
segmentReader.reader(new File(args[0]));
+
+ return true;
+ }
+
+ /**
+ * main() wrapper that returns proper exit status
+ */
+ public static void main(String[] args) {
+ Runtime rt = Runtime.getRuntime();
+ try {
+ boolean status = doMain(args);
+ rt.exit(status ? 0 : 1);
+ }
+ catch (Exception e) {
+ LOG.log(Level.SEVERE, "error, caught Exception in main()", e);
+ rt.exit(1);
+ }
}
}