Skip to content

Commit

Permalink
Added delete document function.
Browse files Browse the repository at this point in the history
  • Loading branch information
Jacob Hansson committed Oct 11, 2010
1 parent 28136d8 commit 245baa9
Show file tree
Hide file tree
Showing 2 changed files with 72 additions and 0 deletions.
26 changes: 26 additions & 0 deletions src/main/java/com/voltvoodoo/saplo4j/Saplo.java
Expand Up @@ -9,6 +9,7 @@
import com.voltvoodoo.saplo4j.async.impl.AddDocumentCallback;
import com.voltvoodoo.saplo4j.async.impl.CreateCorpusCallback;
import com.voltvoodoo.saplo4j.async.impl.DeleteCorpusCallback;
import com.voltvoodoo.saplo4j.async.impl.DeleteDocumentCallback;
import com.voltvoodoo.saplo4j.async.impl.DeleteMatchCallback;
import com.voltvoodoo.saplo4j.async.impl.GetCorpusIdsCallback;
import com.voltvoodoo.saplo4j.async.impl.GetCorpusInfoCallback;
Expand Down Expand Up @@ -178,6 +179,19 @@ public SaploDocument getDocument(SaploCorpus.Id corpusId,
}
}

public Boolean deleteDocument(SaploCorpus.Id corpusId, SaploDocument.Id id) {
DeleteDocumentCallback cb = new DeleteDocumentCallback();

deleteDocument(corpusId, id, cb);
cb.awaitResponse(MAX_WAIT_SECONDS * 1000);

if(cb.getException() == null) {
return true;
} else {
throw cb.getException();
}
}

//
// DOCUMENT MANAGEMENT API
// Async
Expand All @@ -199,6 +213,11 @@ public void getDocument(SaploCorpus.Id corpusId, SaploDocument.Id id,
SaploCallback<SaploDocument> callback) {
getDocument(corpusId, id, new GetDocumentCallback(callback));
}

public void deleteDocument(SaploCorpus.Id corpusId, SaploDocument.Id id,
SaploCallback<Boolean> callback) {
deleteDocument(corpusId, id, new DeleteDocumentCallback(callback));
}

//
// DOCUMENT MANAGEMENT API
Expand All @@ -218,6 +237,13 @@ private void updateDocument(SaploCorpus.Id corpusId, SaploDocument.Id id,
jsonParams(corpusId, id, headline, "", body, "", "", "", lang),
callback);
}

private void deleteDocument(SaploCorpus.Id corpusId, SaploDocument.Id id,
DeleteDocumentCallback callback) {
call("corpus.deleteArticle",
jsonParams(corpusId, id),
callback);
}

private void getDocument(SaploCorpus.Id corpusId, SaploDocument.Id id,
GetDocumentCallback callback) {
Expand Down
@@ -0,0 +1,46 @@
package com.voltvoodoo.saplo4j.async.impl;

import org.json.simple.JSONObject;

import com.voltvoodoo.saplo4j.async.AbstractInternalCallback;
import com.voltvoodoo.saplo4j.async.SaploCallback;
import com.voltvoodoo.saplo4j.exception.SaploException;

public class DeleteDocumentCallback extends AbstractInternalCallback {

private SaploException exception = null;
private SaploCallback<Boolean> userCallback = null;

public DeleteDocumentCallback() {

}

public DeleteDocumentCallback(SaploCallback<Boolean> callback) {
this.userCallback = callback;
}

public void onSuccessfulResponse(JSONObject response) {
if(userCallback != null) {
userCallback.onSuccess(true);
}
}


public void onFailedResponse(SaploException exception) {
this.setException(exception);
if(userCallback != null) {
userCallback.onFailure(exception);
}
}


public void setException(SaploException exception) {
this.exception = exception;
}


public SaploException getException() {
return exception;
}

}

0 comments on commit 245baa9

Please sign in to comment.