diff --git a/.fleet/run.json b/.fleet/run.json
deleted file mode 100644
index 6ca6a5c..0000000
--- a/.fleet/run.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "configurations": [
- {
- "type": "maven",
- "name": "Test",
- "tasks": ["test"]
- },
-
- ]
-}
\ No newline at end of file
diff --git a/.fleet/settings.json b/.fleet/settings.json
deleted file mode 100644
index e69de29..0000000
diff --git a/nb-configuration.xml b/nb-configuration.xml
new file mode 100644
index 0000000..3486bc9
--- /dev/null
+++ b/nb-configuration.xml
@@ -0,0 +1,18 @@
+
+
+
+
+
+ all
+
+
diff --git a/src/main/java/net/dontcode/data/DataResource.java b/src/main/java/net/dontcode/data/DataResource.java
index c0a26d7..be89141 100644
--- a/src/main/java/net/dontcode/data/DataResource.java
+++ b/src/main/java/net/dontcode/data/DataResource.java
@@ -1,5 +1,7 @@
package net.dontcode.data;
+import com.mongodb.client.model.FindOneAndReplaceOptions;
+import com.mongodb.client.model.ReturnDocument;
import io.quarkus.mongodb.MongoClientName;
import io.quarkus.mongodb.reactive.ReactiveMongoClient;
import io.quarkus.mongodb.reactive.ReactiveMongoCollection;
@@ -65,9 +67,9 @@ public Uni getEntity (@PathParam("entityName") String entityName, @Pat
@Path("/{entityName}/{entityId}")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
- public Uni updateProject (@PathParam("entityName") String entityName, @PathParam("entityId") String entityId, @HeaderParam("DbName") String dbName, Document body) {
+ public Uni replaceEntity (@PathParam("entityName") String entityName, @PathParam("entityId") String entityId, @HeaderParam("DbName") String dbName, Document body) {
changeIdToObjectId(body);
- Uni ret = getEntities(entityName, dbName).findOneAndReplace(new Document().append("_id", body.get("_id")), body).map(document -> {
+ Uni ret = getEntities(entityName, dbName).findOneAndReplace(new Document().append("_id", body.get("_id")), body, new FindOneAndReplaceOptions().upsert(false).returnDocument(ReturnDocument.AFTER)).map(document -> {
if( document != null) {
changeIdToString(document);
return Response.ok(document).build();
@@ -90,7 +92,7 @@ protected void changeIdToString(Document body) {
@Path("/{entityName}/{entityId}")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
- public Uni deleteProject (@PathParam("entityName") String entityName, @PathParam("entityId") String entityId, @HeaderParam("DbName") String dbName) {
+ public Uni deleteEntity (@PathParam("entityName") String entityName, @PathParam("entityId") String entityId, @HeaderParam("DbName") String dbName) {
Uni ret = getEntities(entityName, dbName).findOneAndDelete(new Document().append("_id", new ObjectId(entityId))).map(document -> {
if( document != null) {
changeIdToString(document);
@@ -106,7 +108,7 @@ public Uni deleteProject (@PathParam("entityName") String entityName,
@Path("/{entityName}")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
- public Uni insertProject(Document body, @PathParam("entityName") String entityName, @HeaderParam("DbName") String dbName) {
+ public Uni insertEntity(Document body, @PathParam("entityName") String entityName, @HeaderParam("DbName") String dbName) {
//System.out.println("Received"+ body);
return getEntities(entityName, dbName).insertOne(body).map(result -> {
changeIdToString(body);
diff --git a/src/test/java/net/dontcode/data/DataResourceTest.java b/src/test/java/net/dontcode/data/DataResourceTest.java
index 6d772f3..1db46b0 100644
--- a/src/test/java/net/dontcode/data/DataResourceTest.java
+++ b/src/test/java/net/dontcode/data/DataResourceTest.java
@@ -36,18 +36,18 @@ public void testList () {
Document doc = new Document();
AtomicReference error = new AtomicReference<>();
- doc.append("name","TestProject1").append("creation", new Date());
+ doc.append("name","TestData1").append("creation", new Date());
removeEntities(entityName);
removeEntities(otherEntityName);
getEntities(entityName).insertOne(doc).onFailure().invoke(throwable -> {
error.set(throwable);
}).await().atMost(Duration.ofSeconds(10));
- doc.put("name","TestProject2");
+ doc.put("name","TestData2");
doc.remove("_id");
getEntities(entityName).insertOne(doc).onFailure().invoke(throwable -> {
error.set(throwable);
}).await().atMost(Duration.ofSeconds(10));
- doc.put("name","OtherTestProject");
+ doc.put("name","OtherData");
doc.remove("_id");
getEntities(otherEntityName).insertOne(doc).onFailure().invoke(throwable -> {
error.set(throwable);
@@ -58,10 +58,10 @@ public void testList () {
Assertions.assertNull(isError, "Error writing test data to Mongo "+errorMessage);
given().accept(ContentType.JSON).when().get("/{entityName}",entityName).then().statusCode(HttpStatus.SC_OK)
- .body("[0].name", Matchers.equalTo("TestProject1")).body( "[1].name", Matchers.equalTo("TestProject2") );
+ .body("[0].name", Matchers.equalTo("TestData1")).body( "[1].name", Matchers.equalTo("TestData2") );
given().accept(ContentType.JSON).when().get("/{entityName}",otherEntityName).then().statusCode(HttpStatus.SC_OK)
- .body("[0].name", Matchers.equalTo("OtherTestProject") );
+ .body("[0].name", Matchers.equalTo("OtherData") );
}
@Test
@@ -70,7 +70,7 @@ public void testCreateAndRead () {
removeEntities(entityName);
Document resp = given().contentType(ContentType.JSON).accept(ContentType.JSON).body("{" +
- "\"name\":\"PrjCreated1\"," +
+ "\"name\":\"DataCreated1\"," +
"\"creation\":\"2021-03-04\"" +
"}").when().post("/{entityName}", entityName).then().statusCode(HttpStatus.SC_OK)
.body("_id", Matchers.notNullValue() )
@@ -78,7 +78,7 @@ public void testCreateAndRead () {
given().accept(ContentType.JSON).when().get("/{entityName}/{entityId}",entityName, resp.get("_id").toString()).then().statusCode(HttpStatus.SC_OK)
- .body("name", Matchers.is("PrjCreated1"));
+ .body("name", Matchers.is("DataCreated1"));
}
@Test
@@ -94,7 +94,7 @@ public void testCompleteFlow () {
removeEntities(entityName);
Document created = given().contentType(ContentType.JSON).accept(ContentType.JSON).body("{" +
- "\"name\":\"PrjCreated2\"," +
+ "\"name\":\"DataCreated2\"," +
"\"creation\":\"2021-05-05\"" +
"}").when().post("/{entityName}", entityName).then().statusCode(HttpStatus.SC_OK)
.body("_id", Matchers.notNullValue() )
@@ -102,19 +102,20 @@ public void testCompleteFlow () {
String entityId = created.get("_id").toString();
given().accept(ContentType.JSON).when().get("/{entityName}/{entityId}", entityName, entityId).then().statusCode(HttpStatus.SC_OK)
- .body("name", Matchers.is("PrjCreated2"));
+ .body("name", Matchers.is("DataCreated2"));
Document updated = given().contentType(ContentType.JSON).accept(ContentType.JSON).body("{" +
"\"_id\":\""+entityId+"\","+
- "\"name\":\"PrjUpdated2\"," +
+ "\"name\":\"DataUpdated2\"," +
"\"creation\":\"2021-06-07\"" +
"}").when().put("/{entityName}/{entityId}",entityName, entityId).then().statusCode(HttpStatus.SC_OK)
.body("_id", Matchers.notNullValue() )
.and().extract().as(Document.class);
Assertions.assertEquals(entityId, updated.get("_id").toString());
+ Assertions.assertEquals("DataUpdated2", updated.get("name"));
given().accept(ContentType.JSON).when().get("/{entityName}/{entityId}",entityName, entityId).then().statusCode(HttpStatus.SC_OK)
- .body("name", Matchers.is("PrjUpdated2"))
+ .body("name", Matchers.is("DataUpdated2"))
.body("_id", Matchers.equalTo(created.get("_id")));
given().accept(ContentType.JSON).when().delete("/{entityName}/{entityId}",entityName, entityId).then().statusCode(HttpStatus.SC_OK);