From 036104db8963da2e32cb0c0955a244db71136ea1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Isabel=20Rom=C3=A1n?= Date: Wed, 28 Oct 2020 18:28:56 +0100 Subject: [PATCH 1/7] =?UTF-8?q?He=20a=C3=B1adido=20el=20fichero=20package-?= =?UTF-8?q?info=20y=20el=20.yml=20para=20integraci=C3=B3n=20continua=20en?= =?UTF-8?q?=20gitlab?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 25 +++++++++++++++++++++ src/main/java/shopManager/package-info.java | 8 +++++++ 2 files changed, 33 insertions(+) create mode 100644 .gitlab-ci.yml create mode 100644 src/main/java/shopManager/package-info.java diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..0a8d07f --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,25 @@ +# copiado del generado por github + +name: Java CI with Gradle + +on: + push: + branches: [ Desarrollo ] + pull_request: + branches: [ Desarrollo ] + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: 1.8 + - name: Grant execute permission for gradlew + run: chmod +x gradlew + - name: Build with Gradle + run: ./gradlew build diff --git a/src/main/java/shopManager/package-info.java b/src/main/java/shopManager/package-info.java new file mode 100644 index 0000000..3e8e3bf --- /dev/null +++ b/src/main/java/shopManager/package-info.java @@ -0,0 +1,8 @@ +package shopManager; + +/** + * Este paquete contiene las clases para los productos y el gestión del stock + * + * @author Isabel Román + * @version 0.0 + */ \ No newline at end of file From e05fa024066067321a6e3a61069c09c7bd353e2a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Isabel=20Rom=C3=A1n?= Date: Mon, 2 Nov 2020 19:49:42 +0100 Subject: [PATCH 2/7] Algunos arreglos tras pasar SonarLint. Falta investigar los problemas con finalize y clone --- .../MyProduct.java | 17 ++++--- .../MyStockManager.java | 49 ++++++++++--------- .../{shopManager => shopmanager}/Product.java | 2 +- .../StockManager.java | 5 +- .../package-info.java | 2 +- .../java/shopManager/MyStockManagerTest.java | 14 +++--- src/test/java/shopManager/ProductTest.java | 4 +- 7 files changed, 47 insertions(+), 46 deletions(-) rename src/main/java/{shopManager => shopmanager}/MyProduct.java (79%) rename src/main/java/{shopManager => shopmanager}/MyStockManager.java (64%) rename src/main/java/{shopManager => shopmanager}/Product.java (91%) rename src/main/java/{shopManager => shopmanager}/StockManager.java (92%) rename src/main/java/{shopManager => shopmanager}/package-info.java (82%) diff --git a/src/main/java/shopManager/MyProduct.java b/src/main/java/shopmanager/MyProduct.java similarity index 79% rename from src/main/java/shopManager/MyProduct.java rename to src/main/java/shopmanager/MyProduct.java index 3a7b995..a877ce8 100644 --- a/src/main/java/shopManager/MyProduct.java +++ b/src/main/java/shopmanager/MyProduct.java @@ -1,4 +1,4 @@ -package shopManager; +package shopmanager; import java.io.Serializable; @@ -25,23 +25,25 @@ public class MyProduct implements Product,Serializable{ private String id; private int number; - MyProduct(String id) { + public MyProduct(String id) { this.id=id; number=1; } - MyProduct(String id,int number) { + public MyProduct(String id,int number) { this.id=id; this.number=number; } @Override public void setId(String id) { - trazador.info("Estableciendo id a "+id); + String msg="Estableciendo id a "+id; + trazador.info(msg); this.id=id; } @Override - public String getId() { - trazador.info("Devolviendo id como "+id); + public String getId() { + String msg="Devolviendo el id como "+id; + trazador.info(msg); return this.id; } @Override @@ -65,7 +67,8 @@ public int oneLess(){ } else { trazador.info("El número de unidades del producto no se puede reducir porque es cero"); } - trazador.info(this.toString()); + String msg=toString(); + trazador.info(msg); return number; } diff --git a/src/main/java/shopManager/MyStockManager.java b/src/main/java/shopmanager/MyStockManager.java similarity index 64% rename from src/main/java/shopManager/MyStockManager.java rename to src/main/java/shopmanager/MyStockManager.java index 1e6b2ef..4d56832 100644 --- a/src/main/java/shopManager/MyStockManager.java +++ b/src/main/java/shopmanager/MyStockManager.java @@ -1,4 +1,4 @@ -package shopManager; +package shopmanager; import com.hazelcast.core.*; import com.hazelcast.config.*; @@ -14,8 +14,8 @@ public class MyStockManager implements StockManager{ private static Logger trazador=Logger.getLogger(MyStockManager.class.getName()); - private static StockManager my_instance; - private HazelcastInstance hz_instance; + private static StockManager myInstance; + private HazelcastInstance hzInstance; private Config cfg; //Mapa de productos que será compartido por todos los stockManager que se instancien private IMap mapProducts; @@ -25,67 +25,68 @@ public class MyStockManager implements StockManager{ private MyStockManager(){ cfg = new Config(); - HazelcastInstance hz_instance = Hazelcast.newHazelcastInstance(cfg); + hzInstance = Hazelcast.newHazelcastInstance(cfg); trazador.info("Acabo de crear una instancia hazelcast para el MyStockManager"); - mapProducts = hz_instance.getMap("products"); + mapProducts = hzInstance.getMap("products"); trazador.info("Se ha recuperado referencia al mapa products, si no se había usado se ha creado"); } /** + * @deprecated * @see * java.lang.Object * El compilador me avisa de que uso algo "deprecated" por eso añado la opción de compilación en gradle, para ver más detalle */ @Override + @Deprecated(since="0,0") protected void finalize() throws Throwable{ - trazador.info("Finalizando el MyStockManager, borra la instancia hazelcast y deja a null la instancia singleton"); - hz_instance.shutdown(); - my_instance=null; - hz_instance=null; - + trazador.info("Finalizando el MyStockManager, apaga la instancia hazelcast"); + hzInstance.shutdown(); } public static StockManager getInstance() { - if (my_instance==null){ - my_instance=new MyStockManager(); + if (myInstance==null){ + myInstance=new MyStockManager(); } - return my_instance; + return myInstance; } @Override public void addProduct(Product newProduct) { Product productTmp; - trazador.info("El tamaño del mapa al entrar es " + mapProducts.size()); + String msg="El tamaño del mapa al entrar es " + mapProducts.size(); + trazador.info(msg); if(mapProducts.containsKey(newProduct.getId())){ productTmp=searchProduct(newProduct.getId()); newProduct.setNumber(productTmp.getNumber()+newProduct.getNumber()); } mapProducts.put(newProduct.getId(), newProduct); - trazador.info("El mapa de tamaño " + mapProducts.size()+" incluye "+newProduct); + msg="El mapa de tamaño " + mapProducts.size()+" incluye "+newProduct; + trazador.info(msg); } @Override public Product searchProduct(String id) { Product product=null; + String msg; if(mapProducts.containsKey(id)){ product=mapProducts.get(id); - trazador.info("Hay "+ product); + msg="Hay "+ product; + trazador.info(msg); }else { - trazador.info("El "+product+" no está en el mapa"); + msg="El "+product+" no está en el mapa"; + trazador.info(msg); } return product; } /** + * @throws CloneNotSupportedException * @see * java.lang.Object * El método clone permite crear una instancia a partir de otra, lo que en una clase que siga el patrón singleton no se puede permitir */ @Override - public MyStockManager clone() { - try { - throw new CloneNotSupportedException(); - } catch (CloneNotSupportedException ex) { - System.out.println("No se puede clonar un objeto de la clase MyStockManager, sigue patrón singleton"); - } - return null; + public MyStockManager clone() throws CloneNotSupportedException { + trazador.warning("No se puede clonar un objeto de la clase MyStockManager, sigue patrón singleton"); + throw new CloneNotSupportedException(); } } diff --git a/src/main/java/shopManager/Product.java b/src/main/java/shopmanager/Product.java similarity index 91% rename from src/main/java/shopManager/Product.java rename to src/main/java/shopmanager/Product.java index 74ab7ff..0278cda 100644 --- a/src/main/java/shopManager/Product.java +++ b/src/main/java/shopmanager/Product.java @@ -1,4 +1,4 @@ -package shopManager; +package shopmanager; /** * * @author Isabel Román diff --git a/src/main/java/shopManager/StockManager.java b/src/main/java/shopmanager/StockManager.java similarity index 92% rename from src/main/java/shopManager/StockManager.java rename to src/main/java/shopmanager/StockManager.java index 6a4c539..e7bd435 100644 --- a/src/main/java/shopManager/StockManager.java +++ b/src/main/java/shopmanager/StockManager.java @@ -1,7 +1,4 @@ -/** - * - */ -package shopManager; +package shopmanager; /** * @author Isabel Román diff --git a/src/main/java/shopManager/package-info.java b/src/main/java/shopmanager/package-info.java similarity index 82% rename from src/main/java/shopManager/package-info.java rename to src/main/java/shopmanager/package-info.java index 3e8e3bf..492ecad 100644 --- a/src/main/java/shopManager/package-info.java +++ b/src/main/java/shopmanager/package-info.java @@ -1,4 +1,4 @@ -package shopManager; +package shopmanager; /** * Este paquete contiene las clases para los productos y el gestión del stock diff --git a/src/test/java/shopManager/MyStockManagerTest.java b/src/test/java/shopManager/MyStockManagerTest.java index 0ef911e..b0380af 100644 --- a/src/test/java/shopManager/MyStockManagerTest.java +++ b/src/test/java/shopManager/MyStockManagerTest.java @@ -8,10 +8,10 @@ import org.junit.Test; -import shopManager.MyProduct; -import shopManager.Product; -import shopManager.StockManager; -import shopManager.MyStockManager; +import shopmanager.MyProduct; +import shopmanager.MyStockManager; +import shopmanager.Product; +import shopmanager.StockManager; /** @@ -24,7 +24,7 @@ public class MyStockManagerTest { String underTestAsString; /** - * Test method for {@link shopManager.MyStockManager#getInstance()}. + * Test method for {@link shopmanager.MyStockManager#getInstance()}. */ @Test public void testGetInstance() { @@ -36,7 +36,7 @@ public void testGetInstance() { } /** - * Test method for {@link shopManager.MyStockManager#addProduct(shopManager.Product)}. + * Test method for {@link shopmanager.MyStockManager#addProduct(shopmanager.Product)}. */ @Test public void testAddProduct() { @@ -48,7 +48,7 @@ public void testAddProduct() { } /** - * Test method for {@link shopManager.MyStockManager#searchProduct(java.lang.String)}. + * Test method for {@link shopmanager.MyStockManager#searchProduct(java.lang.String)}. */ @Test public void testSearchProduct() { diff --git a/src/test/java/shopManager/ProductTest.java b/src/test/java/shopManager/ProductTest.java index 4d5f2d6..57a6ecb 100644 --- a/src/test/java/shopManager/ProductTest.java +++ b/src/test/java/shopManager/ProductTest.java @@ -9,8 +9,8 @@ import org.junit.Test; -import shopManager.MyProduct; -import shopManager.Product; +import shopmanager.MyProduct; +import shopmanager.Product; /** From 462f950f594b82b40e269ab9b6d9f592e3ed3374 Mon Sep 17 00:00:00 2001 From: Teacher Date: Fri, 6 Nov 2020 14:35:09 +0100 Subject: [PATCH 3/7] Delete .project --- .project | 23 ----------------------- 1 file changed, 23 deletions(-) delete mode 100644 .project diff --git a/.project b/.project deleted file mode 100644 index 5ce1659..0000000 --- a/.project +++ /dev/null @@ -1,23 +0,0 @@ - - - shopManager - Project shopManager created by Buildship. - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.eclipse.buildship.core.gradleprojectbuilder - - - - - - org.eclipse.jdt.core.javanature - org.eclipse.buildship.core.gradleprojectnature - - From de3317bcd2a59d938f60afc1e1300c2f6b5b741e Mon Sep 17 00:00:00 2001 From: LaboratorioIS Date: Fri, 6 Nov 2020 18:14:23 +0100 Subject: [PATCH 4/7] Vuelvo a poner el .project porque si no no va... --- .project | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 .project diff --git a/.project b/.project new file mode 100644 index 0000000..cb367fd --- /dev/null +++ b/.project @@ -0,0 +1,23 @@ + + + shopManager + Project shopManager created by Buildship. + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.buildship.core.gradleprojectbuilder + + + + + + org.eclipse.jdt.core.javanature + org.eclipse.buildship.core.gradleprojectnature + + From ec36f71a87f12500e1fba616232c593e70d3474b Mon Sep 17 00:00:00 2001 From: Guille Roche Date: Fri, 20 Nov 2020 21:42:18 +0100 Subject: [PATCH 5/7] mensaje de asentamiento Guillermo Roche --- README.txt | 4 +++- src/main/java/shopmanager/DEVELOPERS.TXT.txt | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) create mode 100644 src/main/java/shopmanager/DEVELOPERS.TXT.txt diff --git a/README.txt b/README.txt index 4d52cde..0aa3784 100644 --- a/README.txt +++ b/README.txt @@ -3,4 +3,6 @@ Caracter Librería shopManager para facilitar el desarrollo de aplicaciones de tienda virtual Usa gradle para controlar la construcción y dependencias Usa el sistema de trazado de java -Usa hazelcast para tener datos en memoria compartida del stock y de los pedidos \ No newline at end of file +Usa hazelcast para tener datos en memoria compartida del stock y de los pedidos + +Esta librería podrá ser usadas tanto por aplicaciones cliente como servior en el proceso de venta online. \ No newline at end of file diff --git a/src/main/java/shopmanager/DEVELOPERS.TXT.txt b/src/main/java/shopmanager/DEVELOPERS.TXT.txt new file mode 100644 index 0000000..28d5fc3 --- /dev/null +++ b/src/main/java/shopmanager/DEVELOPERS.TXT.txt @@ -0,0 +1 @@ +Guillermo Roche Arcas \ No newline at end of file From 4ba11089dc834ed2b17aed155d76598098e128ae Mon Sep 17 00:00:00 2001 From: Guille Roche Date: Fri, 20 Nov 2020 21:46:01 +0100 Subject: [PATCH 6/7] Revert "mensaje de asentamiento Guillermo Roche" This reverts commit ec36f71a87f12500e1fba616232c593e70d3474b. --- README.txt | 4 +--- src/main/java/shopmanager/DEVELOPERS.TXT.txt | 1 - 2 files changed, 1 insertion(+), 4 deletions(-) delete mode 100644 src/main/java/shopmanager/DEVELOPERS.TXT.txt diff --git a/README.txt b/README.txt index 0aa3784..4d52cde 100644 --- a/README.txt +++ b/README.txt @@ -3,6 +3,4 @@ Caracter Librería shopManager para facilitar el desarrollo de aplicaciones de tienda virtual Usa gradle para controlar la construcción y dependencias Usa el sistema de trazado de java -Usa hazelcast para tener datos en memoria compartida del stock y de los pedidos - -Esta librería podrá ser usadas tanto por aplicaciones cliente como servior en el proceso de venta online. \ No newline at end of file +Usa hazelcast para tener datos en memoria compartida del stock y de los pedidos \ No newline at end of file diff --git a/src/main/java/shopmanager/DEVELOPERS.TXT.txt b/src/main/java/shopmanager/DEVELOPERS.TXT.txt deleted file mode 100644 index 28d5fc3..0000000 --- a/src/main/java/shopmanager/DEVELOPERS.TXT.txt +++ /dev/null @@ -1 +0,0 @@ -Guillermo Roche Arcas \ No newline at end of file From 9023b2aea6ba989aa2db11716f923da9736b55bb Mon Sep 17 00:00:00 2001 From: Guille Roche Date: Fri, 20 Nov 2020 21:46:12 +0100 Subject: [PATCH 7/7] Revert "Revert "mensaje de asentamiento Guillermo Roche"" This reverts commit 4ba11089dc834ed2b17aed155d76598098e128ae. --- README.txt | 4 +++- src/main/java/shopmanager/DEVELOPERS.TXT.txt | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) create mode 100644 src/main/java/shopmanager/DEVELOPERS.TXT.txt diff --git a/README.txt b/README.txt index 4d52cde..0aa3784 100644 --- a/README.txt +++ b/README.txt @@ -3,4 +3,6 @@ Caracter Librería shopManager para facilitar el desarrollo de aplicaciones de tienda virtual Usa gradle para controlar la construcción y dependencias Usa el sistema de trazado de java -Usa hazelcast para tener datos en memoria compartida del stock y de los pedidos \ No newline at end of file +Usa hazelcast para tener datos en memoria compartida del stock y de los pedidos + +Esta librería podrá ser usadas tanto por aplicaciones cliente como servior en el proceso de venta online. \ No newline at end of file diff --git a/src/main/java/shopmanager/DEVELOPERS.TXT.txt b/src/main/java/shopmanager/DEVELOPERS.TXT.txt new file mode 100644 index 0000000..28d5fc3 --- /dev/null +++ b/src/main/java/shopmanager/DEVELOPERS.TXT.txt @@ -0,0 +1 @@ +Guillermo Roche Arcas \ No newline at end of file