From 6d12361ea75c1fe2b7cb3069f49879a032b2cd31 Mon Sep 17 00:00:00 2001 From: Dikshasharmaa Date: Fri, 5 Apr 2024 21:34:08 -0400 Subject: [PATCH 01/15] add junit testing suite --- pom.xml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/pom.xml b/pom.xml index 43c1af2..3a368b3 100644 --- a/pom.xml +++ b/pom.xml @@ -7,6 +7,20 @@ io.zipcodewilmington ProductInventoryLab 1.0-SNAPSHOT + + + org.junit.jupiter + junit-jupiter-engine + 5.4.2 + test + + + org.junit.jupiter + junit-jupiter-api + 5.4.2 + test + + From a2a418e3bb6c82e30d03fa6044c023da71e37fe1 Mon Sep 17 00:00:00 2001 From: Dikshasharmaa Date: Fri, 5 Apr 2024 22:05:38 -0400 Subject: [PATCH 02/15] Add models and services --- src/main/java/Models/Sneakers.java | 4 ++++ src/main/java/Models/Whiskey.java | 4 ++++ src/main/java/Services/SneakersService.java | 4 ++++ src/main/java/Services/WhiskeyService.java | 4 ++++ src/test/java/Models/SneakerTest.java | 4 ++++ src/test/java/Models/WhiskeyTest.java | 4 ++++ src/test/java/Services/SneakerServiceTest.java | 4 ++++ src/test/java/Services/WhiskeyServiceTest.java | 4 ++++ 8 files changed, 32 insertions(+) create mode 100644 src/main/java/Models/Sneakers.java create mode 100644 src/main/java/Models/Whiskey.java create mode 100644 src/main/java/Services/SneakersService.java create mode 100644 src/main/java/Services/WhiskeyService.java create mode 100644 src/test/java/Models/SneakerTest.java create mode 100644 src/test/java/Models/WhiskeyTest.java create mode 100644 src/test/java/Services/SneakerServiceTest.java create mode 100644 src/test/java/Services/WhiskeyServiceTest.java diff --git a/src/main/java/Models/Sneakers.java b/src/main/java/Models/Sneakers.java new file mode 100644 index 0000000..3759b06 --- /dev/null +++ b/src/main/java/Models/Sneakers.java @@ -0,0 +1,4 @@ +package Models; + +public class Sneakers { +} diff --git a/src/main/java/Models/Whiskey.java b/src/main/java/Models/Whiskey.java new file mode 100644 index 0000000..527f027 --- /dev/null +++ b/src/main/java/Models/Whiskey.java @@ -0,0 +1,4 @@ +package Models; + +public class Whiskey { +} diff --git a/src/main/java/Services/SneakersService.java b/src/main/java/Services/SneakersService.java new file mode 100644 index 0000000..93d9d42 --- /dev/null +++ b/src/main/java/Services/SneakersService.java @@ -0,0 +1,4 @@ +package Services; + +public class SneakersService { +} diff --git a/src/main/java/Services/WhiskeyService.java b/src/main/java/Services/WhiskeyService.java new file mode 100644 index 0000000..def3cb5 --- /dev/null +++ b/src/main/java/Services/WhiskeyService.java @@ -0,0 +1,4 @@ +package Services; + +public class WhiskeyService { +} diff --git a/src/test/java/Models/SneakerTest.java b/src/test/java/Models/SneakerTest.java new file mode 100644 index 0000000..37b3cf1 --- /dev/null +++ b/src/test/java/Models/SneakerTest.java @@ -0,0 +1,4 @@ +package Models; + +public class SneakerTest { +} diff --git a/src/test/java/Models/WhiskeyTest.java b/src/test/java/Models/WhiskeyTest.java new file mode 100644 index 0000000..c7c2bd8 --- /dev/null +++ b/src/test/java/Models/WhiskeyTest.java @@ -0,0 +1,4 @@ +package Models; + +public class WhiskeyTest { +} diff --git a/src/test/java/Services/SneakerServiceTest.java b/src/test/java/Services/SneakerServiceTest.java new file mode 100644 index 0000000..375bf11 --- /dev/null +++ b/src/test/java/Services/SneakerServiceTest.java @@ -0,0 +1,4 @@ +package Services; + +public class SneakerServiceTest { +} diff --git a/src/test/java/Services/WhiskeyServiceTest.java b/src/test/java/Services/WhiskeyServiceTest.java new file mode 100644 index 0000000..6cc63b2 --- /dev/null +++ b/src/test/java/Services/WhiskeyServiceTest.java @@ -0,0 +1,4 @@ +package Services; + +public class WhiskeyServiceTest { +} From 4b1d0a9bd25cf0217fb667016db330e14edf52de Mon Sep 17 00:00:00 2001 From: Dikshasharmaa Date: Fri, 5 Apr 2024 22:15:53 -0400 Subject: [PATCH 03/15] Added properties for Sneakers class --- src/main/java/Models/Sneakers.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/main/java/Models/Sneakers.java b/src/main/java/Models/Sneakers.java index 3759b06..2e6853a 100644 --- a/src/main/java/Models/Sneakers.java +++ b/src/main/java/Models/Sneakers.java @@ -1,4 +1,11 @@ package Models; public class Sneakers { + private int id; + private String name; + private String brand; + private String sport; + private float size; + private int quantity; + private float price; } From fcdeecadbe251571718a0ccb959ab67fc9b5f8af Mon Sep 17 00:00:00 2001 From: Dikshasharmaa Date: Sat, 6 Apr 2024 00:04:13 -0400 Subject: [PATCH 04/15] Accessors and mutators --- .idea/jarRepositories.xml | 20 ++++++ src/main/java/Models/Sneakers.java | 56 +++++++++++++++ src/main/java/Models/Whiskey.java | 27 +++++++ src/main/java/Services/SneakersService.java | 16 +++++ src/test/java/Models/SneakerTest.java | 79 +++++++++++++++++++++ src/test/java/Models/WhiskeyTest.java | 35 +++++++++ 6 files changed, 233 insertions(+) create mode 100644 .idea/jarRepositories.xml diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml new file mode 100644 index 0000000..712ab9d --- /dev/null +++ b/.idea/jarRepositories.xml @@ -0,0 +1,20 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/java/Models/Sneakers.java b/src/main/java/Models/Sneakers.java index 2e6853a..740c854 100644 --- a/src/main/java/Models/Sneakers.java +++ b/src/main/java/Models/Sneakers.java @@ -8,4 +8,60 @@ public class Sneakers { private float size; private int quantity; private float price; + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public int getId() { + return id; + } + + public void setId(int id) { + this.id = id; + } + + public String getBrand() { + return brand; + } + + public void setBrand(String brand) { + this.brand = brand; + } + + public String getSport() { + return sport; + } + + public void setSport(String sport) { + this.sport = sport; + } + + public float getSize() { + return size; + } + + public void setSize(float size) { + this.size = size; + } + + public int getQuantity() { + return quantity; + } + + public void setQuantity(int quantity) { + this.quantity = quantity; + } + + public float getPrice() { + return price; + } + + public void setPrice(float price) { + this.price = price; + } } diff --git a/src/main/java/Models/Whiskey.java b/src/main/java/Models/Whiskey.java index 527f027..56892c7 100644 --- a/src/main/java/Models/Whiskey.java +++ b/src/main/java/Models/Whiskey.java @@ -1,4 +1,31 @@ package Models; public class Whiskey { + private int quantity; + private float price; + private String brand; + + public int getQuantity() { + return quantity; + } + + public void setQuantity(int quantity) { + this.quantity = quantity; + } + + public float getPrice() { + return price; + } + + public void setPrice(float price) { + this.price = price; + } + + public String getBrand() { + return brand; + } + + public void setBrand(String brand) { + this.brand = brand; + } } diff --git a/src/main/java/Services/SneakersService.java b/src/main/java/Services/SneakersService.java index 93d9d42..26c4f74 100644 --- a/src/main/java/Services/SneakersService.java +++ b/src/main/java/Services/SneakersService.java @@ -1,4 +1,20 @@ package Services; +import Models.Sneakers; + +import java.util.ArrayList; +import java.util.List; + public class SneakersService { + + private static int nextId = 1; // (1) + + private List inventory = new ArrayList<>(); + + public List getInventory() { + return inventory; + } + public void add(Sneakers sneakers){ + inventory.add(sneakers); + } } diff --git a/src/test/java/Models/SneakerTest.java b/src/test/java/Models/SneakerTest.java index 37b3cf1..e0b210d 100644 --- a/src/test/java/Models/SneakerTest.java +++ b/src/test/java/Models/SneakerTest.java @@ -1,4 +1,83 @@ package Models; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + public class SneakerTest { + @Test + public void SetNameTest(){ + //Given + String expected = "CH324"; + //when + Sneakers testName = new Sneakers(); + testName.setName(expected); + //then + Assertions.assertEquals(expected,testName.getName()); + } + + @Test + public void SetIdTest(){ + //Given + int expected = 1; + //when + Sneakers testId = new Sneakers(); + testId.setId(expected); + //then + Assertions.assertEquals(expected,testId.getId()); + } + + @Test + public void SetBrandTest(){ + //Given + String expected = "Nike"; + //when + Sneakers testBrand = new Sneakers(); + testBrand.setBrand(expected); + //then + Assertions.assertEquals(expected,testBrand.getBrand()); + } + + @Test + public void SetSportTest(){ + //Given + String expected = "Soccer"; + //when + Sneakers testSport = new Sneakers(); + testSport.setSport(expected); + //then + Assertions.assertEquals(expected,testSport.getSport()); + } + @Test + public void SetSizeTest(){ + //Given + int expected = 9; + //when + Sneakers testSize = new Sneakers(); + testSize.setSize(expected); + //then + Assertions.assertEquals(expected,testSize.getSize()); + } + @Test + public void SetQuantityTest(){ + //Given + int expected = 2; + //when + Sneakers testQnty = new Sneakers(); + testQnty.setQuantity(expected); + //then + Assertions.assertEquals(expected,testQnty.getQuantity()); + } + + @Test + public void SetPriceTest(){ + //Given + int expected = 200; + //when + Sneakers testPrice = new Sneakers(); + testPrice.setPrice(expected); + //then + Assertions.assertEquals(expected,testPrice.getPrice()); + } + + } diff --git a/src/test/java/Models/WhiskeyTest.java b/src/test/java/Models/WhiskeyTest.java index c7c2bd8..d91ae17 100644 --- a/src/test/java/Models/WhiskeyTest.java +++ b/src/test/java/Models/WhiskeyTest.java @@ -1,4 +1,39 @@ package Models; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + public class WhiskeyTest { + @Test + public void SetBrandTest(){ + //Given + String expected = "Nike"; + //when + Whiskey testBrand = new Whiskey(); + testBrand.setBrand(expected); + //then + Assertions.assertEquals(expected,testBrand.getBrand()); + } + + @Test + public void SetQuantityTest(){ + //Given + int expected = 2; + //when + Whiskey testQnty = new Whiskey(); + testQnty.setQuantity(expected); + //then + Assertions.assertEquals(expected,testQnty.getQuantity()); + } + @Test + public void SetPriceTest(){ + //Given + int expected = 200; + //when + Whiskey testPrice = new Whiskey(); + testPrice.setPrice(expected); + //then + Assertions.assertEquals(expected,testPrice.getPrice()); + } + } From d4edbb214dc9f6ed10eca98e1c2e2e09f24df8da Mon Sep 17 00:00:00 2001 From: Dikshasharmaa Date: Sat, 6 Apr 2024 00:41:46 -0400 Subject: [PATCH 05/15] Made constructors and test for that --- src/main/java/Models/Sneakers.java | 22 +++++++++++----- src/main/java/Models/Whiskey.java | 6 +++++ src/test/java/Models/SneakerTest.java | 38 ++++++++++++++++++++------- src/test/java/Models/WhiskeyTest.java | 21 ++++++++++++--- 4 files changed, 68 insertions(+), 19 deletions(-) diff --git a/src/main/java/Models/Sneakers.java b/src/main/java/Models/Sneakers.java index 740c854..d9ffea3 100644 --- a/src/main/java/Models/Sneakers.java +++ b/src/main/java/Models/Sneakers.java @@ -9,14 +9,16 @@ public class Sneakers { private int quantity; private float price; - public String getName() { - return name; - } + public Sneakers(int id, String name, String brand, String sport, + int quantity, float price) { + id = 6; + name = " "; + brand= " "; + sport = " "; + quantity = 10; + price = 80.00f; - public void setName(String name) { - this.name = name; } - public int getId() { return id; } @@ -25,6 +27,14 @@ public void setId(int id) { this.id = id; } + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + public String getBrand() { return brand; } diff --git a/src/main/java/Models/Whiskey.java b/src/main/java/Models/Whiskey.java index 56892c7..8a1ea7a 100644 --- a/src/main/java/Models/Whiskey.java +++ b/src/main/java/Models/Whiskey.java @@ -5,6 +5,12 @@ public class Whiskey { private float price; private String brand; + public Whiskey(String brand, int quantity, float price) { + brand = " "; + quantity = 20; + price = 580.00f; + } + public int getQuantity() { return quantity; } diff --git a/src/test/java/Models/SneakerTest.java b/src/test/java/Models/SneakerTest.java index e0b210d..8ea31e2 100644 --- a/src/test/java/Models/SneakerTest.java +++ b/src/test/java/Models/SneakerTest.java @@ -4,12 +4,31 @@ import org.junit.jupiter.api.Test; public class SneakerTest { + @Test + public void ConstructorTest(){ + int expectedId = 6; + String expectedName = "Stan Smith"; + String expectedBrand = "Nike"; + String expectedSport = "Tennis"; + int expectedQuantity = 10; + float expectedPrice = 80.00f; + + Sneakers testSneakers = new Sneakers(expectedId, expectedName, expectedBrand, + expectedSport, expectedQuantity,expectedPrice); + + Assertions.assertEquals(expectedId, testSneakers.getId()); + Assertions.assertEquals(expectedName, testSneakers.getName()); + Assertions.assertEquals(expectedBrand, testSneakers.getBrand()); + Assertions.assertEquals(expectedSport, testSneakers.getSport()); + Assertions.assertEquals(expectedQuantity, testSneakers.getQuantity()); + Assertions.assertEquals(expectedPrice, testSneakers.getPrice()); + } @Test public void SetNameTest(){ //Given - String expected = "CH324"; + String expected = "Stan Smith"; //when - Sneakers testName = new Sneakers(); + Sneakers testName = new Sneakers(6,"Stan Smith","Nike","Tennis",10,80.00f); testName.setName(expected); //then Assertions.assertEquals(expected,testName.getName()); @@ -18,9 +37,9 @@ public void SetNameTest(){ @Test public void SetIdTest(){ //Given - int expected = 1; + int expected = 6; //when - Sneakers testId = new Sneakers(); + Sneakers testId = new Sneakers(6,"Stan Smith","Nike","Tennis",10,80.00f); testId.setId(expected); //then Assertions.assertEquals(expected,testId.getId()); @@ -31,7 +50,7 @@ public void SetBrandTest(){ //Given String expected = "Nike"; //when - Sneakers testBrand = new Sneakers(); + Sneakers testBrand = new Sneakers(6,"Stan Smith","Nike","Tennis",10,80.00f); testBrand.setBrand(expected); //then Assertions.assertEquals(expected,testBrand.getBrand()); @@ -42,7 +61,7 @@ public void SetSportTest(){ //Given String expected = "Soccer"; //when - Sneakers testSport = new Sneakers(); + Sneakers testSport = new Sneakers(6,"Stan Smith","Nike","Tennis",10,80.00f); testSport.setSport(expected); //then Assertions.assertEquals(expected,testSport.getSport()); @@ -52,7 +71,7 @@ public void SetSizeTest(){ //Given int expected = 9; //when - Sneakers testSize = new Sneakers(); + Sneakers testSize = new Sneakers(6,"Stan Smith","Nike","Tennis",10,80.00f); testSize.setSize(expected); //then Assertions.assertEquals(expected,testSize.getSize()); @@ -62,7 +81,7 @@ public void SetQuantityTest(){ //Given int expected = 2; //when - Sneakers testQnty = new Sneakers(); + Sneakers testQnty = new Sneakers(6,"Stan Smith","Nike","Tennis",10,80.00f); testQnty.setQuantity(expected); //then Assertions.assertEquals(expected,testQnty.getQuantity()); @@ -73,11 +92,12 @@ public void SetPriceTest(){ //Given int expected = 200; //when - Sneakers testPrice = new Sneakers(); + Sneakers testPrice = new Sneakers(6,"Stan Smith","Nike","Tennis",10,80.00f); testPrice.setPrice(expected); //then Assertions.assertEquals(expected,testPrice.getPrice()); } + } diff --git a/src/test/java/Models/WhiskeyTest.java b/src/test/java/Models/WhiskeyTest.java index d91ae17..91eb90d 100644 --- a/src/test/java/Models/WhiskeyTest.java +++ b/src/test/java/Models/WhiskeyTest.java @@ -4,12 +4,25 @@ import org.junit.jupiter.api.Test; public class WhiskeyTest { + + @Test + public void TestConstructor(){ + String expectedBrand = "Crown Royal Canadian"; + int expectedQuantity = 10; + float expectedPrice = 580.00f; + + Whiskey testWhiskey = new Whiskey(expectedBrand, expectedQuantity,expectedPrice); + Assertions.assertEquals(expectedBrand, testWhiskey.getBrand()); + Assertions.assertEquals(expectedQuantity, testWhiskey.getQuantity()); + Assertions.assertEquals(expectedPrice, testWhiskey.getPrice()); + + } @Test public void SetBrandTest(){ //Given - String expected = "Nike"; + String expected = "Crown Royal Canadian"; //when - Whiskey testBrand = new Whiskey(); + Whiskey testBrand = new Whiskey("Crown Royal Canadian",0,0); testBrand.setBrand(expected); //then Assertions.assertEquals(expected,testBrand.getBrand()); @@ -20,7 +33,7 @@ public void SetQuantityTest(){ //Given int expected = 2; //when - Whiskey testQnty = new Whiskey(); + Whiskey testQnty = new Whiskey("Crown Royal Canadian",20,0); testQnty.setQuantity(expected); //then Assertions.assertEquals(expected,testQnty.getQuantity()); @@ -30,7 +43,7 @@ public void SetPriceTest(){ //Given int expected = 200; //when - Whiskey testPrice = new Whiskey(); + Whiskey testPrice = new Whiskey("Crown Royal Canadian",0,580.00f); testPrice.setPrice(expected); //then Assertions.assertEquals(expected,testPrice.getPrice()); From 27eedc5b0a2b6bb4d6a48a3de4f541958846ab7b Mon Sep 17 00:00:00 2001 From: Dikshasharmaa Date: Sat, 6 Apr 2024 13:23:51 -0400 Subject: [PATCH 06/15] Service and it's test --- src/main/java/Models/Sneakers.java | 21 ++++++------ src/main/java/Models/Whiskey.java | 18 +++++++--- src/main/java/Services/SneakersService.java | 13 ++++--- src/main/java/Services/WhiskeyService.java | 16 +++++++++ src/test/java/Models/SneakerTest.java | 22 ++++++------ src/test/java/Models/WhiskeyTest.java | 10 +++--- .../java/Services/SneakerServiceTest.java | 34 +++++++++++++++++++ .../java/Services/WhiskeyServiceTest.java | 26 ++++++++++++++ 8 files changed, 127 insertions(+), 33 deletions(-) diff --git a/src/main/java/Models/Sneakers.java b/src/main/java/Models/Sneakers.java index d9ffea3..8ea3ce8 100644 --- a/src/main/java/Models/Sneakers.java +++ b/src/main/java/Models/Sneakers.java @@ -1,7 +1,7 @@ package Models; public class Sneakers { - private int id; + private Integer id; private String name; private String brand; private String sport; @@ -9,21 +9,22 @@ public class Sneakers { private int quantity; private float price; - public Sneakers(int id, String name, String brand, String sport, + public Sneakers(Integer id, String name, String brand, String sport,float size, int quantity, float price) { - id = 6; - name = " "; - brand= " "; - sport = " "; - quantity = 10; - price = 80.00f; + this.id = id; + this.name = name; + this.brand= brand; + this.sport = sport; + this.size = size; + this.quantity = quantity; + this.price = price; } - public int getId() { + public Integer getId() { return id; } - public void setId(int id) { + public void setId(Integer id) { this.id = id; } diff --git a/src/main/java/Models/Whiskey.java b/src/main/java/Models/Whiskey.java index 8a1ea7a..43ab711 100644 --- a/src/main/java/Models/Whiskey.java +++ b/src/main/java/Models/Whiskey.java @@ -1,14 +1,16 @@ package Models; public class Whiskey { + private int id; private int quantity; private float price; private String brand; - public Whiskey(String brand, int quantity, float price) { - brand = " "; - quantity = 20; - price = 580.00f; + public Whiskey(int id, String brand, int quantity, float price) { + this.id = id; + this.brand = brand; + this.quantity = quantity; + this.price = price; } public int getQuantity() { @@ -34,4 +36,12 @@ public String getBrand() { public void setBrand(String brand) { this.brand = brand; } + + public int getId() { + return id; + } + + public void setId(int id) { + this.id = id; + } } diff --git a/src/main/java/Services/SneakersService.java b/src/main/java/Services/SneakersService.java index 26c4f74..1e2c749 100644 --- a/src/main/java/Services/SneakersService.java +++ b/src/main/java/Services/SneakersService.java @@ -7,14 +7,19 @@ public class SneakersService { - private static int nextId = 1; // (1) + private static int nextId = 1; private List inventory = new ArrayList<>(); + public Sneakers create(String name, String brand, String sport, + float size, int quantity, float price) { + + Sneakers createdSneaker = new Sneakers(nextId++, name, brand, sport, size, quantity, price); + inventory.add(createdSneaker); + return createdSneaker; + } + public List getInventory() { return inventory; } - public void add(Sneakers sneakers){ - inventory.add(sneakers); - } } diff --git a/src/main/java/Services/WhiskeyService.java b/src/main/java/Services/WhiskeyService.java index def3cb5..59633d0 100644 --- a/src/main/java/Services/WhiskeyService.java +++ b/src/main/java/Services/WhiskeyService.java @@ -1,4 +1,20 @@ package Services; +import Models.Whiskey; + +import java.util.ArrayList; +import java.util.List; public class WhiskeyService { + private static int nextId = 1; + private List WhiskyInventory = new ArrayList<>(); + + public Whiskey create(String brand, int quantity, float price) { + Whiskey createdWhiskey = new Whiskey(nextId++, brand, quantity, price); + WhiskyInventory.add(createdWhiskey); + return createdWhiskey; + } + + public List getWhiskyInventory() { + return WhiskyInventory; + } } diff --git a/src/test/java/Models/SneakerTest.java b/src/test/java/Models/SneakerTest.java index 8ea31e2..1cbda8b 100644 --- a/src/test/java/Models/SneakerTest.java +++ b/src/test/java/Models/SneakerTest.java @@ -6,20 +6,22 @@ public class SneakerTest { @Test public void ConstructorTest(){ - int expectedId = 6; + Integer expectedId = 6; String expectedName = "Stan Smith"; String expectedBrand = "Nike"; String expectedSport = "Tennis"; int expectedQuantity = 10; + float expectedSize = 8.5f; float expectedPrice = 80.00f; Sneakers testSneakers = new Sneakers(expectedId, expectedName, expectedBrand, - expectedSport, expectedQuantity,expectedPrice); + expectedSport, expectedSize, expectedQuantity,expectedPrice); Assertions.assertEquals(expectedId, testSneakers.getId()); Assertions.assertEquals(expectedName, testSneakers.getName()); Assertions.assertEquals(expectedBrand, testSneakers.getBrand()); Assertions.assertEquals(expectedSport, testSneakers.getSport()); + Assertions.assertEquals(expectedSize, testSneakers.getSize()); Assertions.assertEquals(expectedQuantity, testSneakers.getQuantity()); Assertions.assertEquals(expectedPrice, testSneakers.getPrice()); } @@ -28,7 +30,7 @@ public void SetNameTest(){ //Given String expected = "Stan Smith"; //when - Sneakers testName = new Sneakers(6,"Stan Smith","Nike","Tennis",10,80.00f); + Sneakers testName = new Sneakers(6,"Stan Smith","Nike","Tennis",8.0f,10,80.00f); testName.setName(expected); //then Assertions.assertEquals(expected,testName.getName()); @@ -39,7 +41,7 @@ public void SetIdTest(){ //Given int expected = 6; //when - Sneakers testId = new Sneakers(6,"Stan Smith","Nike","Tennis",10,80.00f); + Sneakers testId = new Sneakers(6,"Stan Smith","Nike","Tennis", 8.0f,10,80.00f); testId.setId(expected); //then Assertions.assertEquals(expected,testId.getId()); @@ -50,7 +52,7 @@ public void SetBrandTest(){ //Given String expected = "Nike"; //when - Sneakers testBrand = new Sneakers(6,"Stan Smith","Nike","Tennis",10,80.00f); + Sneakers testBrand = new Sneakers(6,"Stan Smith","Nike","Tennis",8.0f, 10,80.00f); testBrand.setBrand(expected); //then Assertions.assertEquals(expected,testBrand.getBrand()); @@ -61,7 +63,7 @@ public void SetSportTest(){ //Given String expected = "Soccer"; //when - Sneakers testSport = new Sneakers(6,"Stan Smith","Nike","Tennis",10,80.00f); + Sneakers testSport = new Sneakers(6,"Stan Smith","Nike","Tennis", 8.0f, 10,80.00f); testSport.setSport(expected); //then Assertions.assertEquals(expected,testSport.getSport()); @@ -71,7 +73,7 @@ public void SetSizeTest(){ //Given int expected = 9; //when - Sneakers testSize = new Sneakers(6,"Stan Smith","Nike","Tennis",10,80.00f); + Sneakers testSize = new Sneakers(6,"Stan Smith","Nike","Tennis", 8.0f,10,80.00f); testSize.setSize(expected); //then Assertions.assertEquals(expected,testSize.getSize()); @@ -81,7 +83,7 @@ public void SetQuantityTest(){ //Given int expected = 2; //when - Sneakers testQnty = new Sneakers(6,"Stan Smith","Nike","Tennis",10,80.00f); + Sneakers testQnty = new Sneakers(6,"Stan Smith","Nike","Tennis", 8.0f, 10,80.00f); testQnty.setQuantity(expected); //then Assertions.assertEquals(expected,testQnty.getQuantity()); @@ -92,12 +94,10 @@ public void SetPriceTest(){ //Given int expected = 200; //when - Sneakers testPrice = new Sneakers(6,"Stan Smith","Nike","Tennis",10,80.00f); + Sneakers testPrice = new Sneakers(6,"Stan Smith","Nike","Tennis", 8.0f, 10,80.00f); testPrice.setPrice(expected); //then Assertions.assertEquals(expected,testPrice.getPrice()); } - - } diff --git a/src/test/java/Models/WhiskeyTest.java b/src/test/java/Models/WhiskeyTest.java index 91eb90d..9206cf0 100644 --- a/src/test/java/Models/WhiskeyTest.java +++ b/src/test/java/Models/WhiskeyTest.java @@ -7,11 +7,13 @@ public class WhiskeyTest { @Test public void TestConstructor(){ + int expectedId = 1; String expectedBrand = "Crown Royal Canadian"; int expectedQuantity = 10; float expectedPrice = 580.00f; - Whiskey testWhiskey = new Whiskey(expectedBrand, expectedQuantity,expectedPrice); + Whiskey testWhiskey = new Whiskey(expectedId, expectedBrand, expectedQuantity,expectedPrice); + Assertions.assertEquals(expectedId, testWhiskey.getId()); Assertions.assertEquals(expectedBrand, testWhiskey.getBrand()); Assertions.assertEquals(expectedQuantity, testWhiskey.getQuantity()); Assertions.assertEquals(expectedPrice, testWhiskey.getPrice()); @@ -22,7 +24,7 @@ public void SetBrandTest(){ //Given String expected = "Crown Royal Canadian"; //when - Whiskey testBrand = new Whiskey("Crown Royal Canadian",0,0); + Whiskey testBrand = new Whiskey(1,"Crown Royal Canadian",0,0); testBrand.setBrand(expected); //then Assertions.assertEquals(expected,testBrand.getBrand()); @@ -33,7 +35,7 @@ public void SetQuantityTest(){ //Given int expected = 2; //when - Whiskey testQnty = new Whiskey("Crown Royal Canadian",20,0); + Whiskey testQnty = new Whiskey(1,"Crown Royal Canadian",20,0); testQnty.setQuantity(expected); //then Assertions.assertEquals(expected,testQnty.getQuantity()); @@ -43,7 +45,7 @@ public void SetPriceTest(){ //Given int expected = 200; //when - Whiskey testPrice = new Whiskey("Crown Royal Canadian",0,580.00f); + Whiskey testPrice = new Whiskey(1,"Crown Royal Canadian",0,580.00f); testPrice.setPrice(expected); //then Assertions.assertEquals(expected,testPrice.getPrice()); diff --git a/src/test/java/Services/SneakerServiceTest.java b/src/test/java/Services/SneakerServiceTest.java index 375bf11..5a0544f 100644 --- a/src/test/java/Services/SneakerServiceTest.java +++ b/src/test/java/Services/SneakerServiceTest.java @@ -1,4 +1,38 @@ package Services; +import Models.Sneakers; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + public class SneakerServiceTest { + + @Test + public void ServiceTest(){ + String expectedName = "Stan Smith"; + String expectedBrand = "Adidas"; + String expectedSport = "Tennis"; + float expectedSize = 10.5f; + int expectedQuantity = 10; + float expectedPrice = 80.00f; + + SneakersService sneakerService = new SneakersService(); + Sneakers testSneakers = sneakerService.create(expectedName, expectedBrand, + expectedSport, expectedSize, expectedQuantity, expectedPrice); + + int actualId = testSneakers.getId(); + String actualName = testSneakers.getName(); + String actualBrand = testSneakers.getBrand(); + String actualSport = testSneakers.getSport(); + float actualSize = testSneakers.getSize(); + int actualQty = testSneakers.getQuantity(); + float actualPrice = testSneakers.getPrice(); + + Assertions.assertEquals(Integer.class.getName(), new Integer(actualId).getClass().getName()); + Assertions.assertEquals(expectedName, actualName); + Assertions.assertEquals(expectedBrand, actualBrand); + Assertions.assertEquals(expectedSport, actualSport); + Assertions.assertEquals(expectedSize, actualSize); + Assertions.assertEquals(expectedQuantity, actualQty); + Assertions.assertEquals(expectedPrice, actualPrice); + } } diff --git a/src/test/java/Services/WhiskeyServiceTest.java b/src/test/java/Services/WhiskeyServiceTest.java index 6cc63b2..9281cb6 100644 --- a/src/test/java/Services/WhiskeyServiceTest.java +++ b/src/test/java/Services/WhiskeyServiceTest.java @@ -1,4 +1,30 @@ package Services; +import Models.Sneakers; +import Models.Whiskey; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + public class WhiskeyServiceTest { + + @Test + public void ServiceTest(){ + String expectedBrand = "Adidas"; + int expectedQuantity = 10; + float expectedPrice = 580.00f; + + WhiskeyService whiskeyService = new WhiskeyService(); + Whiskey testWhiskey = whiskeyService.create(expectedBrand, expectedQuantity, expectedPrice); + + + int actualId = testWhiskey.getId(); + String actualBrand = testWhiskey.getBrand(); + int actualQty = testWhiskey.getQuantity(); + float actualPrice = testWhiskey.getPrice(); + + Assertions.assertEquals(Integer.class.getName(), new Integer(actualId).getClass().getName()); + Assertions.assertEquals(expectedBrand, actualBrand); + Assertions.assertEquals(expectedQuantity, actualQty); + Assertions.assertEquals(expectedPrice, actualPrice); + } } From e111cfc92994a32f5bbc17f8ffd4d4da36012b0b Mon Sep 17 00:00:00 2001 From: Dikshasharmaa Date: Sat, 6 Apr 2024 13:52:30 -0400 Subject: [PATCH 07/15] Added new services --- src/main/java/Services/SneakersService.java | 25 +++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/src/main/java/Services/SneakersService.java b/src/main/java/Services/SneakersService.java index 1e2c749..a785927 100644 --- a/src/main/java/Services/SneakersService.java +++ b/src/main/java/Services/SneakersService.java @@ -22,4 +22,29 @@ public Sneakers create(String name, String brand, String sport, public List getInventory() { return inventory; } + public Sneakers findSneaker(int id){ + for(Sneakers s : inventory){ + if(s.getId().equals(id)){ + return s; + } + } + return null; + } + public Sneakers[] findAll() { + // should return a basic array copy of the ArrayList + Sneakers[] array = new Sneakers[inventory.size()]; + return inventory.toArray(array); + } + public boolean delete(int id) { + // should remove the object with this id from the ArrayList if exits and return true. + // Otherwise, return false + for (Sneakers s : inventory) { + if (s.getId().equals(id)) { + inventory.remove(id); + return true; + } + } + return false; + } + } From 51eaf5627f1a1629dec8253d47b7b56e6ffe1b95 Mon Sep 17 00:00:00 2001 From: Dikshasharmaa Date: Sat, 6 Apr 2024 13:58:16 -0400 Subject: [PATCH 08/15] Added services in other model as well --- src/main/java/Services/WhiskeyService.java | 26 ++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/src/main/java/Services/WhiskeyService.java b/src/main/java/Services/WhiskeyService.java index 59633d0..b1dea51 100644 --- a/src/main/java/Services/WhiskeyService.java +++ b/src/main/java/Services/WhiskeyService.java @@ -1,4 +1,5 @@ package Services; +import Models.Sneakers; import Models.Whiskey; import java.util.ArrayList; @@ -17,4 +18,29 @@ public Whiskey create(String brand, int quantity, float price) { public List getWhiskyInventory() { return WhiskyInventory; } + + public Whiskey findWhiskey(int id){ + for(Whiskey w : WhiskyInventory){ + if(w.getId() == id){ + return w; + } + } + return null; + } + public Whiskey[] findAll() { + // should return a basic array copy of the ArrayList + Whiskey[] array = new Whiskey[WhiskyInventory.size()]; + return WhiskyInventory.toArray(array); + } + public boolean delete(int id) { + // should remove the object with this id from the ArrayList if exits and return true. + // Otherwise, return false + for (Whiskey w : WhiskyInventory) { + if (w.getId() == id) { + WhiskyInventory.remove(id); + return true; + } + } + return false; + } } From cebea23ac561bb0d9071e1cda07c6f32da35d8ca Mon Sep 17 00:00:00 2001 From: Dikshasharmaa Date: Sat, 6 Apr 2024 16:57:15 -0400 Subject: [PATCH 09/15] Added main menu --- src/main/java/io/Application.java | 19 +++++++++++++++++++ src/main/java/io/Console.java | 23 +++++++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 src/main/java/io/Application.java create mode 100644 src/main/java/io/Console.java diff --git a/src/main/java/io/Application.java b/src/main/java/io/Application.java new file mode 100644 index 0000000..2303ec1 --- /dev/null +++ b/src/main/java/io/Application.java @@ -0,0 +1,19 @@ +package io; + +import Services.SneakersService; +import Services.WhiskeyService; + +public class Application { + private SneakersService sneakerService = new SneakersService(); + private WhiskeyService whiskeyService = new WhiskeyService(); + public static void main(String args[]){ + Application application = new Application(); + application.init(); + } + + private void init() { + Console.printWelcome(); + Console.displayMainMenu(); + } + +} diff --git a/src/main/java/io/Console.java b/src/main/java/io/Console.java new file mode 100644 index 0000000..b38d5ca --- /dev/null +++ b/src/main/java/io/Console.java @@ -0,0 +1,23 @@ +package io; + +public class Console { + public static void printWelcome(){ + System.out.println("" + + "**************************************************\n" + + "*** Welcome ***\n" + + "*** to ***\n" + + "*** Diksha's Inventory ***\n" + + "**************************************************\n"); + } + public static void displayMainMenu(){ + System.out.println("Main Menu\n Choose between 1-6 \n"+"1. Create products to be added to inventory\n" + + "2. Read from existing products\n" + + "3. Update products\n" + + "4. Delete products\n" + + "5. Get different reports about products\n" + + "6. Exit the program"); + + } + + +} From 087701b7dc29525f18d4fa558c2f01c4a19c7371 Mon Sep 17 00:00:00 2001 From: Dikshasharmaa Date: Sat, 6 Apr 2024 22:16:43 -0400 Subject: [PATCH 10/15] Create,Update,Read products --- src/main/java/Models/Sneakers.java | 9 +- src/main/java/Models/Whiskey.java | 4 + src/main/java/io/Application.java | 24 +++- src/main/java/io/Console.java | 200 +++++++++++++++++++++++++++++ 4 files changed, 234 insertions(+), 3 deletions(-) diff --git a/src/main/java/Models/Sneakers.java b/src/main/java/Models/Sneakers.java index 8ea3ce8..1368b57 100644 --- a/src/main/java/Models/Sneakers.java +++ b/src/main/java/Models/Sneakers.java @@ -9,7 +9,7 @@ public class Sneakers { private int quantity; private float price; - public Sneakers(Integer id, String name, String brand, String sport,float size, + public Sneakers(Integer id, String name, String brand, String sport, float size, int quantity, float price) { this.id = id; this.name = name; @@ -75,4 +75,11 @@ public float getPrice() { public void setPrice(float price) { this.price = price; } + @Override + public String toString(){ + return "Id: "+this.id + ", Name: "+ this.name +", Brand: "+this.brand +", Sport: "+ this.sport +", Size: "+ this.size+ + ", Quantity: "+ this.quantity+ ", Price: "+ this.price; + } } + + diff --git a/src/main/java/Models/Whiskey.java b/src/main/java/Models/Whiskey.java index 43ab711..8591739 100644 --- a/src/main/java/Models/Whiskey.java +++ b/src/main/java/Models/Whiskey.java @@ -44,4 +44,8 @@ public int getId() { public void setId(int id) { this.id = id; } + @Override + public String toString(){ + return "Id: "+this.id +", Brand: "+this.brand + ", Quantity: "+ this.quantity+ ", Price: "+ this.price; + } } diff --git a/src/main/java/io/Application.java b/src/main/java/io/Application.java index 2303ec1..e678ad8 100644 --- a/src/main/java/io/Application.java +++ b/src/main/java/io/Application.java @@ -3,6 +3,8 @@ import Services.SneakersService; import Services.WhiskeyService; +import java.util.Scanner; + public class Application { private SneakersService sneakerService = new SneakersService(); private WhiskeyService whiskeyService = new WhiskeyService(); @@ -13,7 +15,25 @@ public static void main(String args[]){ private void init() { Console.printWelcome(); - Console.displayMainMenu(); + while(true){ + Console.displayMainMenu(); + String action = Console.getActionFromUser(); + switch (action){ + case "Create": + Console.createProduct(sneakerService, whiskeyService); + break; + case "Read": + Console.readProduct(sneakerService, whiskeyService); + break; + case "Update": + Console.updateProduct(sneakerService, whiskeyService); + + + } + } + + } + + } -} diff --git a/src/main/java/io/Console.java b/src/main/java/io/Console.java index b38d5ca..da47796 100644 --- a/src/main/java/io/Console.java +++ b/src/main/java/io/Console.java @@ -1,5 +1,12 @@ package io; +import Models.Sneakers; +import Models.Whiskey; +import Services.SneakersService; +import Services.WhiskeyService; + +import java.util.Scanner; + public class Console { public static void printWelcome(){ System.out.println("" + @@ -18,6 +25,199 @@ public static void displayMainMenu(){ "6. Exit the program"); } + public static String getActionFromUser() { + while (true) { + Scanner sc = new Scanner(System.in); + int userInput = sc.nextInt(); + + switch (userInput) { + case 1: + return "Create"; + case 2: + return "Read"; + case 3: + return "Update"; + case 4: + return "Delete"; + case 5: + return "Reports"; + case 6: + System.exit(0); + default: + System.out.println("Try Again\n"); + displayMainMenu(); + break; + + } + } + } + + + public static void createSneaker(SneakersService ss){ + Scanner sc = new Scanner(System.in); + System.out.println("Enter name:"); + String name = sc.next(); + System.out.println("Enter brand:"); + String brand = sc.next(); + System.out.println("Enter sport:"); + String sport = sc.next(); + System.out.println("Enter size:"); + float size = sc.nextFloat(); + System.out.println("Enter quantity:"); + int quantity = sc.nextInt(); + System.out.println("Enter price:"); + float price = sc.nextFloat(); + ss.create(name, brand, sport, size, quantity, price); + + } + public static void updateSneaker(Sneakers s){ + Scanner sc = new Scanner(System.in); + System.out.println("Enter name:"); + String name = sc.next(); + if(name!=null){ + s.setName(name); + } + System.out.println("Enter brand:"); + String brand = sc.next(); + if(brand!=null){ + s.setBrand(brand); + } + System.out.println("Enter sport:"); + String sport = sc.next(); + if(sport!=null){ + s.setSport(sport); + } + System.out.println("Enter size:"); + float size = sc.nextFloat(); + s.setSize(size); + System.out.println("Enter quantity:"); + int quantity = sc.nextInt(); + s.setQuantity(quantity); + System.out.println("Enter price:"); + float price = sc.nextFloat(); + s.setPrice(price); + } + + + public static void createWhiskey(WhiskeyService ws){ + Scanner sc = new Scanner(System.in); + System.out.println("Enter brand:"); + String brand = sc.next(); + System.out.println("Enter quantity:"); + int quantity = sc.nextInt(); + System.out.println("Enter price:"); + float price = sc.nextFloat(); + ws.create(brand, quantity, price); + + } + public static void createProduct(SneakersService ss, WhiskeyService ws){ + while (true) { + System.out.println("Choose product you want to add by writing 1 or 2 \n"+ + "1. Sneakers\n2. Whiskey"); + Scanner sc = new Scanner(System.in); + int userInput = sc.nextInt(); + + switch (userInput) { + case 1: + createSneaker(ss); + return; + case 2: + createWhiskey(ws); + return; + default: + System.out.println("Try Again\n"); + displayMainMenu(); + break; + + } + } + } + + + public static void readProduct(SneakersService ss, WhiskeyService ws) { + while (true) { + System.out.println("Choose product you want to read by writing 1 or 2 \n"+ + "1. Sneakers\n2. Whiskey"); + Scanner sc = new Scanner(System.in); + int userInput = sc.nextInt(); + + switch (userInput) { + case 1: + readSneaker(ss); + return; + case 2: + readWhiskey(ws); + return; + default: + System.out.println("Try Again\n"); + displayMainMenu(); + break; + + } + } + } + + private static void readWhiskey(WhiskeyService ws) { + System.out.println(); + for (Whiskey whiskey : ws.getWhiskyInventory()) { + System.out.println(whiskey); + } + System.out.println(); + } + + private static void readSneaker(SneakersService ss) { + for (Sneakers sneakers : ss.getInventory()) { + System.out.println(sneakers.toString()); + } + System.out.println(); + } + public static void updateProduct(SneakersService ss, WhiskeyService ws) { + while (true) { + System.out.println("Choose product you want to read by writing 1 or 2 \n"+ + "1. Sneakers\n2. Whiskey"); + Scanner sc = new Scanner(System.in); + int userInput = sc.nextInt(); + + switch (userInput) { + case 1: + readSneaker(ss); + System.out.println("Choose id you want to update"); + int productId = sc.nextInt(); + Sneakers sneaker = ss.findSneaker(productId); + updateSneaker(sneaker); + return; + case 2: + readWhiskey(ws); + System.out.println("Choose id you want to update"); + int productId1 = sc.nextInt(); + Whiskey whiskey = ws.findWhiskey(productId1); + updateWhiskey(whiskey); + return; + default: + System.out.println("Try Again\n"); + displayMainMenu(); + break; + + } + } + } + + private static void updateWhiskey(Whiskey w) { + Scanner sc = new Scanner(System.in); + System.out.println("Enter brand:"); + String brand = sc.next(); + if(brand!=null){ + w.setBrand(brand); + } + System.out.println("Enter quantity:"); + int quantity = sc.nextInt(); + w.setQuantity(quantity); + + System.out.println("Enter price:"); + float price = sc.nextFloat(); + w.setPrice(price); + + } } From 0cd4c1155d3385dc80043176a907766680823403 Mon Sep 17 00:00:00 2001 From: Dikshasharmaa Date: Sat, 6 Apr 2024 22:54:52 -0400 Subject: [PATCH 11/15] Part3 down --- src/main/java/Services/SneakersService.java | 6 +- src/main/java/Services/WhiskeyService.java | 6 +- src/main/java/io/Application.java | 11 +++- src/main/java/io/Console.java | 64 ++++++++++++++++++++- 4 files changed, 78 insertions(+), 9 deletions(-) diff --git a/src/main/java/Services/SneakersService.java b/src/main/java/Services/SneakersService.java index a785927..1a38b84 100644 --- a/src/main/java/Services/SneakersService.java +++ b/src/main/java/Services/SneakersService.java @@ -38,9 +38,9 @@ public Sneakers[] findAll() { public boolean delete(int id) { // should remove the object with this id from the ArrayList if exits and return true. // Otherwise, return false - for (Sneakers s : inventory) { - if (s.getId().equals(id)) { - inventory.remove(id); + for (int i =0;i Date: Sun, 7 Apr 2024 01:28:06 -0400 Subject: [PATCH 12/15] Csv files --- Sneakers.csv | 2 + Whiskey.csv | 3 ++ src/main/java/Models/Whiskey.java | 1 + src/main/java/Services/SneakersService.java | 55 +++++++++++++++++++++ src/main/java/Services/WhiskeyService.java | 49 ++++++++++++++++++ src/main/java/Utils/CSVUtils.java | 26 ++++++++++ src/main/java/io/Application.java | 18 ++++++- src/main/java/io/Console.java | 26 ++++++---- src/test/java/Models/WhiskeyTest.java | 8 +++ 9 files changed, 176 insertions(+), 12 deletions(-) create mode 100644 Sneakers.csv create mode 100644 Whiskey.csv create mode 100644 src/main/java/Utils/CSVUtils.java diff --git a/Sneakers.csv b/Sneakers.csv new file mode 100644 index 0000000..c5c50b0 --- /dev/null +++ b/Sneakers.csv @@ -0,0 +1,2 @@ +2 +1,Ch123,nike,soccer,8.0,5,34.0 diff --git a/Whiskey.csv b/Whiskey.csv new file mode 100644 index 0000000..61a0fb3 --- /dev/null +++ b/Whiskey.csv @@ -0,0 +1,3 @@ +3 +1,Black label,2,345.0 +2,jack,5,657.0 diff --git a/src/main/java/Models/Whiskey.java b/src/main/java/Models/Whiskey.java index 8591739..2842ab1 100644 --- a/src/main/java/Models/Whiskey.java +++ b/src/main/java/Models/Whiskey.java @@ -48,4 +48,5 @@ public void setId(int id) { public String toString(){ return "Id: "+this.id +", Brand: "+this.brand + ", Quantity: "+ this.quantity+ ", Price: "+ this.price; } + } diff --git a/src/main/java/Services/SneakersService.java b/src/main/java/Services/SneakersService.java index 1a38b84..38cd745 100644 --- a/src/main/java/Services/SneakersService.java +++ b/src/main/java/Services/SneakersService.java @@ -1,8 +1,14 @@ package Services; import Models.Sneakers; +import Utils.CSVUtils; +import java.io.BufferedReader; +import java.io.FileReader; +import java.io.FileWriter; +import java.io.IOException; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; public class SneakersService { @@ -46,5 +52,54 @@ public boolean delete(int id) { } return false; } + public void saveData() throws IOException { + String csvFile = "/Users/diksha/Desktop/projects-2/Product-Inventory-Lab/Sneakers.csv"; + FileWriter writer = new FileWriter(csvFile); + + CSVUtils.writeLine(writer, new ArrayList(Arrays.asList(String.valueOf(nextId)))); + + for (Sneakers s : inventory) { + List list = new ArrayList<>(); + list.add(String.valueOf(s.getId())); + list.add(s.getName()); + list.add(s.getBrand()); + list.add(s.getSport()); + list.add(String.valueOf(s.getSize())); + list.add(String.valueOf(s.getQuantity())); + list.add(String.valueOf(s.getPrice())); + + CSVUtils.writeLine(writer, list); + } + + writer.flush(); + writer.close(); + } + public void loadData(){ + String csvFile = "/Users/diksha/Desktop/projects-2/Product-Inventory-Lab/Sneakers.csv"; + String line = ""; + String csvSplitBy = ","; + + try (BufferedReader br = new BufferedReader(new FileReader(csvFile))) { + nextId = Integer.parseInt(br.readLine()); + + while ((line = br.readLine()) != null) { + // split line with comma + String[] beer = line.split(csvSplitBy); + + int id = Integer.parseInt(beer[0]); + String name = beer[1]; + String brand = beer[2]; + String sport = beer[3]; + float size = Float.parseFloat(beer[4]); + int quantity = Integer.parseInt(beer[5]); + float price = Float.parseFloat(beer[6]); + + inventory.add(new Sneakers(id, name, brand, sport, size, quantity, price)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + } diff --git a/src/main/java/Services/WhiskeyService.java b/src/main/java/Services/WhiskeyService.java index fdf77b8..73cec5d 100644 --- a/src/main/java/Services/WhiskeyService.java +++ b/src/main/java/Services/WhiskeyService.java @@ -1,8 +1,14 @@ package Services; import Models.Sneakers; import Models.Whiskey; +import Utils.CSVUtils; +import java.io.BufferedReader; +import java.io.FileReader; +import java.io.FileWriter; +import java.io.IOException; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; public class WhiskeyService { @@ -43,4 +49,47 @@ public boolean delete(int id) { } return false; } + public void saveData() throws IOException { + String csvFile = "/Users/diksha/Desktop/projects-2/Product-Inventory-Lab/Whiskey.csv"; + FileWriter writer = new FileWriter(csvFile); + + CSVUtils.writeLine(writer, new ArrayList(Arrays.asList(String.valueOf(nextId)))); + + for (Whiskey w : WhiskyInventory) { + List list = new ArrayList<>(); + list.add(String.valueOf(w.getId())); + list.add(w.getBrand()); + list.add(String.valueOf(w.getQuantity())); + list.add(String.valueOf(w.getPrice())); + + CSVUtils.writeLine(writer, list); + } + + writer.flush(); + writer.close(); + } + + public void loadData(){ + String csvFile = "/Users/diksha/Desktop/projects-2/Product-Inventory-Lab/Whiskey.csv"; + String line = ""; + String csvSplitBy = ","; + + try (BufferedReader br = new BufferedReader(new FileReader(csvFile))) { + nextId = Integer.parseInt(br.readLine()); + + while ((line = br.readLine()) != null) { + // split line with comma + String[] beer = line.split(csvSplitBy); + + int id = Integer.parseInt(beer[0]); + String brand = beer[1]; + int quantity = Integer.parseInt(beer[2]); + float price = Float.parseFloat(beer[3]); + + WhiskyInventory.add(new Whiskey(id, brand, quantity, price)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } } diff --git a/src/main/java/Utils/CSVUtils.java b/src/main/java/Utils/CSVUtils.java new file mode 100644 index 0000000..d68dac0 --- /dev/null +++ b/src/main/java/Utils/CSVUtils.java @@ -0,0 +1,26 @@ +package Utils; + +import java.io.IOException; +import java.io.Writer; +import java.util.List; + +public class CSVUtils { + private static final char DEFAULT_SEPARATOR = ','; // (1) + + public static void writeLine(Writer w, List values) throws IOException { + boolean first = true; + + StringBuilder sb = new StringBuilder(); + + for (String value : values) { + if (!first) { + sb.append(DEFAULT_SEPARATOR); + } + sb.append(value); + first = false; + } + sb.append("\n"); + + w.append(sb.toString()); + } +} diff --git a/src/main/java/io/Application.java b/src/main/java/io/Application.java index 5cb4cd6..252b7ec 100644 --- a/src/main/java/io/Application.java +++ b/src/main/java/io/Application.java @@ -3,6 +3,7 @@ import Services.SneakersService; import Services.WhiskeyService; +import java.io.IOException; import java.util.Scanner; public class Application { @@ -10,10 +11,14 @@ public class Application { private WhiskeyService whiskeyService = new WhiskeyService(); public static void main(String args[]){ Application application = new Application(); - application.init(); + try { + application.init(); + } catch (IOException e) { + throw new RuntimeException(e); + } } - private void init() { + private void init() throws IOException { Console.printWelcome(); while(true){ Console.displayMainMenu(); @@ -33,6 +38,15 @@ private void init() { break; case "Reports" : Console.getTotalInventory(sneakerService,whiskeyService); + break; + case "Save" : + whiskeyService.saveData(); + sneakerService.saveData(); + break; + case "Load" : + sneakerService.loadData(); + whiskeyService.loadData(); + break; default: System.out.println("Wrong Input"); break; diff --git a/src/main/java/io/Console.java b/src/main/java/io/Console.java index a560b73..2d8b764 100644 --- a/src/main/java/io/Console.java +++ b/src/main/java/io/Console.java @@ -17,12 +17,14 @@ public static void printWelcome(){ "**************************************************\n"); } public static void displayMainMenu(){ - System.out.println("Main Menu\n Choose between 1-6 \n"+"1. Create products to be added to inventory\n" + + System.out.println("Main Menu\n Choose between 1-8 \n"+"1. Create products to be added to inventory\n" + "2. Read from existing products\n" + "3. Update products\n" + "4. Delete products\n" + "5. Get different reports about products\n" + - "6. Exit the program"); + "6. Save Data\n"+ + "7. Load Data\n"+ + "8. Exit the program"); } public static String getActionFromUser() { @@ -42,6 +44,10 @@ public static String getActionFromUser() { case 5: return "Reports"; case 6: + return "Save"; + case 7: + return "Load"; + case 8: System.exit(0); default: System.out.println("Try Again\n"); @@ -56,11 +62,11 @@ public static String getActionFromUser() { public static void createSneaker(SneakersService ss){ Scanner sc = new Scanner(System.in); System.out.println("Enter name:"); - String name = sc.next(); + String name = sc.nextLine(); System.out.println("Enter brand:"); - String brand = sc.next(); + String brand = sc.nextLine(); System.out.println("Enter sport:"); - String sport = sc.next(); + String sport = sc.nextLine(); System.out.println("Enter size:"); float size = sc.nextFloat(); System.out.println("Enter quantity:"); @@ -73,17 +79,17 @@ public static void createSneaker(SneakersService ss){ public static void updateSneaker(Sneakers s){ Scanner sc = new Scanner(System.in); System.out.println("Enter name:"); - String name = sc.next(); + String name = sc.nextLine(); if(name!=null){ s.setName(name); } System.out.println("Enter brand:"); - String brand = sc.next(); + String brand = sc.nextLine(); if(brand!=null){ s.setBrand(brand); } System.out.println("Enter sport:"); - String sport = sc.next(); + String sport = sc.nextLine(); if(sport!=null){ s.setSport(sport); } @@ -104,7 +110,7 @@ public static void updateSneaker(Sneakers s){ public static void createWhiskey(WhiskeyService ws){ Scanner sc = new Scanner(System.in); System.out.println("Enter brand:"); - String brand = sc.next(); + String brand = sc.nextLine(); System.out.println("Enter quantity:"); int quantity = sc.nextInt(); System.out.println("Enter price:"); @@ -207,7 +213,7 @@ public static void updateProduct(SneakersService ss, WhiskeyService ws) { private static void updateWhiskey(Whiskey w) { Scanner sc = new Scanner(System.in); System.out.println("Enter brand:"); - String brand = sc.next(); + String brand = sc.nextLine(); if(brand!=null){ w.setBrand(brand); } diff --git a/src/test/java/Models/WhiskeyTest.java b/src/test/java/Models/WhiskeyTest.java index 9206cf0..bc98766 100644 --- a/src/test/java/Models/WhiskeyTest.java +++ b/src/test/java/Models/WhiskeyTest.java @@ -1,8 +1,15 @@ package Models; +import Utils.CSVUtils; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; +import java.io.FileWriter; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + public class WhiskeyTest { @Test @@ -51,4 +58,5 @@ public void SetPriceTest(){ Assertions.assertEquals(expected,testPrice.getPrice()); } + } From 03e8984a4de43b7ca7b156b672c2b6f20329dc6e Mon Sep 17 00:00:00 2001 From: Dikshasharmaa Date: Sun, 7 Apr 2024 15:26:01 -0400 Subject: [PATCH 13/15] Almost done just load data need modifications --- Sneakers.json | 9 ++ Whiskey.csv | 5 +- Whiskey.json | 6 ++ pom.xml | 6 +- src/main/java/Services/SneakersService.java | 103 +++++++++++--------- src/main/java/Services/WhiskeyService.java | 96 ++++++++++-------- 6 files changed, 131 insertions(+), 94 deletions(-) create mode 100644 Sneakers.json create mode 100644 Whiskey.json diff --git a/Sneakers.json b/Sneakers.json new file mode 100644 index 0000000..55f324a --- /dev/null +++ b/Sneakers.json @@ -0,0 +1,9 @@ +[ { + "id" : 1, + "name" : "cherry", + "brand" : "nike", + "sport" : "soccer", + "size" : 5.0, + "quantity" : 56, + "price" : 543.0 +} ] \ No newline at end of file diff --git a/Whiskey.csv b/Whiskey.csv index 61a0fb3..be4daed 100644 --- a/Whiskey.csv +++ b/Whiskey.csv @@ -1,3 +1,2 @@ -3 -1,Black label,2,345.0 -2,jack,5,657.0 +2 +1,cdh,23,456.0 diff --git a/Whiskey.json b/Whiskey.json new file mode 100644 index 0000000..a3b113d --- /dev/null +++ b/Whiskey.json @@ -0,0 +1,6 @@ +[ { + "id" : 1, + "quantity" : 3, + "price" : 45.0, + "brand" : "jack" +} ] \ No newline at end of file diff --git a/pom.xml b/pom.xml index 3a368b3..677f19b 100644 --- a/pom.xml +++ b/pom.xml @@ -20,8 +20,12 @@ 5.4.2 test + + com.fasterxml.jackson.core + jackson-databind + 2.16.2 + - diff --git a/src/main/java/Services/SneakersService.java b/src/main/java/Services/SneakersService.java index 38cd745..56b0db8 100644 --- a/src/main/java/Services/SneakersService.java +++ b/src/main/java/Services/SneakersService.java @@ -2,11 +2,12 @@ import Models.Sneakers; import Utils.CSVUtils; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.core.util.DefaultPrettyPrinter; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.ObjectWriter; -import java.io.BufferedReader; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; +import java.io.*; import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -53,52 +54,58 @@ public boolean delete(int id) { return false; } public void saveData() throws IOException { - String csvFile = "/Users/diksha/Desktop/projects-2/Product-Inventory-Lab/Sneakers.csv"; - FileWriter writer = new FileWriter(csvFile); - - CSVUtils.writeLine(writer, new ArrayList(Arrays.asList(String.valueOf(nextId)))); - - for (Sneakers s : inventory) { - List list = new ArrayList<>(); - list.add(String.valueOf(s.getId())); - list.add(s.getName()); - list.add(s.getBrand()); - list.add(s.getSport()); - list.add(String.valueOf(s.getSize())); - list.add(String.valueOf(s.getQuantity())); - list.add(String.valueOf(s.getPrice())); - - CSVUtils.writeLine(writer, list); - } - - writer.flush(); - writer.close(); + String jsonFile = "/Users/diksha/Desktop/projects-2/Product-Inventory-Lab/Sneakers.json"; + //FileWriter writer = new FileWriter(csvFile); + ObjectMapper mapper = new ObjectMapper(); + ObjectWriter writer = mapper.writer(new DefaultPrettyPrinter()); + writer.writeValue(new File(jsonFile), inventory); + +// CSVUtils.writeLine(writer, new ArrayList(Arrays.asList(String.valueOf(nextId)))); +// +// for (Sneakers s : inventory) { +// List list = new ArrayList<>(); +// list.add(String.valueOf(s.getId())); +// list.add(s.getName()); +// list.add(s.getBrand()); +// list.add(s.getSport()); +// list.add(String.valueOf(s.getSize())); +// list.add(String.valueOf(s.getQuantity())); +// list.add(String.valueOf(s.getPrice())); +// +// CSVUtils.writeLine(writer, list); +// } +// +// writer.flush(); +// writer.close(); } - public void loadData(){ - String csvFile = "/Users/diksha/Desktop/projects-2/Product-Inventory-Lab/Sneakers.csv"; - String line = ""; - String csvSplitBy = ","; + public void loadData() throws IOException { + String jsonFile = "/Users/diksha/Desktop/projects-2/Product-Inventory-Lab/Sneakers.json"; + ObjectMapper objectMapper = new ObjectMapper(); + this.inventory = objectMapper.readValue(new File(jsonFile), new TypeReference>(){}); +// String line = ""; +// String csvSplitBy = ","; +// +// try (BufferedReader br = new BufferedReader(new FileReader(csvFile))) { +// nextId = Integer.parseInt(br.readLine()); +// +// while ((line = br.readLine()) != null) { +// // split line with comma +// String[] beer = line.split(csvSplitBy); +// +// int id = Integer.parseInt(beer[0]); +// String name = beer[1]; +// String brand = beer[2]; +// String sport = beer[3]; +// float size = Float.parseFloat(beer[4]); +// int quantity = Integer.parseInt(beer[5]); +// float price = Float.parseFloat(beer[6]); +// +// inventory.add(new Sneakers(id, name, brand, sport, size, quantity, price)); +// } +// } catch (IOException e) { +// e.printStackTrace(); +// } - try (BufferedReader br = new BufferedReader(new FileReader(csvFile))) { - nextId = Integer.parseInt(br.readLine()); - - while ((line = br.readLine()) != null) { - // split line with comma - String[] beer = line.split(csvSplitBy); - - int id = Integer.parseInt(beer[0]); - String name = beer[1]; - String brand = beer[2]; - String sport = beer[3]; - float size = Float.parseFloat(beer[4]); - int quantity = Integer.parseInt(beer[5]); - float price = Float.parseFloat(beer[6]); - - inventory.add(new Sneakers(id, name, brand, sport, size, quantity, price)); - } - } catch (IOException e) { - e.printStackTrace(); - } } diff --git a/src/main/java/Services/WhiskeyService.java b/src/main/java/Services/WhiskeyService.java index 73cec5d..b86c186 100644 --- a/src/main/java/Services/WhiskeyService.java +++ b/src/main/java/Services/WhiskeyService.java @@ -2,11 +2,12 @@ import Models.Sneakers; import Models.Whiskey; import Utils.CSVUtils; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.core.util.DefaultPrettyPrinter; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.ObjectWriter; -import java.io.BufferedReader; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; +import java.io.*; import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -50,46 +51,57 @@ public boolean delete(int id) { return false; } public void saveData() throws IOException { - String csvFile = "/Users/diksha/Desktop/projects-2/Product-Inventory-Lab/Whiskey.csv"; - FileWriter writer = new FileWriter(csvFile); - - CSVUtils.writeLine(writer, new ArrayList(Arrays.asList(String.valueOf(nextId)))); - - for (Whiskey w : WhiskyInventory) { - List list = new ArrayList<>(); - list.add(String.valueOf(w.getId())); - list.add(w.getBrand()); - list.add(String.valueOf(w.getQuantity())); - list.add(String.valueOf(w.getPrice())); - - CSVUtils.writeLine(writer, list); - } - - writer.flush(); - writer.close(); + String jsonFile = "/Users/diksha/Desktop/projects-2/Product-Inventory-Lab/Whiskey.json"; + //FileWriter writer = new FileWriter(csvFile); + ObjectMapper mapper = new ObjectMapper(); + ObjectWriter writer = mapper.writer(new DefaultPrettyPrinter()); + writer.writeValue(new File(jsonFile), WhiskyInventory); } +// String csvFile = "/Users/diksha/Desktop/projects-2/Product-Inventory-Lab/Whiskey.csv"; +// FileWriter writer = new FileWriter(csvFile); +// +// CSVUtils.writeLine(writer, new ArrayList(Arrays.asList(String.valueOf(nextId)))); +// +// for (Whiskey w : WhiskyInventory) { +// List list = new ArrayList<>(); +// list.add(String.valueOf(w.getId())); +// list.add(w.getBrand()); +// list.add(String.valueOf(w.getQuantity())); +// list.add(String.valueOf(w.getPrice())); +// +// CSVUtils.writeLine(writer, list); +// } +// +// writer.flush(); +// writer.close(); +// } - public void loadData(){ - String csvFile = "/Users/diksha/Desktop/projects-2/Product-Inventory-Lab/Whiskey.csv"; - String line = ""; - String csvSplitBy = ","; + public void loadData() throws IOException { + String jsonFile = "/Users/diksha/Desktop/projects-2/Product-Inventory-Lab/Whiskey.json"; + ObjectMapper objectMapper = new ObjectMapper(); + this.WhiskyInventory = objectMapper.readValue(new File(jsonFile), new TypeReference>(){}); - try (BufferedReader br = new BufferedReader(new FileReader(csvFile))) { - nextId = Integer.parseInt(br.readLine()); - - while ((line = br.readLine()) != null) { - // split line with comma - String[] beer = line.split(csvSplitBy); - - int id = Integer.parseInt(beer[0]); - String brand = beer[1]; - int quantity = Integer.parseInt(beer[2]); - float price = Float.parseFloat(beer[3]); - - WhiskyInventory.add(new Whiskey(id, brand, quantity, price)); - } - } catch (IOException e) { - e.printStackTrace(); - } } +// String csvFile = "/Users/diksha/Desktop/projects-2/Product-Inventory-Lab/Whiskey.csv"; +// String line = ""; +// String csvSplitBy = ","; +// +// try (BufferedReader br = new BufferedReader(new FileReader(csvFile))) { +// nextId = Integer.parseInt(br.readLine()); +// +// while ((line = br.readLine()) != null) { +// // split line with comma +// String[] beer = line.split(csvSplitBy); +// +// int id = Integer.parseInt(beer[0]); +// String brand = beer[1]; +// int quantity = Integer.parseInt(beer[2]); +// float price = Float.parseFloat(beer[3]); +// +// WhiskyInventory.add(new Whiskey(id, brand, quantity, price)); +// } +// } catch (IOException e) { +// e.printStackTrace(); +// } +// } } From 184b678b74b24089ead6bb72556c9d1dda82b27c Mon Sep 17 00:00:00 2001 From: Dikshasharmaa Date: Mon, 8 Apr 2024 21:58:38 -0400 Subject: [PATCH 14/15] Only load json is not working rest is Finished --- Sneakers.json | 12 ++++++------ Whiskey.json | 7 +------ 2 files changed, 7 insertions(+), 12 deletions(-) diff --git a/Sneakers.json b/Sneakers.json index 55f324a..d3d302a 100644 --- a/Sneakers.json +++ b/Sneakers.json @@ -1,9 +1,9 @@ [ { "id" : 1, - "name" : "cherry", - "brand" : "nike", - "sport" : "soccer", - "size" : 5.0, - "quantity" : 56, - "price" : 543.0 + "name" : "a", + "brand" : "b", + "sport" : "c", + "size" : 123.0, + "quantity" : 1234, + "price" : 1.0 } ] \ No newline at end of file diff --git a/Whiskey.json b/Whiskey.json index a3b113d..8878e54 100644 --- a/Whiskey.json +++ b/Whiskey.json @@ -1,6 +1 @@ -[ { - "id" : 1, - "quantity" : 3, - "price" : 45.0, - "brand" : "jack" -} ] \ No newline at end of file +[ ] \ No newline at end of file From 45dbe4d31dc6379ec789f70a21a9d22b83ff0f02 Mon Sep 17 00:00:00 2001 From: Dikshasharmaa Date: Fri, 12 Apr 2024 23:22:52 -0400 Subject: [PATCH 15/15] Finished --- Sneakers.json | 36 +++++++++++++++++---- Sneakers.txt | 1 + Whiskey.json | 17 +++++++++- Whiskey.txt | 1 + src/main/java/Models/Sneakers.java | 3 ++ src/main/java/Models/Whiskey.java | 3 ++ src/main/java/Services/SneakersService.java | 15 +++++++-- src/main/java/Services/WhiskeyService.java | 10 ++++++ 8 files changed, 77 insertions(+), 9 deletions(-) create mode 100644 Sneakers.txt create mode 100644 Whiskey.txt diff --git a/Sneakers.json b/Sneakers.json index d3d302a..fb08d5c 100644 --- a/Sneakers.json +++ b/Sneakers.json @@ -1,9 +1,33 @@ [ { "id" : 1, - "name" : "a", - "brand" : "b", - "sport" : "c", - "size" : 123.0, - "quantity" : 1234, - "price" : 1.0 + "name" : "gh12", + "brand" : "puma", + "sport" : "basketball", + "size" : 8.0, + "quantity" : 8, + "price" : 99.0 +}, { + "id" : 2, + "name" : "bgh12", + "brand" : "adidas", + "sport" : "soccer", + "size" : 8.0, + "quantity" : 6, + "price" : 78.0 +}, { + "id" : 3, + "name" : "cgy12", + "brand" : "nike", + "sport" : "fotball", + "size" : 7.0, + "quantity" : 8, + "price" : 98.0 +}, { + "id" : 4, + "name" : "hh32", + "brand" : "Sketchers", + "sport" : "tennis", + "size" : 7.0, + "quantity" : 5, + "price" : 45.0 } ] \ No newline at end of file diff --git a/Sneakers.txt b/Sneakers.txt new file mode 100644 index 0000000..261a1e0 --- /dev/null +++ b/Sneakers.txt @@ -0,0 +1 @@ +nextId : 5 \ No newline at end of file diff --git a/Whiskey.json b/Whiskey.json index 8878e54..fbd211b 100644 --- a/Whiskey.json +++ b/Whiskey.json @@ -1 +1,16 @@ -[ ] \ No newline at end of file +[ { + "id" : 1, + "quantity" : 5, + "price" : 56.0, + "brand" : "jack" +}, { + "id" : 2, + "quantity" : 6, + "price" : 87.0, + "brand" : "black" +}, { + "id" : 3, + "quantity" : 7, + "price" : 54.0, + "brand" : "abc" +} ] \ No newline at end of file diff --git a/Whiskey.txt b/Whiskey.txt new file mode 100644 index 0000000..a86e296 --- /dev/null +++ b/Whiskey.txt @@ -0,0 +1 @@ +nextId4 \ No newline at end of file diff --git a/src/main/java/Models/Sneakers.java b/src/main/java/Models/Sneakers.java index 1368b57..9877d61 100644 --- a/src/main/java/Models/Sneakers.java +++ b/src/main/java/Models/Sneakers.java @@ -19,6 +19,9 @@ public Sneakers(Integer id, String name, String brand, String sport, float size, this.quantity = quantity; this.price = price; + } + public Sneakers(){ + } public Integer getId() { return id; diff --git a/src/main/java/Models/Whiskey.java b/src/main/java/Models/Whiskey.java index 2842ab1..b805896 100644 --- a/src/main/java/Models/Whiskey.java +++ b/src/main/java/Models/Whiskey.java @@ -12,6 +12,9 @@ public Whiskey(int id, String brand, int quantity, float price) { this.quantity = quantity; this.price = price; } + public Whiskey(){ + + } public int getQuantity() { return quantity; diff --git a/src/main/java/Services/SneakersService.java b/src/main/java/Services/SneakersService.java index 56b0db8..4bc4079 100644 --- a/src/main/java/Services/SneakersService.java +++ b/src/main/java/Services/SneakersService.java @@ -54,11 +54,21 @@ public boolean delete(int id) { return false; } public void saveData() throws IOException { - String jsonFile = "/Users/diksha/Desktop/projects-2/Product-Inventory-Lab/Sneakers.json"; + //String jsonFile = "/Users/diksha/Desktop/projects-2/Product-Inventory-Lab/Sneakers.json"; //FileWriter writer = new FileWriter(csvFile); ObjectMapper mapper = new ObjectMapper(); ObjectWriter writer = mapper.writer(new DefaultPrettyPrinter()); - writer.writeValue(new File(jsonFile), inventory); + writer.writeValue(new File("/Users/diksha/Desktop/projects-2/Product-Inventory-Lab/Sneakers.json"), inventory); + try { + FileWriter myWriter = new FileWriter("Sneakers.txt"); + myWriter.write("nextId : "+ this.nextId); + myWriter.close(); + //System.out.println("Successfully wrote to the file."); + } catch (IOException e) { + System.out.println("An error occurred."); + e.printStackTrace(); + } + // CSVUtils.writeLine(writer, new ArrayList(Arrays.asList(String.valueOf(nextId)))); // @@ -82,6 +92,7 @@ public void loadData() throws IOException { String jsonFile = "/Users/diksha/Desktop/projects-2/Product-Inventory-Lab/Sneakers.json"; ObjectMapper objectMapper = new ObjectMapper(); this.inventory = objectMapper.readValue(new File(jsonFile), new TypeReference>(){}); + this.nextId = inventory.size()+1; // String line = ""; // String csvSplitBy = ","; // diff --git a/src/main/java/Services/WhiskeyService.java b/src/main/java/Services/WhiskeyService.java index b86c186..f9a3b3a 100644 --- a/src/main/java/Services/WhiskeyService.java +++ b/src/main/java/Services/WhiskeyService.java @@ -56,6 +56,15 @@ public void saveData() throws IOException { ObjectMapper mapper = new ObjectMapper(); ObjectWriter writer = mapper.writer(new DefaultPrettyPrinter()); writer.writeValue(new File(jsonFile), WhiskyInventory); + try { + FileWriter myWriter = new FileWriter("Whiskey.txt"); + myWriter.write("nextId : "+ this.nextId); + myWriter.close(); + //System.out.println("Successfully wrote to the file."); + } catch (IOException e) { + System.out.println("An error occurred."); + e.printStackTrace(); + } } // String csvFile = "/Users/diksha/Desktop/projects-2/Product-Inventory-Lab/Whiskey.csv"; // FileWriter writer = new FileWriter(csvFile); @@ -80,6 +89,7 @@ public void loadData() throws IOException { String jsonFile = "/Users/diksha/Desktop/projects-2/Product-Inventory-Lab/Whiskey.json"; ObjectMapper objectMapper = new ObjectMapper(); this.WhiskyInventory = objectMapper.readValue(new File(jsonFile), new TypeReference>(){}); + this.nextId = WhiskyInventory.size()+1; } // String csvFile = "/Users/diksha/Desktop/projects-2/Product-Inventory-Lab/Whiskey.csv";