Skip to content

Commit ae720f4

Browse files
committed
oops, I'd forgotten to implement the delete functionality
1 parent 0acafe7 commit ae720f4

File tree

2 files changed

+18
-29
lines changed

2 files changed

+18
-29
lines changed

src/main/java/com/marklogic/client/impl/PojoRepositoryImpl.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,11 @@
1515
import com.marklogic.client.pojo.PojoQueryBuilder;
1616
import com.marklogic.client.pojo.PojoRepository;
1717
import com.marklogic.client.pojo.annotation.Id;
18+
import com.marklogic.client.query.DeleteQueryDefinition;
1819
import com.marklogic.client.query.QueryDefinition;
20+
import com.marklogic.client.query.QueryManager;
1921
import com.marklogic.client.query.QueryManager.QueryView;
2022
import com.marklogic.client.query.StructuredQueryDefinition;
21-
2223
import com.fasterxml.jackson.annotation.JsonTypeInfo;
2324
import com.fasterxml.jackson.databind.ObjectMapper;
2425

@@ -108,8 +109,15 @@ public long count(QueryDefinition query) {
108109
}
109110

110111
public void delete(ID... ids) {
112+
for ( ID id : ids ) {
113+
docMgr.delete(createUri(id));
114+
}
111115
}
112116
public void delete(String... collections) {
117+
QueryManager queryMgr = client.newQueryManager();
118+
DeleteQueryDefinition deleteQuery = queryMgr.newDeleteDefinition();
119+
deleteQuery.setCollections(collections);
120+
queryMgr.delete((DeleteQueryDefinition) wrapQuery(deleteQuery));
113121
}
114122

115123
public T read(ID id) {

src/test/java/com/marklogic/client/test/PojoFacadeTest.java

Lines changed: 9 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -15,17 +15,6 @@
1515
*/
1616
package com.marklogic.client.test;
1717

18-
/*
19-
import java.io.BufferedReader;
20-
import java.io.IOException;
21-
import java.util.HashMap;
22-
import java.util.Map;
23-
24-
import javax.xml.bind.JAXBContext;
25-
import javax.xml.bind.JAXBException;
26-
import javax.xml.bind.annotation.XmlRootElement;
27-
*/
28-
2918
import static org.junit.Assert.assertEquals;
3019
import static org.junit.Assert.assertNotNull;
3120
import static org.junit.Assert.assertTrue;
@@ -41,20 +30,6 @@
4130
import com.marklogic.client.pojo.PojoPage;
4231
import com.marklogic.client.pojo.PojoRepository;
4332
import com.marklogic.client.query.StringQueryDefinition;
44-
/*
45-
import com.marklogic.client.DatabaseClientFactory;
46-
import com.marklogic.client.document.DocumentDescriptor;
47-
import com.marklogic.client.document.DocumentPage;
48-
import com.marklogic.client.document.DocumentRecord;
49-
import com.marklogic.client.document.DocumentWriteSet;
50-
import com.marklogic.client.document.XMLDocumentManager;
51-
import com.marklogic.client.io.Format;
52-
import com.marklogic.client.io.JAXBHandle;
53-
import com.marklogic.client.io.SearchHandle;
54-
import com.marklogic.client.query.DeleteQueryDefinition;
55-
import com.marklogic.client.query.QueryManager;
56-
import com.marklogic.client.query.StructuredQueryBuilder;
57-
*/
5833
import com.marklogic.client.test.BulkReadWriteTest;
5934
import com.marklogic.client.test.BulkReadWriteTest.City;
6035
import com.marklogic.client.test.BulkReadWriteTest.CityWriter;
@@ -71,7 +46,6 @@ public static void beforeClass() {
7146
Common.connect();
7247
repository = Common.client.newPojoRepository(City.class, Integer.class);
7348
//System.setProperty("org.apache.commons.logging.simplelog.log.org.apache.http.wire", "debug");
74-
//System.setProperty("org.apache.commons.logging.simplelog.log.org.apache.http", "debug");
7549
}
7650
@AfterClass
7751
public static void afterClass() {
@@ -115,12 +89,19 @@ public void testB_ReadPojos() throws Exception {
11589
assertEquals("PojoPage failed to report number of records expected", numRead, page.getTotalSize());
11690
}
11791

118-
/*
11992
@Test
12093
public void testC_DeletePojos() throws Exception {
94+
repository.delete(1185098, 2239076);
95+
StringQueryDefinition query = Common.client.newQueryManager().newStringDefinition();
96+
query.setCriteria("Tungi OR Dalatando OR Chittagong");
97+
PojoPage<City> page = repository.search(query, 1);
98+
assertEquals("Failed to read number of records expected", 1, page.getTotalSize());
99+
100+
// now delete them all
121101
repository.delete((String)null);
102+
page = repository.search(query, 1);
103+
assertEquals("Failed to read number of records expected", 0, page.getTotalSize());
122104
}
123-
*/
124105

125106
private void validateCity(City city) {
126107
assertNotNull("City should never be null", city);

0 commit comments

Comments
 (0)