From 672084ab2c551cbff8c8c424780ed344f7c13925 Mon Sep 17 00:00:00 2001 From: Roland Haeder Date: Tue, 29 Sep 2015 10:36:40 +0200 Subject: [PATCH] =?utf8?q?auto-formatted=20project=20+=20updated=20jars=20?= =?utf8?q?Signed-off-by:Roland=20H=C3=A4der=20?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- build.xml | 2 +- lib/jcore.jar | Bin 32286 -> 29685 bytes lib/jcoreee.jar | Bin 17864 -> 17834 bytes nbproject/build-impl.xml | 2832 ++++++++--------- nbproject/project.xml | 32 +- .../BasketItemAlreadyAddedException.java | 4 +- .../CannotAddCategoryException.java | 4 +- .../exceptions/CannotAddProductException.java | 4 +- .../CategoryTitleAlreadyUsedException.java | 4 +- .../CustomerAlreadyRegisteredException.java | 4 +- .../ProductTitleAlreadyUsedException.java | 4 +- .../model/basket/AddableBasketItem.java | 22 +- .../jshopcore/model/basket/BaseBasket.java | 2 +- .../jshopcore/model/basket/Basket.java | 14 +- .../jshopcore/model/basket/ShopBasket.java | 2 +- .../model/basket/items/BaseItem.java | 2 +- .../model/basket/items/BasketItem.java | 6 +- .../jshopcore/model/category/Category.java | 16 +- .../model/category/ProductCategory.java | 4 +- .../jshopcore/model/customer/Customer.java | 36 +- .../model/customer/CustomerUtils.java | 8 +- .../model/customer/ShopCustomer.java | 4 +- .../status/CustomerAccountStatus.java | 7 +- .../jshopcore/model/order/Orderable.java | 22 +- .../jshopcore/model/order/ShopOrder.java | 2 +- .../model/order/items/OrderItem.java | 2 +- .../model/product/GenericProduct.java | 10 +- .../jshopcore/model/product/Product.java | 24 +- .../jshopcore/wrapper/CheckoutWrapper.java | 2 +- .../jshopcore/wrapper/WrapableCheckout.java | 10 +- 30 files changed, 1542 insertions(+), 1543 deletions(-) diff --git a/build.xml b/build.xml index 6379c06..c213c8a 100644 --- a/build.xml +++ b/build.xml @@ -69,5 +69,5 @@ properties which you can use, check the target you are overriding in the nbproject/build-impl.xml file. - --> + --> diff --git a/lib/jcore.jar b/lib/jcore.jar index 7884f3df59de98ef74951706b221477a588f99cb..2179b37e40284525a5cb25cce157f22bfc9b782e 100644 GIT binary patch delta 9570 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 MU%)EBjX8e$Pn)^|^#A|> diff --git a/lib/jcoreee.jar b/lib/jcoreee.jar index 621440d1defd7a7b73478a55e38af44a08cbff60..c276670dfb4bd7478148b7a5dcc1654e7aab729c 100644 GIT binary patch delta 802 zcmX@n&A6(Ykte{LnT3mifrEiTIc6e{CX-UkMDyuPK=uU%5cx?HNKTezGz3urjMgBk zm(c-4ooDm|QSwYq5T4=W0$pJg^MG=OlNZ>qPkznB1yb{!$%9up#@0Q~EK!t;g@J)< zvk!A9Be!6BYKd=ZadBdL>g0*MMw_3od}d^1ntX#TNN76)>v0C&-3)AzLhRcaIQDC8 zpKQY(0X8HsQ$C^?=a_$kfeIKeg85ls=mSM7?v*P3f z$`X@rvGZ@frqqpMHOPR;RpNr1w`we61{o5m^M(a%NMFJ^ZUvxoLD-&Qa-pln=6b_G z6wR9-n%!aK3}Tqg5X`WYA!73}3noU88K*4&v4Dc_l$|9odM2~lgM;7Q-T)+6X>SRl zw%9v@sPFdPAj-ud07Q8?%1qwm0FItjK&FtR8ALP=M6GfR0#W}QA;AfclgY_W9tt3D z!vh%TVhaWYSklP2y6{%=pwW(X-rUphjpZj5XgvJ7a1l~9k6JDuG-`cI&72UU3kF8poTB9 qG0KLZ(4JgxC<#&wcI_Eu?F9>g2@r(s5o&?1T`;-8HHd8<*b4wLS=%ZA delta 877 zcmZ40&3K}lkte{LnT3mifrEh|CTJp$CR23KMDyuPK=uU%5cx?HNKTezGz3urjMgBk zm(c-4ooDm|QSwYq5T4=W04Day@wz-HW&-66Cnp%PPkznB1yc8&$%8j0$kx3hZMBjB z3j>3|W*_EIMnUoP)Dqv+;^M^g)Zmh$%)Io?Ygkm77+EG?Vha-5#=v@Zd?xR(b&uk zGR0Bn4GY*5mb`);YCtc7usz60n-dHpaOj@AomXNrulXcK&R~Yw3?U3l86r2YuwY^Y z8Mwys9}6fJ*4SABV|wy)J8(>D+8clbqwOt0)HHiX5Oveu8$_u&1b`?VN14e}9KbQ% z17v=2FoTH3fv6tGAQ1JyF#|&oBsG|suv@I?|V8tlGk5J37 zq%l$eq!<<(zRp4*TN9mSn7m}crYvxFk_TCb66Po-6isGy@d4@bcadT8)dA}AoxID1 y2W&4&7^CR2HUt}=V5k6Bd`4M&!9rm21z~#>#rrJ5iVs*xP406QW7}f~k_7-eYxxfV diff --git a/nbproject/build-impl.xml b/nbproject/build-impl.xml index e841dc3..25a9570 100644 --- a/nbproject/build-impl.xml +++ b/nbproject/build-impl.xml @@ -18,1421 +18,1421 @@ is divided into following sections: - applet - cleanup - --> +--> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Must set src.dir - Must set test.src.dir - Must set build.dir - Must set dist.dir - Must set build.classes.dir - Must set dist.javadoc.dir - Must set build.test.classes.dir - Must set build.test.results.dir - Must set build.classes.excludes - Must set dist.jar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Must set javac.includes - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - No tests executed. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Must set JVM to use for profiling in profiler.info.jvm - Must set profiler agent JVM arguments in profiler.info.jvmargs.agent - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Must select some files in the IDE or set javac.includes - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - To run this application from the command line without Ant, try: - - java -jar "${dist.jar.resolved}" - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Must select one file in the IDE or set run.class - - - - Must select one file in the IDE or set run.class - - - - - - - - - - - - - - - - - - - - - - - Must select one file in the IDE or set debug.class - - - - - Must select one file in the IDE or set debug.class - - - - - Must set fix.includes - - - - - - - - - - This target only works when run from inside the NetBeans IDE. - - - - - - - - - Must select one file in the IDE or set profile.class - This target only works when run from inside the NetBeans IDE. - - - - - - - - - This target only works when run from inside the NetBeans IDE. - - - - - - - - - - - - - This target only works when run from inside the NetBeans IDE. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Must select one file in the IDE or set run.class - - - - - - Must select some files in the IDE or set test.includes - - - - - Must select one file in the IDE or set run.class - - - - - Must select one file in the IDE or set applet.url - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Must select some files in the IDE or set javac.includes - - - - - - - - - - - - - - - - - - - - Some tests failed; see details above. - - - - - - - - - Must select some files in the IDE or set test.includes - - - - Some tests failed; see details above. - - - - Must select some files in the IDE or set test.class - Must select some method in the IDE or set test.method - - - - Some tests failed; see details above. - - - - - Must select one file in the IDE or set test.class - - - - Must select one file in the IDE or set test.class - Must select some method in the IDE or set test.method - - - - - - - - - - - - - - Must select one file in the IDE or set applet.url - - - - - - - - - Must select one file in the IDE or set applet.url - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must set src.dir + Must set test.src.dir + Must set build.dir + Must set dist.dir + Must set build.classes.dir + Must set dist.javadoc.dir + Must set build.test.classes.dir + Must set build.test.results.dir + Must set build.classes.excludes + Must set dist.jar + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must set javac.includes + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + No tests executed. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must set JVM to use for profiling in profiler.info.jvm + Must set profiler agent JVM arguments in profiler.info.jvmargs.agent + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must select some files in the IDE or set javac.includes + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + To run this application from the command line without Ant, try: + + java -jar "${dist.jar.resolved}" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must select one file in the IDE or set run.class + + + + Must select one file in the IDE or set run.class + + + + + + + + + + + + + + + + + + + + + + + Must select one file in the IDE or set debug.class + + + + + Must select one file in the IDE or set debug.class + + + + + Must set fix.includes + + + + + + + + + + This target only works when run from inside the NetBeans IDE. + + + + + + + + + Must select one file in the IDE or set profile.class + This target only works when run from inside the NetBeans IDE. + + + + + + + + + This target only works when run from inside the NetBeans IDE. + + + + + + + + + + + + + This target only works when run from inside the NetBeans IDE. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must select one file in the IDE or set run.class + + + + + + Must select some files in the IDE or set test.includes + + + + + Must select one file in the IDE or set run.class + + + + + Must select one file in the IDE or set applet.url + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must select some files in the IDE or set javac.includes + + + + + + + + + + + + + + + + + + + + Some tests failed; see details above. + + + + + + + + + Must select some files in the IDE or set test.includes + + + + Some tests failed; see details above. + + + + Must select some files in the IDE or set test.class + Must select some method in the IDE or set test.method + + + + Some tests failed; see details above. + + + + + Must select one file in the IDE or set test.class + + + + Must select one file in the IDE or set test.class + Must select some method in the IDE or set test.method + + + + + + + + + + + + + + Must select one file in the IDE or set applet.url + + + + + + + + + Must select one file in the IDE or set applet.url + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/nbproject/project.xml b/nbproject/project.xml index feaeefa..5c51ec6 100644 --- a/nbproject/project.xml +++ b/nbproject/project.xml @@ -1,19 +1,19 @@ - org.netbeans.modules.java.j2seproject - - - jshop-core - - - - - - - - - ./lib/nblibraries.properties - - - + org.netbeans.modules.java.j2seproject + + + jshop-core + + + + + + + + + ./lib/nblibraries.properties + + + diff --git a/src/org/mxchange/jshopcore/exceptions/BasketItemAlreadyAddedException.java b/src/org/mxchange/jshopcore/exceptions/BasketItemAlreadyAddedException.java index 053d7fb..6f09ee9 100644 --- a/src/org/mxchange/jshopcore/exceptions/BasketItemAlreadyAddedException.java +++ b/src/org/mxchange/jshopcore/exceptions/BasketItemAlreadyAddedException.java @@ -22,7 +22,7 @@ import org.mxchange.jshopcore.model.basket.AddableBasketItem; /** * An exception thrown when the given item is already added to the * basketController. - * + *

* @author Roland Haeder */ public class BasketItemAlreadyAddedException extends Exception { @@ -34,7 +34,7 @@ public class BasketItemAlreadyAddedException extends Exception { /** * Constructor with item instance T - * + *

* @param Any item that is or extends the interface * @param item An instance of a T item */ diff --git a/src/org/mxchange/jshopcore/exceptions/CannotAddCategoryException.java b/src/org/mxchange/jshopcore/exceptions/CannotAddCategoryException.java index 45247a4..2bc03de 100644 --- a/src/org/mxchange/jshopcore/exceptions/CannotAddCategoryException.java +++ b/src/org/mxchange/jshopcore/exceptions/CannotAddCategoryException.java @@ -19,7 +19,7 @@ package org.mxchange.jshopcore.exceptions; /** * An exception thrown when the category cannot be added for a "low level" * reason. - * + *

* @author Roland Haeder */ public class CannotAddCategoryException extends Exception { @@ -31,7 +31,7 @@ public class CannotAddCategoryException extends Exception { /** * Constructor with cause - * + *

* @param cause Causing exception */ public CannotAddCategoryException (final Throwable cause) { diff --git a/src/org/mxchange/jshopcore/exceptions/CannotAddProductException.java b/src/org/mxchange/jshopcore/exceptions/CannotAddProductException.java index 7dd1acc..beb077f 100644 --- a/src/org/mxchange/jshopcore/exceptions/CannotAddProductException.java +++ b/src/org/mxchange/jshopcore/exceptions/CannotAddProductException.java @@ -19,7 +19,7 @@ package org.mxchange.jshopcore.exceptions; /** * An exception thrown when the product cannot be added for a "low level" * reason. - * + *

* @author Roland Haeder */ public class CannotAddProductException extends Exception { @@ -31,7 +31,7 @@ public class CannotAddProductException extends Exception { /** * Constructor with cause - * + *

* @param cause Causing exception */ public CannotAddProductException (final Throwable cause) { diff --git a/src/org/mxchange/jshopcore/exceptions/CategoryTitleAlreadyUsedException.java b/src/org/mxchange/jshopcore/exceptions/CategoryTitleAlreadyUsedException.java index 33db0d6..8c477a2 100644 --- a/src/org/mxchange/jshopcore/exceptions/CategoryTitleAlreadyUsedException.java +++ b/src/org/mxchange/jshopcore/exceptions/CategoryTitleAlreadyUsedException.java @@ -21,7 +21,7 @@ import org.mxchange.jshopcore.model.category.Category; /** * An exception thrown when the given title is already used - * + *

* @author Roland Haeder */ public class CategoryTitleAlreadyUsedException extends Exception { @@ -33,7 +33,7 @@ public class CategoryTitleAlreadyUsedException extends Exception { /** * Constructor with HttpServletRequest instance - * + *

* @param category Category instance */ public CategoryTitleAlreadyUsedException (final Category category) { diff --git a/src/org/mxchange/jshopcore/exceptions/CustomerAlreadyRegisteredException.java b/src/org/mxchange/jshopcore/exceptions/CustomerAlreadyRegisteredException.java index f095b5b..187ae56 100644 --- a/src/org/mxchange/jshopcore/exceptions/CustomerAlreadyRegisteredException.java +++ b/src/org/mxchange/jshopcore/exceptions/CustomerAlreadyRegisteredException.java @@ -21,7 +21,7 @@ import org.mxchange.jshopcore.model.customer.Customer; /** * An exception thrown when the customer is already registered - * + *

* @author Roland Haeder */ public class CustomerAlreadyRegisteredException extends Exception { @@ -33,7 +33,7 @@ public class CustomerAlreadyRegisteredException extends Exception { /** * Constructor with already registered customer instance - * + *

* @param customer Customer instance */ public CustomerAlreadyRegisteredException (final Customer customer) { diff --git a/src/org/mxchange/jshopcore/exceptions/ProductTitleAlreadyUsedException.java b/src/org/mxchange/jshopcore/exceptions/ProductTitleAlreadyUsedException.java index 0a1989a..a2246de 100644 --- a/src/org/mxchange/jshopcore/exceptions/ProductTitleAlreadyUsedException.java +++ b/src/org/mxchange/jshopcore/exceptions/ProductTitleAlreadyUsedException.java @@ -21,7 +21,7 @@ import org.mxchange.jshopcore.model.product.Product; /** * An exception thrown when the given title is already used - * + *

* @author Roland Haeder */ public class ProductTitleAlreadyUsedException extends Exception { @@ -33,7 +33,7 @@ public class ProductTitleAlreadyUsedException extends Exception { /** * Constructor with HttpServletRequest instance - * + *

* @param product Product instance */ public ProductTitleAlreadyUsedException (final Product product) { diff --git a/src/org/mxchange/jshopcore/model/basket/AddableBasketItem.java b/src/org/mxchange/jshopcore/model/basket/AddableBasketItem.java index 023729d..a732413 100644 --- a/src/org/mxchange/jshopcore/model/basket/AddableBasketItem.java +++ b/src/org/mxchange/jshopcore/model/basket/AddableBasketItem.java @@ -21,14 +21,14 @@ import org.mxchange.jshopcore.model.product.Product; /** * An interface for addable basket items - * + *

* @author Roland Haeder */ public interface AddableBasketItem extends Serializable { /** * Check equality on item instance - * + *

* @param object Other object to check */ @Override @@ -36,56 +36,56 @@ public interface AddableBasketItem extends Serializable { /** * Getter for item amount - * + *

* @return the amount */ public Long getOrderedAmount (); /** * Setter for item amount - * + *

* @param amount the amount to set */ public void setOrderedAmount (final Long amount); /** * Getter for entry id (from database backend) - * + *

* @return the id */ public Long getItemId (); /** * Setter for entry id (from database backend) - * + *

* @param id the id to set */ public void setItemId (final Long id); /** * Getter for item type - * + *

* @return the type */ public String getItemType (); /** * Setter for item type - * + *

* @param type the type to set */ public void setItemType (final String type); /** * Getter for product instance - * + *

* @return the product */ public Product getItemProduct (); /** * Setter fo product instance - * + *

* @param product the product to set */ public void setItemProduct (final Product product); @@ -98,7 +98,7 @@ public interface AddableBasketItem extends Serializable { /** * Determines whether the item has a Product instance set - * + *

* @return Whether a Product instance is set */ public boolean isProductType (); diff --git a/src/org/mxchange/jshopcore/model/basket/BaseBasket.java b/src/org/mxchange/jshopcore/model/basket/BaseBasket.java index 4d8e7c4..85df7bb 100644 --- a/src/org/mxchange/jshopcore/model/basket/BaseBasket.java +++ b/src/org/mxchange/jshopcore/model/basket/BaseBasket.java @@ -24,7 +24,7 @@ import org.mxchange.jshopcore.exceptions.BasketItemAlreadyAddedException; /** * A general basket class. This class does not store any properties, it only * contains logic for handling the items (T). - * + *

* @author Roland Haeder * @param Any instance that implements AddableBasketItem */ diff --git a/src/org/mxchange/jshopcore/model/basket/Basket.java b/src/org/mxchange/jshopcore/model/basket/Basket.java index 1a9dabe..28d1eeb 100644 --- a/src/org/mxchange/jshopcore/model/basket/Basket.java +++ b/src/org/mxchange/jshopcore/model/basket/Basket.java @@ -22,7 +22,7 @@ import org.mxchange.jshopcore.exceptions.BasketItemAlreadyAddedException; /** * An interface for baskets - * + *

* @author Roland Haeder * @param Any addable basket items */ @@ -30,7 +30,7 @@ public interface Basket extends Serializable { /** * Adds given item instance to this basket - * + *

* @param item Item instance to add * @throws org.mxchange.jshopcore.exceptions.BasketItemAlreadyAddedException * If the item instance has already been added @@ -44,21 +44,21 @@ public interface Basket extends Serializable { /** * Some "getter" for all entries in this basket - * + *

* @return Map on all basket items */ public List getAll (); /** * Getter for last entry - * + *

* @return Last added item in basket */ public T getLast (); /** * Getter for last num rows - * + *

* @return Last num rows */ public int getLastNumRows (); @@ -66,7 +66,7 @@ public interface Basket extends Serializable { /** * Checks whether the given item has already been added by checking the * item's id. - * + *

* @param item Item instance to check * @return Whether the given item has been found */ @@ -74,7 +74,7 @@ public interface Basket extends Serializable { /** * Checks if the basket is empty - * + *

* @return Whether the basket is empty */ public boolean isEmpty (); diff --git a/src/org/mxchange/jshopcore/model/basket/ShopBasket.java b/src/org/mxchange/jshopcore/model/basket/ShopBasket.java index 635f55c..48647d2 100644 --- a/src/org/mxchange/jshopcore/model/basket/ShopBasket.java +++ b/src/org/mxchange/jshopcore/model/basket/ShopBasket.java @@ -18,7 +18,7 @@ package org.mxchange.jshopcore.model.basket; /** * A basket for orderable items - * + *

* @author Roland Haeder */ public class ShopBasket extends BaseBasket implements Basket { diff --git a/src/org/mxchange/jshopcore/model/basket/items/BaseItem.java b/src/org/mxchange/jshopcore/model/basket/items/BaseItem.java index 6c2309f..f7fb199 100644 --- a/src/org/mxchange/jshopcore/model/basket/items/BaseItem.java +++ b/src/org/mxchange/jshopcore/model/basket/items/BaseItem.java @@ -23,7 +23,7 @@ import org.mxchange.jshopcore.model.product.Product; /** * An item (addedable to a basket) could respresent a product or a discount * coupon. This depends on the type of the item. - * + *

* @author Roland Haeder */ public abstract class BaseItem implements AddableBasketItem, Comparable { diff --git a/src/org/mxchange/jshopcore/model/basket/items/BasketItem.java b/src/org/mxchange/jshopcore/model/basket/items/BasketItem.java index 5cb551d..83775c3 100644 --- a/src/org/mxchange/jshopcore/model/basket/items/BasketItem.java +++ b/src/org/mxchange/jshopcore/model/basket/items/BasketItem.java @@ -31,7 +31,7 @@ import org.mxchange.jshopcore.model.product.Product; /** * A general basket item - * + *

* @author Roland Haeder */ @Entity (name = "basket_items") @@ -80,7 +80,7 @@ public class BasketItem extends BaseItem implements AddableBasketItem { /** * Constructor for an item from given Product instance - * + *

* @param product Product instance */ public BasketItem (final Product product) { @@ -102,7 +102,7 @@ public class BasketItem extends BaseItem implements AddableBasketItem { /** * Constructor for an item from given Product instance and orderedAmount. - * + *

* @param product Product instance * @param amount Ordered orderedAmount */ diff --git a/src/org/mxchange/jshopcore/model/category/Category.java b/src/org/mxchange/jshopcore/model/category/Category.java index 5b47563..43b2d26 100644 --- a/src/org/mxchange/jshopcore/model/category/Category.java +++ b/src/org/mxchange/jshopcore/model/category/Category.java @@ -20,56 +20,56 @@ import java.io.Serializable; /** * An interface for categories - * + *

* @author Roland Haeder */ public interface Category extends Serializable { /** * Copies all properties from other category to this - * + *

* @param category Source category instance */ public void copyAll (final Category category); /** * Id number of category - * + *

* @return the id */ public Long getCategoryId (); /** * Id number of category - * + *

* @param id the id to set */ public void setCategoryId (final Long id); /** * Parent category - * + *

* @return the parent category */ public Category getParentCategory (); /** * Parent category - * + *

* @param parentCategory the parent category to set */ public void setParentCategory (final Category parentCategory); /** * Title of category - * + *

* @return the title */ public String getCategoryTitle (); /** * Title of category - * + *

* @param title the title to set */ public void setCategoryTitle (final String title); diff --git a/src/org/mxchange/jshopcore/model/category/ProductCategory.java b/src/org/mxchange/jshopcore/model/category/ProductCategory.java index 2fb8d08..c5b055f 100644 --- a/src/org/mxchange/jshopcore/model/category/ProductCategory.java +++ b/src/org/mxchange/jshopcore/model/category/ProductCategory.java @@ -29,7 +29,7 @@ import javax.persistence.Table; /** * A product category - * + *

* @author Roland Haeder */ @Entity (name = "category") @@ -65,7 +65,7 @@ public class ProductCategory implements Category, Comparable { /** * Constructor which accepts all database fields - * + *

* @param categoryId Id number of database record * @param categoryTitle Category categoryTitle * @param parentCategory Parent category diff --git a/src/org/mxchange/jshopcore/model/customer/Customer.java b/src/org/mxchange/jshopcore/model/customer/Customer.java index ffb8354..0a9492f 100644 --- a/src/org/mxchange/jshopcore/model/customer/Customer.java +++ b/src/org/mxchange/jshopcore/model/customer/Customer.java @@ -23,126 +23,126 @@ import org.mxchange.jshopcore.model.customer.status.CustomerAccountStatus; /** * A customer interface - * + *

* @author Roland Haeder */ public interface Customer extends Serializable { /** * Copies all attributes from other customer object to this - * + *

* @param customer Source instance */ public void copyAll (final Customer customer); /** * Getter for contact instance - * + *

* @return Contact id number */ public Contact getContact (); /** * Setter for contact instance - * + *

* @param contact Contact instance */ public void setContact (final Contact contact); /** * Getter for confirmation key - * + *

* @return Confirmation key */ public String getCustomerConfirmKey (); /** * Setter for confirmation key - * + *

* @param customerConfirmKey Confirmation key */ public void setCustomerConfirmKey (final String customerConfirmKey); /** * Getter for "created" timestamp - * + *

* @return "created" timestamp */ public Calendar getCustomerCreated (); /** * Setter for "created" timestamp - * + *

* @param customerCreated "created" timestamp */ public void setCustomerCreated (final Calendar customerCreated); /** * Getter for customer id number - * + *

* @return Customer id number */ public Long getCustomerId (); /** * Settte for customer id number - * + *

* @param customerId Customer id number */ public void setCustomerId (final Long customerId); /** * Getter for "locked" timestamp - * + *

* @return "locked" timestamp */ public Calendar getCustomerLocked (); /** * Getter for "locked" timestamp - * + *

* @param customerLocked "locked" timestamp */ public void setCustomerLocked (final Calendar customerLocked); /** * Getter for customer number - * + *

* @return Customer number */ public String getCustomerNumber (); /** * Setter for customer number - * + *

* @param customerNumber Customer number */ public void setCustomerNumber (final String customerNumber); /** * Getter for password hash - * + *

* @return Password hash */ public String getCustomerPasswordHash (); /** * Setter for password hash - * + *

* @param customerPasswordHash Password hash */ public void setCustomerPasswordHash (final String customerPasswordHash); /** * Getter for account status - * + *

* @return Account status */ public CustomerAccountStatus getCustomerAccountStatus (); /** * Setter for account status - * + *

* @param customerStatus Account status */ public void setCustomerAccountStatus (final CustomerAccountStatus customerStatus); diff --git a/src/org/mxchange/jshopcore/model/customer/CustomerUtils.java b/src/org/mxchange/jshopcore/model/customer/CustomerUtils.java index 7e660fa..5eb699c 100644 --- a/src/org/mxchange/jshopcore/model/customer/CustomerUtils.java +++ b/src/org/mxchange/jshopcore/model/customer/CustomerUtils.java @@ -27,7 +27,7 @@ import org.mxchange.jshopcore.model.order.ShopOrder; /** * An utilities class for customers - * + *

* @author Roland Haeder */ public class CustomerUtils extends BaseFrameworkSystem { @@ -40,7 +40,7 @@ public class CustomerUtils extends BaseFrameworkSystem { /** * Generates an unique customer number by checking is existence - * + *

* @param em Entity manager instance * @return Generated customer number (not used before) * @throws java.sql.SQLException If any SQL error occured @@ -92,14 +92,13 @@ public class CustomerUtils extends BaseFrameworkSystem { // Trace message // TODO: utils.getLogger().logTrace(MessageFormat.format("generateCustomerNumber: customerNumber={0} - EXIT!", customerNumber)); - // Found one return customerNumber; } /** * Generates an unique access key. - * + *

* @param em Entity manager instance * @param customer Customer instance * @return An unique access key @@ -146,7 +145,6 @@ public class CustomerUtils extends BaseFrameworkSystem { // Trace message // TODO: utils.getLogger().logTrace(MessageFormat.format("generateAccessKey: accessKey={0} - EXIT!", accessKey)); - // Found one return accessKey; } diff --git a/src/org/mxchange/jshopcore/model/customer/ShopCustomer.java b/src/org/mxchange/jshopcore/model/customer/ShopCustomer.java index 606f633..6de33c5 100644 --- a/src/org/mxchange/jshopcore/model/customer/ShopCustomer.java +++ b/src/org/mxchange/jshopcore/model/customer/ShopCustomer.java @@ -36,7 +36,7 @@ import org.mxchange.jshopcore.model.customer.status.CustomerAccountStatus; /** * A shop customer class. - * + *

* @author Roland Haeder */ @Entity (name = "customer") @@ -101,7 +101,7 @@ public class ShopCustomer implements Customer { */ @Basic (optional = false) @Column (name = "customer_account_status", nullable = false) - @Enumerated(EnumType.STRING) + @Enumerated (EnumType.STRING) private CustomerAccountStatus customerAccountStatus; /** diff --git a/src/org/mxchange/jshopcore/model/customer/status/CustomerAccountStatus.java b/src/org/mxchange/jshopcore/model/customer/status/CustomerAccountStatus.java index 5b41557..d4142da 100644 --- a/src/org/mxchange/jshopcore/model/customer/status/CustomerAccountStatus.java +++ b/src/org/mxchange/jshopcore/model/customer/status/CustomerAccountStatus.java @@ -20,10 +20,11 @@ import java.io.Serializable; /** * An enum for customer's account status like confirmed, locked, etc. - * + *

* @author Roland Haeder */ public enum CustomerAccountStatus implements Serializable { + /** * Unconfirmed (default) */ @@ -46,7 +47,7 @@ public enum CustomerAccountStatus implements Serializable { /** * Constructor with i18n translation key - * + *

* @param messageKey Message key (i18n) */ private CustomerAccountStatus (final String messageKey) { @@ -56,7 +57,7 @@ public enum CustomerAccountStatus implements Serializable { /** * Output value (for messages) - * + *

* @return the messageKey */ public String getMessageKey () { diff --git a/src/org/mxchange/jshopcore/model/order/Orderable.java b/src/org/mxchange/jshopcore/model/order/Orderable.java index d490f6a..1078570 100644 --- a/src/org/mxchange/jshopcore/model/order/Orderable.java +++ b/src/org/mxchange/jshopcore/model/order/Orderable.java @@ -24,77 +24,77 @@ import org.mxchange.jshopcore.model.customer.Customer; /** * An interface for customer orders - * + *

* @author Roland Haeder */ public interface Orderable extends Serializable { /** * Getter for access key - * + *

* @return Access key */ public String getAccessKey (); /** * Setter for access key - * + *

* @param accessKey Access key */ public void setAccessKey (final String accessKey); /** * Getter for created timestamp - * + *

* @return Created timestamp */ public Calendar getOrderCreated (); /** * Setter for created timestamp - * + *

* @param created Created timestamp */ public void setOrderCreated (final Calendar created); /** * Getter for customer instance - * + *

* @return Customer instance */ public Customer getCustomer (); /** * Setter for customer instance - * + *

* @param customer Customer instance */ public void setCustomer (final Customer customer); /** * Getter for order id - * + *

* @return Order id */ public Long getOrderId (); /** * Setter for order id - * + *

* @param id Order id */ public void setOrderId (final Long id); /** * Getter for list of ordered basket items - * + *

* @return List of items */ public List getOrderedItems (); /** * Setter for list of ordered basket items - * + *

* @param itemList List of items */ public void setOrderedItems (final List itemList); diff --git a/src/org/mxchange/jshopcore/model/order/ShopOrder.java b/src/org/mxchange/jshopcore/model/order/ShopOrder.java index 57f25ce..321f03e 100644 --- a/src/org/mxchange/jshopcore/model/order/ShopOrder.java +++ b/src/org/mxchange/jshopcore/model/order/ShopOrder.java @@ -36,7 +36,7 @@ import org.mxchange.jshopcore.model.customer.ShopCustomer; /** * An entity class for shop orders - * + *

* @author Roland Haeder */ @Entity (name = "orders") diff --git a/src/org/mxchange/jshopcore/model/order/items/OrderItem.java b/src/org/mxchange/jshopcore/model/order/items/OrderItem.java index 9cca118..c1783fb 100644 --- a/src/org/mxchange/jshopcore/model/order/items/OrderItem.java +++ b/src/org/mxchange/jshopcore/model/order/items/OrderItem.java @@ -32,7 +32,7 @@ import org.mxchange.jshopcore.model.product.Product; /** * A general basket item - * + *

* @author Roland Haeder */ @Entity (name = "ordered_item") diff --git a/src/org/mxchange/jshopcore/model/product/GenericProduct.java b/src/org/mxchange/jshopcore/model/product/GenericProduct.java index 570c627..a2daad1 100644 --- a/src/org/mxchange/jshopcore/model/product/GenericProduct.java +++ b/src/org/mxchange/jshopcore/model/product/GenericProduct.java @@ -31,7 +31,7 @@ import org.mxchange.jshopcore.model.category.ProductCategory; /** * Generic product class - * + *

* @author Roland Haeder * TODO: Find a better name */ @@ -53,8 +53,8 @@ public class GenericProduct implements Product, Comparable { /** * Product productCategory */ - @JoinColumn(name = "category_id", nullable = false, updatable = false) - @OneToOne(targetEntity = ProductCategory.class, optional = false) + @JoinColumn (name = "category_id", nullable = false, updatable = false) + @OneToOne (targetEntity = ProductCategory.class, optional = false) private Category productCategory; /** @@ -62,7 +62,7 @@ public class GenericProduct implements Product, Comparable { */ @Id @GeneratedValue (strategy = GenerationType.IDENTITY) - @Column(name = "product_id", length = 20, nullable = false, updatable = false) + @Column (name = "product_id", length = 20, nullable = false, updatable = false) private Long productId; /** @@ -87,7 +87,7 @@ public class GenericProduct implements Product, Comparable { /** * Constructor will all required data - * + *

* @param productId Id number of product * @param productTitle Name of product * @param productPrice Price diff --git a/src/org/mxchange/jshopcore/model/product/Product.java b/src/org/mxchange/jshopcore/model/product/Product.java index 140dd70..365e38c 100644 --- a/src/org/mxchange/jshopcore/model/product/Product.java +++ b/src/org/mxchange/jshopcore/model/product/Product.java @@ -21,84 +21,84 @@ import org.mxchange.jshopcore.model.category.Category; /** * An interface for in database storable products - * + *

* @author Roland Haeder */ public interface Product extends Serializable { /** * Copies all properties from source product to this. - * + *

* @param product Source product */ public void copyAll (final Product product); /** * Getter for product availability - * + *

* @return Product availability */ public Boolean getProductAvailability (); /** * Setter for product availability - * + *

* @param productAvailability Product availability */ public void setProductAvailability (final Boolean productAvailability); /** * Getter for product category id - * + *

* @return Product category id */ public Category getProductCategory (); /** * Setter for product category - * + *

* @param productCategory Product category */ public void setProductCategory (final Category productCategory); /** * Getter for id number, suitable for form fields. - * + *

* @return Id number of product */ public Long getProductId (); /** * Id number of product - * + *

* @param productId the id number to set */ public void setProductId (final Long productId); /** * Getter for raw price. - * + *

* @return Single price of product */ public Float getProductPrice (); /** * Price of product - * + *

* @param productPrice the price to set */ public void setProductPrice (final Float productPrice); /** * Getter for title. - * + *

* @return Title of product */ public String getProductTitle (); /** * Title of product - * + *

* @param productTitle the title to set */ public void setProductTitle (final String productTitle); diff --git a/src/org/mxchange/jshopcore/wrapper/CheckoutWrapper.java b/src/org/mxchange/jshopcore/wrapper/CheckoutWrapper.java index 6bfe3c5..3b1a9e2 100644 --- a/src/org/mxchange/jshopcore/wrapper/CheckoutWrapper.java +++ b/src/org/mxchange/jshopcore/wrapper/CheckoutWrapper.java @@ -22,7 +22,7 @@ import org.mxchange.jshopcore.model.customer.Customer; /** * A wrapper for checkouts (customer, ordered items) - * + *

* @author Roland Haeder */ public class CheckoutWrapper implements WrapableCheckout { diff --git a/src/org/mxchange/jshopcore/wrapper/WrapableCheckout.java b/src/org/mxchange/jshopcore/wrapper/WrapableCheckout.java index 1ad5a9f..a23f691 100644 --- a/src/org/mxchange/jshopcore/wrapper/WrapableCheckout.java +++ b/src/org/mxchange/jshopcore/wrapper/WrapableCheckout.java @@ -23,35 +23,35 @@ import org.mxchange.jshopcore.model.customer.Customer; /** * An interface for checkout wrapper - * + *

* @author Roland Haeder */ public interface WrapableCheckout extends Serializable { /** * Getter for customer instance - * + *

* @return Customer indstance */ public Customer getCustomer (); /** * Setter for customer instance - * + *

* @param customer Customer instance */ public void setCustomer (final Customer customer); /** * Getter for a List of AddableBasktem instances - * + *

* @return List with AddableBasketItem instances */ public List getList (); /** * Setter for a List of AddableBasktem instances - * + *

* @param list List with AddableBasketItem instances */ public void setList (final List list); -- 2.39.2