diff --git a/pom.xml b/pom.xml
index 477aece277e070781245de137cdca9d122d39005..6896d7c5d3390e84f2928236c9ad362deef4c22a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -8,11 +8,11 @@
2.5.6
- de.hft-stuttgart
- middleware
+ de.kebidge.middleware
+ shopping-app
0.0.1-SNAPSHOT
- middleware
- Demo project for Spring Boot
+ ShoppingApp
+ Shopping List Application
11
@@ -31,13 +31,11 @@
spring-boot-starter-data-jpa
-
org.postgresql
diff --git a/src/main/java/de/hftstuttgart/middleware/MiddlewareApplication.java b/src/main/java/de/hftstuttgart/middleware/MiddlewareApplication.java
deleted file mode 100644
index 1c783c20feb9dd20488382bc78a64e0b12a2be72..0000000000000000000000000000000000000000
--- a/src/main/java/de/hftstuttgart/middleware/MiddlewareApplication.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package de.hftstuttgart.middleware;
-
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-//import org.springframework.web.bind.annotation.GetMapping;
-//import org.springframework.web.bind.annotation.PathVariable;
-//import org.springframework.web.bind.annotation.RestController;
-
-@SpringBootApplication
-public class MiddlewareApplication {
-
- public static void main(String[] args) {
- SpringApplication.run(MiddlewareApplication.class, args);
- }
-
- /*
- @RestController
- class Hello {
-
- @GetMapping("/")
- public String sayHello() {
- return "Hello Kevin";
- }
-
- @GetMapping("/hello")
- public String sayHelloAgain() {
- return "Hello Kevin, from another REST Endpoint";
- }
-
- @GetMapping("/hello/{parameter}")
- public String sayHelloWithParameter(@PathVariable String parameter) {
- return "Hello Kevin, from another REST Endpoint " + parameter;
- }
- }
- */
-}
\ No newline at end of file
diff --git a/src/main/java/de/kebidge/middleware/MiddlewareApplication.java b/src/main/java/de/kebidge/middleware/MiddlewareApplication.java
new file mode 100644
index 0000000000000000000000000000000000000000..ee5b5a8b961335f9444331f5688b01dbde05367f
--- /dev/null
+++ b/src/main/java/de/kebidge/middleware/MiddlewareApplication.java
@@ -0,0 +1,12 @@
+package de.kebidge.middleware;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+
+@SpringBootApplication
+public class MiddlewareApplication {
+
+ public static void main(String[] args) {
+ SpringApplication.run(MiddlewareApplication.class, args);
+ }
+}
\ No newline at end of file
diff --git a/src/main/java/de/hftstuttgart/middleware/ShoppingAPI.java b/src/main/java/de/kebidge/middleware/ShoppingAPI.java
similarity index 78%
rename from src/main/java/de/hftstuttgart/middleware/ShoppingAPI.java
rename to src/main/java/de/kebidge/middleware/ShoppingAPI.java
index f07d0f868831aae451e7082f0b2a0146fca11846..1e6659ea443c5b987fff9c4a8e3faeca1b662a78 100644
--- a/src/main/java/de/hftstuttgart/middleware/ShoppingAPI.java
+++ b/src/main/java/de/kebidge/middleware/ShoppingAPI.java
@@ -1,4 +1,4 @@
-package de.hftstuttgart.middleware;
+package de.kebidge.middleware;
import java.util.ArrayList;
import java.util.Iterator;
@@ -24,11 +24,6 @@ public class ShoppingAPI {
Logger logger = LoggerFactory.getLogger(ShoppingAPI.class);
- /*public ShoppingAPI(ShoppingItemRepository shoppingItemRepository) {
- this.shoppingItemRepository = shoppingItemRepository;
- }*/
-
-
@GetMapping("/shoppingItem")
public ArrayList> getShoppingItems() {
@@ -40,9 +35,6 @@ public class ShoppingAPI {
Iterator itemTerator = iterableItems.iterator();
- // TODO: That should be work
- //Iterator> optionalItemTerator = optionalItemList.iterator();
-
logger.info("----- GET Item -----");
while(itemTerator.hasNext()){
@@ -71,6 +63,54 @@ public class ShoppingAPI {
return item;
}
+ @PostMapping(path = "/shoppingItem/{item}/{amount}", produces = "application/json")
+ public ShoppingItem addShoppingItemJSON(@PathVariable String item, @PathVariable int amount){
+
+ ShoppingItem newItem = new ShoppingItem(item);
+
+
+ Iterable iterableItems = shoppingItemRepository.findAll();
+ Iterator itemTerator = iterableItems.iterator();
+
+ while(itemTerator.hasNext()){
+
+ ShoppingItem tempItem = itemTerator.next();
+
+ if (tempItem.item.equals(item)) {
+
+ logger.info("----- ADD Item with Amount-----");
+
+ int newAmount = tempItem.amount + amount;
+
+ newItem.setId(tempItem.id);
+ newItem.setAmount(newAmount);
+ shoppingItemRepository.save(newItem);
+
+ logger.info("new id = {}", tempItem.id);
+ logger.info("new item = {}", tempItem.item);
+ logger.info("amount = {}", newAmount);
+
+ //return "Increased Amount (from " + (tempItem.amount - amount) + " to " + newItem.amount + ") of " + newItem.item + " successfully in shoppingItemRepository";
+ return newItem;
+ }
+
+ }
+
+
+ newItem.setAmount(amount);
+
+ shoppingItemRepository.save(newItem);
+
+ logger.info("----- ADD Item with Amount-----");
+ logger.info("new id = {}", newItem.id);
+ logger.info("new item = {}", newItem.item);
+ logger.info("amount = {}", amount);
+
+ //return "Added " + newItem.item + " with an Amount of " + amount + " successfully to shoppingItemRepository";
+ return newItem;
+
+ }
+
@PostMapping("/shoppingItem/{item}")
public String addShoppingItem(@PathVariable String item){
@@ -128,12 +168,15 @@ public class ShoppingAPI {
logger.info("----- UPDATE Item -----");
logger.info("old id = {}", tempItem.id);
logger.info("old item = {}", tempItem.item);
+ logger.info("old amount = {}", tempItem.amount);
myNewItem.setId(tempItem.id);
myNewItem.setItem(new_item);
+ myNewItem.setAmount(tempItem.amount);
logger.info("new id ={}", myNewItem.id);
logger.info("new item ={}", myNewItem.item);
+ logger.info("new amount ={}", myNewItem.amount);
shoppingItemRepository.save(myNewItem);
@@ -187,11 +230,17 @@ public class ShoppingAPI {
if(itemAmount > 1) {
+ /****************************************************
+ * ID bring nix da automatisch generiert !!!!!!!
+ * is aber nich schlimm
+ * amount ist ja richtig
+ */
+
ShoppingItem newItem = new ShoppingItem(item);
newItem.setAmount(itemAmount - 1);
newItem.setId(itemId);
- shoppingItemRepository.delete(tempItem);
+ //shoppingItemRepository.delete(tempItem);
logger.info("----- DELETE Item (Amount) -----");
logger.info("id = {}", newItem.id);
@@ -208,7 +257,7 @@ public class ShoppingAPI {
logger.info("----- DELETE Item-----");
logger.info("delete id = {}", tempItem.id);
logger.info("delete item = {}", tempItem.item);
- logger.info("delete amount = {}", tempItem.item);
+ logger.info("delete amount = {}", tempItem.amount);
shoppingItemRepository.delete(tempItem);
return "Deleted " + tempItem.item + " sucessfully";
diff --git a/src/main/java/de/hftstuttgart/middleware/ShoppingItem.java b/src/main/java/de/kebidge/middleware/ShoppingItem.java
similarity index 80%
rename from src/main/java/de/hftstuttgart/middleware/ShoppingItem.java
rename to src/main/java/de/kebidge/middleware/ShoppingItem.java
index 1f801158e6f42107cfb9bb8f62d135471e4258c7..dddf9aef550e51be12a85d93ab16d4ed02e90d80 100644
--- a/src/main/java/de/hftstuttgart/middleware/ShoppingItem.java
+++ b/src/main/java/de/kebidge/middleware/ShoppingItem.java
@@ -1,4 +1,4 @@
-package de.hftstuttgart.middleware;
+package de.kebidge.middleware;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
@@ -21,6 +21,16 @@ public class ShoppingItem {
item = itemName;
}
+
+ public ShoppingItem(String itemName, int itemAmount){
+
+ amount = itemAmount;
+ }
+
+ public ShoppingItem(long itemId, String itemName, int itemAmount){
+
+ id = itemId;
+ }
/* ********** *********** ********** */
diff --git a/src/main/java/de/hftstuttgart/middleware/ShoppingItemRepository.java b/src/main/java/de/kebidge/middleware/ShoppingItemRepository.java
similarity index 87%
rename from src/main/java/de/hftstuttgart/middleware/ShoppingItemRepository.java
rename to src/main/java/de/kebidge/middleware/ShoppingItemRepository.java
index dd4f573f23201bfd3ae6292eab28481d335bd48c..ed0b6fa96543bce0656b1b7ad9ed9d1806017485 100644
--- a/src/main/java/de/hftstuttgart/middleware/ShoppingItemRepository.java
+++ b/src/main/java/de/kebidge/middleware/ShoppingItemRepository.java
@@ -1,4 +1,4 @@
-package de.hftstuttgart.middleware;
+package de.kebidge.middleware;
import org.springframework.data.repository.CrudRepository;
diff --git a/src/main/resources/application-dev.properties b/src/main/resources/application-dev.properties
new file mode 100644
index 0000000000000000000000000000000000000000..7c6a579085bbcc88b0da034b7e28e8afae9d1043
--- /dev/null
+++ b/src/main/resources/application-dev.properties
@@ -0,0 +1,2 @@
+spring.datasource.url=jdbc:h2:mem:testdb
+spring.datasource.driver-class-name=org.h2.Driver
\ No newline at end of file
diff --git a/src/main/resources/application-prod.properties b/src/main/resources/application-prod.properties
new file mode 100644
index 0000000000000000000000000000000000000000..8df787c8a0fc5eb8025ac8013ed97e8dd39acc31
--- /dev/null
+++ b/src/main/resources/application-prod.properties
@@ -0,0 +1,5 @@
+spring.datasource.url=jdbc:postgresql://localhost:5432/kebidgedata
+spring.datasource.username=kebidge
+spring.datasource.password=password
+
+spring.jpa.show-sql=false
\ No newline at end of file
diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties
index 72e222172f4fd2be12cb2fa5d070c46076c8bc2d..a7e133991463bdd0f67a00484c992faa07f0b00c 100644
--- a/src/main/resources/application.properties
+++ b/src/main/resources/application.properties
@@ -1,9 +1,8 @@
-spring.datasource.url=jdbc:postgresql://localhost:5432/kevindb
-spring.datasource.username=kevin
-spring.datasource.password=password
-
spring.jpa.hibernate.ddl-auto=update
+spring.jpa.show-sql=true
server.port = 8181
-logging.level.de.hftstuttgart=INFO
\ No newline at end of file
+logging.level.de.kebidge=INFO
+
+spring.profiles.active=prod
\ No newline at end of file
diff --git a/src/test/java/de/hftstuttgart/middleware/MiddlewareApplicationTests.java b/src/test/java/de/kebidge/middleware/MiddlewareApplicationTests.java
similarity index 83%
rename from src/test/java/de/hftstuttgart/middleware/MiddlewareApplicationTests.java
rename to src/test/java/de/kebidge/middleware/MiddlewareApplicationTests.java
index 89cecbde351af75fe95f6c8e755cff20f0ef4ab7..491bd464c3404d2924ee35e60a853a8f8506c38a 100644
--- a/src/test/java/de/hftstuttgart/middleware/MiddlewareApplicationTests.java
+++ b/src/test/java/de/kebidge/middleware/MiddlewareApplicationTests.java
@@ -1,4 +1,4 @@
-package de.hftstuttgart.middleware;
+package de.kebidge.middleware;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;