Require docid in DocIdPusher.Record.Builder
diff --git a/src/adaptorlib/AbstractDocIdPusher.java b/src/adaptorlib/AbstractDocIdPusher.java
index 7da06e3..341fbe6 100644
--- a/src/adaptorlib/AbstractDocIdPusher.java
+++ b/src/adaptorlib/AbstractDocIdPusher.java
@@ -38,9 +38,8 @@
PushErrorHandler handler)
throws InterruptedException {
List<Record> records = new ArrayList<Record>();
- Record.Builder recordMaker = new Record.Builder();
for (DocId docId : docIds) {
- records.add(recordMaker.setDocId(docId).build());
+ records.add(new Record.Builder(docId).build());
}
Record record = pushRecords(records, handler);
return record == null ? null : record.getDocId();
diff --git a/src/adaptorlib/CommandStreamParser.java b/src/adaptorlib/CommandStreamParser.java
index 7b75585..891e66c 100644
--- a/src/adaptorlib/CommandStreamParser.java
+++ b/src/adaptorlib/CommandStreamParser.java
@@ -328,9 +328,7 @@
case ID:
if (docId != null) {
// TODO (johnfelton) add lister options when API is available
- DocIdPusher.Record.Builder builder = new DocIdPusher.Record.Builder();
- builder.setDocId(new DocId(docId));
- result.add(builder.build());
+ result.add(new DocIdPusher.Record.Builder(new DocId(docId)).build());
}
docId = command.getArgument();
lastModified = null;
@@ -360,9 +358,7 @@
command = readCommand();
}
// TODO (johnfelton) add lister options when API is available
- DocIdPusher.Record.Builder builder = new DocIdPusher.Record.Builder();
- builder.setDocId(new DocId(docId));
- result.add(builder.build());
+ result.add(new DocIdPusher.Record.Builder(new DocId(docId)).build());
return result;
}
diff --git a/src/adaptorlib/DocIdPusher.java b/src/adaptorlib/DocIdPusher.java
index 1286d50..e5a4fc9 100644
--- a/src/adaptorlib/DocIdPusher.java
+++ b/src/adaptorlib/DocIdPusher.java
@@ -92,9 +92,6 @@
private Record(DocId docid, boolean delete, Date lastModified,
URI link, boolean crawlImmediately, boolean crawlOnce, boolean lock) {
- if (null == docid) {
- throw new NullPointerException();
- }
this.id = docid;
this.delete = delete;
this.lastModified = lastModified;
@@ -191,7 +188,12 @@
private boolean crawlOnce = false;
private boolean lock = false;
- public Builder() {}
+ public Builder(DocId id) {
+ if (null == id) {
+ throw new NullPointerException();
+ }
+ docid = id;
+ }
/** Makes Builder that can duplicate a record. */
public Builder(Record startPoint) {
@@ -205,6 +207,9 @@
}
public Builder setDocId(DocId id) {
+ if (null == id) {
+ throw new NullPointerException();
+ }
this.docid = id;
return this;
}
diff --git a/test/adaptorlib/DocIdSenderTest.java b/test/adaptorlib/DocIdSenderTest.java
index b6d6a60..df12e33 100644
--- a/test/adaptorlib/DocIdSenderTest.java
+++ b/test/adaptorlib/DocIdSenderTest.java
@@ -50,7 +50,7 @@
DocIdPusher.Record[] records = new DocIdPusher.Record[6];
for (int i = 0; i < records.length; i++) {
DocId id = new DocId("test" + i);
- records[i] = new DocIdPusher.Record.Builder().setDocId(id).build();
+ records[i] = new DocIdPusher.Record.Builder(id).build();
}
List<DocIdPusher.Record> infos = new ArrayList<DocIdPusher.Record>();
infos.add(records[0]);
diff --git a/test/adaptorlib/GsaFeedFileMakerTest.java b/test/adaptorlib/GsaFeedFileMakerTest.java
index e3e1083..760c043 100644
--- a/test/adaptorlib/GsaFeedFileMakerTest.java
+++ b/test/adaptorlib/GsaFeedFileMakerTest.java
@@ -75,10 +75,8 @@
+ "</group>\n"
+ "</gsafeed>\n";
ArrayList<DocIdPusher.Record> ids = new ArrayList<DocIdPusher.Record>();
- ids.add(new DocIdPusher.Record.Builder()
- .setDocId(new DocId("E11")).build());
- ids.add(new DocIdPusher.Record.Builder()
- .setDocId(new DocId("elefenta")).build());
+ ids.add(new DocIdPusher.Record.Builder(new DocId("E11")).build());
+ ids.add(new DocIdPusher.Record.Builder(new DocId("elefenta")).build());
String xml = meker.makeMetadataAndUrlXml("t3sT", ids);
assertEquals(golden, xml);
}
@@ -109,10 +107,9 @@
+ "</group>\n"
+ "</gsafeed>\n";
ArrayList<DocIdPusher.Record> ids = new ArrayList<DocIdPusher.Record>();
- DocIdPusher.Record.Builder attrBuilder = new DocIdPusher.Record.Builder();
+ DocIdPusher.Record.Builder attrBuilder = new DocIdPusher.Record.Builder(new DocId("E11"));
attrBuilder.setResultLink(new URI("http://f000nkey.net"));
- attrBuilder.setDocId(new DocId("E11"));
ids.add(attrBuilder.build());
attrBuilder.setResultLink(new URI("http://yankee.doodle.com"));
diff --git a/test/adaptorlib/JournalTest.java b/test/adaptorlib/JournalTest.java
index 87e760e..1882e75 100644
--- a/test/adaptorlib/JournalTest.java
+++ b/test/adaptorlib/JournalTest.java
@@ -36,14 +36,14 @@
DocId id3 = new DocId("id3");
DocId id4 = new DocId("id4");
ArrayList<DocIdPusher.Record> docs = new ArrayList<DocIdPusher.Record>();
- docs.add(new DocIdPusher.Record.Builder().setDocId(id).build());
- docs.add(new DocIdPusher.Record.Builder().setDocId(id2).build());
- docs.add(new DocIdPusher.Record.Builder().setDocId(id3).build());
+ docs.add(new DocIdPusher.Record.Builder(id).build());
+ docs.add(new DocIdPusher.Record.Builder(id2).build());
+ docs.add(new DocIdPusher.Record.Builder(id3).build());
journal.recordDocIdPush(docs);
assertEquals(3, journal.getSnapshot().numUniqueDocIdsPushed);
journal.recordDocIdPush(docs);
assertEquals(3, journal.getSnapshot().numUniqueDocIdsPushed);
- docs.add(new DocIdPusher.Record.Builder().setDocId(id4).build());
+ docs.add(new DocIdPusher.Record.Builder(id4).build());
journal.recordDocIdPush(docs);
assertEquals(4, journal.getSnapshot().numUniqueDocIdsPushed);
}
diff --git a/test/adaptorlib/RecordTest.java b/test/adaptorlib/RecordTest.java
index bbacf3f..a2269aa 100644
--- a/test/adaptorlib/RecordTest.java
+++ b/test/adaptorlib/RecordTest.java
@@ -25,29 +25,24 @@
public ExpectedException thrown = ExpectedException.none();
@Test
- public void testNoDocId() {
- thrown.expect(NullPointerException.class);
- new DocIdPusher.Record.Builder().build();
- }
-
- @Test
public void testNullDocId() {
thrown.expect(NullPointerException.class);
- new DocIdPusher.Record.Builder().setDocId(null).build();
+ DocId nullId = null;
+ new DocIdPusher.Record.Builder(nullId).build();
}
@Test
public void testEquals() {
- DocIdPusher.Record info1 = new DocIdPusher.Record.Builder()
- .setDocId(new DocId("test")).build();
- DocIdPusher.Record info2 = new DocIdPusher.Record.Builder()
- .setDocId(new DocId("test")).build();
- DocIdPusher.Record info3 = new DocIdPusher.Record.Builder()
- .setDocId(new DocId("test2")).build();
- DocIdPusher.Record info4 = new DocIdPusher.Record.Builder()
- .setDocId(new DocId("test")).setDeleteFromIndex(true).build();
- DocIdPusher.Record info5 = new DocIdPusher.Record.Builder()
- .setDocId(new DocId("test2")).setDeleteFromIndex(true).build();
+ DocIdPusher.Record info1 = new DocIdPusher.Record.Builder(
+ new DocId("test")).build();
+ DocIdPusher.Record info2 = new DocIdPusher.Record.Builder(
+ new DocId("test")).build();
+ DocIdPusher.Record info3 = new DocIdPusher.Record.Builder(
+ new DocId("test2")).build();
+ DocIdPusher.Record info4 = new DocIdPusher.Record.Builder(
+ new DocId("test")).setDeleteFromIndex(true).build();
+ DocIdPusher.Record info5 = new DocIdPusher.Record.Builder(
+ new DocId("test2")).setDeleteFromIndex(true).build();
assertFalse(info1.equals(null));
assertFalse(info1.equals(new Object()));
assertEquals(info1, info2);
@@ -62,6 +57,6 @@
+ ",lastModified=null,resultLink=null,crawlImmediately=false"
+ ",crawlOnce=false,lock=false)";
assertEquals(golden,
- "" + new DocIdPusher.Record.Builder().setDocId(new DocId("a")).build());
+ "" + new DocIdPusher.Record.Builder(new DocId("a")).build());
}
}